import { screen, within } from '@testing-library/react'; import { renderEditMode } from './wizardTestUtils'; import { mockBlueprintIds, mockBlueprintNames, } from '../../fixtures/blueprints'; vi.mock('@redhat-cloud-services/frontend-components/useChrome', () => ({ useChrome: () => ({ isBeta: () => true, isProd: () => true, getEnvironment: () => 'prod', }), })); vi.mock('@unleash/proxy-client-react', () => ({ useUnleashContext: () => vi.fn(), useFlag: vi.fn((flag) => flag === 'image-builder.firstboot.enabled' ? true : false ), })); describe('EditImageWizard', () => { beforeEach(() => { vi.clearAllMocks(); }); test('should enable all navigation items in edit mode', async () => { const id = mockBlueprintIds['darkChocolate']; const name = mockBlueprintNames['darkChocolate']; await renderEditMode(id); const heading = await screen.findByRole('heading', { name: new RegExp(`review ${name}`, 'i'), }); const navigation = await screen.findByRole('navigation', { name: /wizard steps/i, }); const outputNavItem = within(navigation).getByRole('button', { name: /image output/i, }); const targetNavItem = within(navigation).getByRole('button', { name: /target environment/i, }); const registerNavItem = within(navigation).getByRole('button', { name: /register/i, }); const scapNavItem = within(navigation).getByRole('button', { name: /openscap/i, }); const detailsNavItem = within(navigation).getByRole('button', { name: /details/i, }); // Assert that all validation items are enabled expect(heading).toBeInTheDocument(); expect(outputNavItem).toBeEnabled(); expect(targetNavItem).toBeEnabled(); expect(registerNavItem).toBeEnabled(); expect(scapNavItem).toBeEnabled(); expect(detailsNavItem).toBeEnabled(); }); });