Skip to content

Commit f06998b

Browse files
authored
fix: aria-expanded not properly set on app layout toolbar navigation toggle (#3593)
1 parent a0c263f commit f06998b

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

src/app-layout/__tests__/app-layout-navigation.test.tsx

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,10 @@ describeEachAppLayout({ themes: ['refresh-toolbar'], sizes: ['desktop', 'mobile'
4242
expect(wrapper.findNavigation()).toBeTruthy();
4343
expect(wrapper.findNavigationToggle()).toBeFalsy();
4444
});
45+
});
4546

46-
(size === 'desktop' ? test : test.skip)('should call onNavigationToggle on open/close navigation', () => {
47+
describeEachAppLayout({ themes: ['refresh-toolbar'], sizes: ['desktop'] }, () => {
48+
test('should call onNavigationToggle on open/close navigation', () => {
4749
const mockOnNavigationChange = jest.fn();
4850
const { wrapper } = renderComponent(
4951
<AppLayout navigation={<>Mock Navigation</>} onNavigationChange={mockOnNavigationChange} content={<>Content</>} />
@@ -60,4 +62,18 @@ describeEachAppLayout({ themes: ['refresh-toolbar'], sizes: ['desktop', 'mobile'
6062
expect(mockOnNavigationChange).toHaveBeenCalledWith(expect.objectContaining({ detail: { open: true } }));
6163
expect(wrapper.findOpenNavigationPanel()).toBeTruthy();
6264
});
65+
66+
test(`Sets aria-expanded=false on toggle when navigation is closed`, () => {
67+
const { wrapper } = renderComponent(
68+
<AppLayout navigation={<>Mock Navigation</>} navigationOpen={false} content={<>Content</>} />
69+
);
70+
expect(wrapper.findNavigationToggle().getElement()).toHaveAttribute('aria-expanded', 'false');
71+
});
72+
73+
test(`Sets aria-expanded=true on toggle when navigation is open`, () => {
74+
const { wrapper } = renderComponent(
75+
<AppLayout navigation={<>Mock Navigation</>} navigationOpen={true} content={<>Content</>} />
76+
);
77+
expect(wrapper.findNavigationToggle().getElement()).toHaveAttribute('aria-expanded', 'true');
78+
});
6379
});

src/app-layout/visual-refresh-toolbar/toolbar/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ export function AppLayoutToolbarImplementation({
164164
<nav {...navLandmarkAttributes} className={clsx(styles['universal-toolbar-nav'])}>
165165
<TriggerButton
166166
ariaLabel={ariaLabels?.navigationToggle ?? undefined}
167-
ariaExpanded={false}
167+
ariaExpanded={!drawerExpandedMode && navigationOpen}
168168
iconName="menu"
169169
className={testutilStyles['navigation-toggle']}
170170
onClick={() => {

0 commit comments

Comments
 (0)