2 * @jest-environment jsdom
5 import '@testing-library/jest-dom/extend-expect';
7 import { locale } from 'svelte-i18n';
8 import { act, render } from '@testing-library/svelte';
9 import userEvent from '@testing-library/user-event';
12 import LanguageSelector from './language_selector.svelte';
18 describe('Language Selector component', () => {
22 internals.results = render(LanguageSelector);
25 test('Should display languages in their own language', () => {
27 expect(internals.results.getByText('English'))
29 expect(internals.results.getByText('Español'))
33 test('Should change locale when a language is selected', async () => {
35 locale.subscribe((localeValue) => {
37 expect(localeValue).toBe('en');
39 const spanish = internals.results.getByText('Español');
40 await userEvent.selectOptions(spanish.closest('select'), spanish);
42 locale.subscribe((localeValue) => {
44 expect(localeValue).toBe('es');