diff --git a/src/Components/CreateImageWizard/steps/Review/ReviewStep.tsx b/src/Components/CreateImageWizard/steps/Review/ReviewStep.tsx
index 6889ca02c..1c23de0cf 100644
--- a/src/Components/CreateImageWizard/steps/Review/ReviewStep.tsx
+++ b/src/Components/CreateImageWizard/steps/Review/ReviewStep.tsx
@@ -32,6 +32,7 @@ import {
TimezoneList,
LocaleList,
HostnameList,
+ KernelList,
} from './ReviewStepTextLists';
import isRhel from '../../../../../src/Utilities/isRhel';
@@ -83,12 +84,14 @@ const Review = ({ snapshottingEnabled }: { snapshottingEnabled: boolean }) => {
const [isExpandedTimezone, setIsExpandedTimezone] = useState(true);
const [isExpandedLocale, setIsExpandedLocale] = useState(true);
const [isExpandedHostname, setIsExpandedHostname] = useState(true);
+ const [isExpandedKernel, setIsExpandedKernel] = useState(true);
const [isExpandableFirstBoot, setIsExpandedFirstBoot] = useState(true);
const [isExpandedUsers, setIsExpandedUsers] = useState(true);
const isTimezoneEnabled = useFlag('image-builder.timezone.enabled');
const isLocaleEnabled = useFlag('image-builder.locale.enabled');
const isHostnameEnabled = useFlag('image-builder.hostname.enabled');
+ const isKernelEnabled = useFlag('image-builder.kernel.enabled');
const onToggleImageOutput = (isExpandedImageOutput: boolean) =>
setIsExpandedImageOutput(isExpandedImageOutput);
@@ -112,6 +115,8 @@ const Review = ({ snapshottingEnabled }: { snapshottingEnabled: boolean }) => {
setIsExpandedLocale(isExpandedLocale);
const onToggleHostname = (isExpandedHostname: boolean) =>
setIsExpandedHostname(isExpandedHostname);
+ const onToggleKernel = (isExpandedKernel: boolean) =>
+ setIsExpandedKernel(isExpandedKernel);
const onToggleFirstBoot = (isExpandableFirstBoot: boolean) =>
setIsExpandedFirstBoot(isExpandableFirstBoot);
const onToggleUsers = (isExpandedUsers: boolean) =>
@@ -398,6 +403,23 @@ const Review = ({ snapshottingEnabled }: { snapshottingEnabled: boolean }) => {
)}
+ {isKernelEnabled && (
+
+ onToggleKernel(isExpandedKernel)
+ }
+ isExpanded={isExpandedKernel}
+ isIndented
+ data-testid="kernel-expandable"
+ >
+
+
+ )}
{isFirstBootEnabled && (
{
);
};
+export const KernelList = () => {
+ const kernel = useAppSelector(selectKernel);
+
+ return (
+
+
+
+ Name
+
+
+ {kernel.name ? kernel.name : 'None'}
+
+
+ Append
+
+
+ {kernel.append ? kernel.append : 'None'}
+
+
+
+ );
+};
+
export const FirstBootList = () => {
const isFirstbootEnabled = !!useAppSelector(selectFirstBootScript);
diff --git a/src/test/Components/CreateImageWizard/steps/Kernel/Kernel.test.tsx b/src/test/Components/CreateImageWizard/steps/Kernel/Kernel.test.tsx
index 9af2bfe9c..09225e940 100644
--- a/src/test/Components/CreateImageWizard/steps/Kernel/Kernel.test.tsx
+++ b/src/test/Components/CreateImageWizard/steps/Kernel/Kernel.test.tsx
@@ -1,5 +1,5 @@
import type { Router as RemixRouter } from '@remix-run/router';
-import { screen, waitFor } from '@testing-library/react';
+import { screen, waitFor, within } from '@testing-library/react';
import { userEvent } from '@testing-library/user-event';
import { CREATE_BLUEPRINT } from '../../../../../constants';
@@ -82,6 +82,13 @@ const clearKernelName = async () => {
await waitFor(() => user.click(kernelNameClearBtn));
};
+const clickRevisitButton = async () => {
+ const user = userEvent.setup();
+ const expandable = await screen.findByTestId('kernel-expandable');
+ const revisitButton = await within(expandable).findByTestId('revisit-kernel');
+ await waitFor(() => user.click(revisitButton));
+};
+
describe('Step Kernel', () => {
beforeEach(() => {
vi.clearAllMocks();
@@ -136,6 +143,15 @@ describe('Step Kernel', () => {
expect(screen.queryByText(/Invalid format/)).not.toBeInTheDocument();
expect(nextButton).toBeEnabled();
});
+
+ test('revisit step button on Review works', async () => {
+ await renderCreateMode();
+ await goToKernelStep();
+ await selectKernelName('kernel');
+ await goToReviewStep();
+ await clickRevisitButton();
+ await screen.findByRole('heading', { name: /Kernel/ });
+ });
});
describe('Kernel request generated correctly', () => {
@@ -185,7 +201,6 @@ describe('Kernel request generated correctly', () => {
});
});
-// TO DO 'Kernel step' -> 'revisit step button on Review works'
// TO DO 'Kernel request generated correctly' -> 'with valid kernel append'
// TO DO 'Kernel request generated correctly' -> 'with valid kernel name and kernel append'
// TO DO 'Kernel edit mode'