diff --git a/src/app/components/translator/translator.service.spec.ts b/src/app/components/translator/translator.service.spec.ts index 4328a23..d1fee49 100644 --- a/src/app/components/translator/translator.service.spec.ts +++ b/src/app/components/translator/translator.service.spec.ts @@ -31,8 +31,8 @@ describe("Services", () => { let component: TranslatorService = createComponent(); component.availableLanguages = null; expect(component.availableLanguages).toBeNull(); - component.changeLanguage('en'); - expect(component.availableLanguages).toBeDefined(); + $rootScope.$emit("$translateChangeSuccess"); + expect(component.availableLanguages).not.toBeNull(); done(); }); @@ -55,6 +55,14 @@ describe("Services", () => { done(); }); + it("do not load moment locale when change the language to english", (done) => { + let component: TranslatorService = createComponent(); + component["angularLoad"].loadScript = jasmine.createSpy("loadScript").and.returnValue($q.defer().promise); + component.changeLanguage('en'); + expect(component["angularLoad"].loadScript).not.toHaveBeenCalledWith("/bower_components/moment/locale/pt.js"); + done(); + }); + it("do nothing when call change language with null", (done) => { let component: TranslatorService = createComponent(); component["angularLoad"].loadScript = jasmine.createSpy("loadScript"); diff --git a/src/app/components/translator/translator.service.ts b/src/app/components/translator/translator.service.ts index c372dc1..620daf3 100644 --- a/src/app/components/translator/translator.service.ts +++ b/src/app/components/translator/translator.service.ts @@ -12,10 +12,12 @@ export class TranslatorService { private angularLoad: any, private $rootScope: any) { - this.configAvailableLanguages(); this.$rootScope.$on("$localeChangeSuccess", () => { this.changeLanguage(tmhDynamicLocale.get() || $translate.use()); }); + this.$rootScope.$on("$translateChangeSuccess", () => { + this.configAvailableLanguages(); + }); } currentLanguage() { @@ -31,8 +33,6 @@ export class TranslatorService { this.tmhDynamicLocale.set(language); this.angularLoad.loadScript(`/bower_components/messageformat/locale/${language}.js`).then(() => { return this.$translate.use(language); - }).then(() => { - this.configAvailableLanguages(); }); } -- libgit2 0.21.2