fix(i18n): identify Bokmål accurately in supported-language controls
This commit is contained in:
@@ -24,6 +24,17 @@ function Providers({ children }: { children: React.ReactNode }) {
|
||||
|
||||
afterEach(() => localStorage.clear());
|
||||
|
||||
test('language controls identify Bokmål with its native name and language code', () => {
|
||||
render(<Providers><AppShell pageTitle="Jobs" breadcrumbs={[]} pathname="/jobs" nav={nav} navBottom={[]} onNavigate={jest.fn()} onToggleDrawer={jest.fn()} drawerOpen={false}><div>Jobs content</div></AppShell></Providers>);
|
||||
const bokmal = screen.getAllByRole('button', { name: 'Norsk bokmål' })[0];
|
||||
expect(bokmal).toHaveTextContent('NB');
|
||||
expect(bokmal).toHaveAttribute('lang', 'nb');
|
||||
expect(screen.getAllByRole('button', { name: 'English' })[0]).toHaveAttribute('lang', 'en');
|
||||
fireEvent.click(bokmal);
|
||||
expect(bokmal).toHaveAttribute('aria-pressed', 'true');
|
||||
expect(localStorage.getItem('uiLanguage')).toBe('nb');
|
||||
});
|
||||
|
||||
test("[P5-01 PRES-E07 E08] grouped navigation exposes the current child without marking the parent as the page", () => {
|
||||
render(<Providers><AppShell pageTitle="Board" breadcrumbs={[]} pathname="/kanban" nav={nav} navBottom={[]} onNavigate={jest.fn()} onToggleDrawer={jest.fn()} drawerOpen={false}><div>Board content</div></AppShell></Providers>);
|
||||
expect(screen.getByRole("navigation", { name: "Navigation" })).toBeInTheDocument();
|
||||
|
||||
@@ -689,8 +689,8 @@ export function StackLanguageToggle({ language, setLanguage, onDark = false }: {
|
||||
...(onDark ? { "& .MuiButton-outlined": { color: "#fff", borderColor: "rgba(255,255,255,0.55)" } } : {}),
|
||||
}}
|
||||
>
|
||||
<Button aria-label="English" aria-pressed={language === "en"} variant={language === "en" ? "contained" : "outlined"} onClick={() => setLanguage("en")}>EN</Button>
|
||||
<Button aria-label="Norsk" aria-pressed={language === "nb"} variant={language === "nb" ? "contained" : "outlined"} onClick={() => setLanguage("nb")}>NO</Button>
|
||||
<Button lang="en" aria-label="English" aria-pressed={language === "en"} variant={language === "en" ? "contained" : "outlined"} onClick={() => setLanguage("en")}>EN</Button>
|
||||
<Button lang="nb" aria-label="Norsk bokmål" aria-pressed={language === "nb"} variant={language === "nb" ? "contained" : "outlined"} onClick={() => setLanguage("nb")}>NB</Button>
|
||||
</ButtonGroup>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user