blob: 673e1e6f347d022098ade7b01b934f46264687ae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
/**
* @jest-environment jsdom
*/
import '@testing-library/jest-dom/extend-expect';
import { locale } from 'svelte-i18n';
import { act, render } from '@testing-library/svelte';
import userEvent from '@testing-library/user-event';
import '$lib/i18n';
import LanguageSelector from './language_selector.svelte';
const internals = {
results: null
};
describe('Language Selector component', () => {
beforeEach(() => {
internals.results = render(LanguageSelector);
});
test('Should display languages in their own language', () => {
expect(internals.results.getByText('English')).toBeVisible();
expect(internals.results.getByText('Español')).toBeVisible();
});
test('Should change locale when a language is selected', async () => {
locale.subscribe((localeValue) => {
expect(localeValue).toBe('en');
})();
const spanish = internals.results.getByText('Español');
await userEvent.selectOptions(spanish.closest('select'), spanish);
await act();
locale.subscribe((localeValue) => {
expect(localeValue).toBe('es');
})();
});
});
|