Skip to content

Commit 073906c

Browse files
committed
chore: Expanded mode basic test scenario
1 parent 0aea7f3 commit 073906c

File tree

1 file changed

+54
-41
lines changed

1 file changed

+54
-41
lines changed

src/app-layout/__tests__/runtime-drawers.test.tsx

Lines changed: 54 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1385,51 +1385,64 @@ describe('toolbar mode only features', () => {
13851385
});
13861386

13871387
describe('expanded mode for global drawers', () => {
1388-
test('should set a drawer to expanded mode by clicking on "expanded mode" button', async () => {
1389-
const drawerId = 'global-drawer';
1390-
awsuiPlugins.appLayout.registerDrawer({
1391-
...drawerDefaults,
1392-
ariaLabels: {
1393-
expandedModeButton: 'Expanded mode button',
1394-
},
1395-
id: drawerId,
1396-
type: 'global',
1397-
isExpandable: true,
1398-
});
1399-
const { wrapper, globalDrawersWrapper } = await renderComponent(<AppLayout />);
1388+
describe.each(['global', 'global-ai'] as const)('drawer type = %s', type => {
1389+
const findDrawerTriggerById = (id: string, renderProps: Awaited<ReturnType<typeof renderComponent>>) => {
1390+
if (type === 'global') {
1391+
return renderProps.wrapper.findDrawerTriggerById(id);
1392+
} else {
1393+
return renderProps.globalDrawersWrapper.findAiDrawerTrigger();
1394+
}
1395+
};
14001396

1401-
wrapper.findDrawerTriggerById(drawerId)!.click();
1402-
expect(globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.getElement()).toBeInTheDocument();
1403-
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(false);
1404-
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.click();
1405-
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(true);
1406-
expect(
1407-
getGeneratedAnalyticsMetadata(
1408-
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.getElement()
1409-
)
1410-
).toEqual(
1411-
expect.objectContaining({
1412-
action: 'expand',
1413-
detail: {
1414-
label: 'Expanded mode button',
1397+
test('should set a drawer to expanded mode by clicking on "expanded mode" button', async () => {
1398+
const drawerId = 'global-drawer';
1399+
awsuiPlugins.appLayout.registerDrawer({
1400+
...drawerDefaults,
1401+
ariaLabels: {
1402+
expandedModeButton: 'Expanded mode button',
14151403
},
1416-
})
1417-
);
1404+
id: drawerId,
1405+
type,
1406+
isExpandable: true,
1407+
});
1408+
const renderProps = await renderComponent(<AppLayout />);
1409+
const { globalDrawersWrapper } = renderProps;
14181410

1419-
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.click();
1420-
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(false);
1421-
expect(
1422-
getGeneratedAnalyticsMetadata(
1411+
findDrawerTriggerById(drawerId, renderProps)!.click();
1412+
expect(
14231413
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.getElement()
1424-
)
1425-
).toEqual(
1426-
expect.objectContaining({
1427-
action: 'collapse',
1428-
detail: {
1429-
label: 'Expanded mode button',
1430-
},
1431-
})
1432-
);
1414+
).toBeInTheDocument();
1415+
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(false);
1416+
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.click();
1417+
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(true);
1418+
expect(
1419+
getGeneratedAnalyticsMetadata(
1420+
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.getElement()
1421+
)
1422+
).toEqual(
1423+
expect.objectContaining({
1424+
action: 'expand',
1425+
detail: {
1426+
label: 'Expanded mode button',
1427+
},
1428+
})
1429+
);
1430+
1431+
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.click();
1432+
expect(globalDrawersWrapper.findDrawerById(drawerId)!.isDrawerInExpandedMode()).toBe(false);
1433+
expect(
1434+
getGeneratedAnalyticsMetadata(
1435+
globalDrawersWrapper.findExpandedModeButtonByActiveDrawerId(drawerId)!.getElement()
1436+
)
1437+
).toEqual(
1438+
expect.objectContaining({
1439+
action: 'collapse',
1440+
detail: {
1441+
label: 'Expanded mode button',
1442+
},
1443+
})
1444+
);
1445+
});
14331446
});
14341447

14351448
test('only one drawer could be in expanded mode. all other panels should be closed', async () => {

0 commit comments

Comments
 (0)