From: Tiago Melo Date: Tue, 1 Oct 2019 13:21:16 +0000 (+0000) Subject: mgr/dashboard: Store selected language in cookies X-Git-Tag: v15.1.0~1273^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=1098265127f5b967e809e14d16ec96996475ee84;p=ceph.git mgr/dashboard: Store selected language in cookies This will allow the backend access to this information in all requests. Signed-off-by: Tiago Melo --- diff --git a/src/pybind/mgr/dashboard/frontend/src/app/locale.helper.ts b/src/pybind/mgr/dashboard/frontend/src/app/locale.helper.ts index 7629f87e6290b..b2c02e8239f5b 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/locale.helper.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/locale.helper.ts @@ -37,7 +37,6 @@ export class LocaleHelper { static setLocale(lang: string) { document.cookie = `cd-lang=${lang}`; - window.localStorage.setItem('lang', lang); } } diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/components/language-selector/language-selector.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/components/language-selector/language-selector.component.spec.ts index cb8d4b37f648e..6a883ededf4cf 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/components/language-selector/language-selector.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/components/language-selector/language-selector.component.spec.ts @@ -4,6 +4,7 @@ import { FormsModule } from '@angular/forms'; import { listLocales } from 'ngx-bootstrap/chronos'; import { BsLocaleService } from 'ngx-bootstrap/datepicker'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; import { configureTestBed } from '../../../../testing/unit-test-helper'; import { LanguageSelectorComponent } from './language-selector.component'; @@ -14,7 +15,7 @@ describe('LanguageSelectorComponent', () => { configureTestBed({ declarations: [LanguageSelectorComponent], providers: [BsLocaleService], - imports: [FormsModule] + imports: [FormsModule, HttpClientTestingModule] }); beforeEach(() => { @@ -35,8 +36,8 @@ describe('LanguageSelectorComponent', () => { const expectLanguageChange = (lang) => { component.changeLanguage(lang); - expect(component.selectedLanguage).toBe(lang); - expect(listLocales().includes(lang.slice(0, 2))).toBe(true); + const cookie = document.cookie.split(';').filter((item) => item.includes(`cd-lang=${lang}`)); + expect(cookie.length).toBe(1); }; it('should change to cs', () => {