diff --git a/src/app/layout/blocks/block-edition/block-edition.component.spec.ts b/src/app/layout/blocks/block-edition/block-edition.component.spec.ts new file mode 100644 index 0000000..35c82a3 --- /dev/null +++ b/src/app/layout/blocks/block-edition/block-edition.component.spec.ts @@ -0,0 +1,34 @@ +import {Component} from 'ng-forward'; +import {BlockEditionComponent} from './block-edition.component'; +import * as helpers from "../../../../spec/helpers"; +import {ComponentTestHelper, createClass} from '../../../../spec/component-test-helper'; + +const htmlTemplate: string = ''; + +describe("Boxes Component", () => { + + let helper: ComponentTestHelper; + let translatorService = { + availableLanguages: { 'en': 'English', 'pt': 'Portuguese' } + }; + + beforeEach(() => { + angular.mock.module("templates"); + }); + + beforeEach((done) => { + let cls = createClass({ + template: htmlTemplate, + directives: [BlockEditionComponent], + providers: [ + helpers.createProviderToValue('TranslatorService', translatorService) + ] + }); + helper = new ComponentTestHelper(cls, done); + }); + + it("get available languages from translator service", () => { + expect(helper.component.languageOptions).toEqual(['all', 'en', 'pt']); + }); + +}); diff --git a/src/app/layout/blocks/block-edition/block-edition.component.ts b/src/app/layout/blocks/block-edition/block-edition.component.ts index 446a717..5726a4c 100644 --- a/src/app/layout/blocks/block-edition/block-edition.component.ts +++ b/src/app/layout/blocks/block-edition/block-edition.component.ts @@ -1,18 +1,22 @@ -import { Input, Component } from 'ng-forward'; +import { Input, Inject, Component } from 'ng-forward'; +import { TranslatorService } from "../../../shared/services/translator.service"; @Component({ selector: 'noosfero-block-edition', templateUrl: 'app/layout/blocks/block-edition/block-edition.html' }) +@Inject(TranslatorService) export class BlockEditionComponent { + static $inject = ["TranslatorService"]; // @Inject doesn't works with uibModal.open + displayOptions: any; displayUserOptions: any; languageOptions: any; - constructor() { + constructor(private translatorService: TranslatorService) { this.displayOptions = ["always", "home_page_only", "except_home_page", "never"]; this.displayUserOptions = ["all", "logged", "not_logged"]; - this.languageOptions = ["all", "en", "pt"]; // FIXME get language list + this.languageOptions = ["all"].concat(Object.keys(translatorService.availableLanguages)); } } -- libgit2 0.21.2