From e5f937d7f6be5cba11225a024a8cefa03e9fda02 Mon Sep 17 00:00:00 2001 From: Kim Biesbjerg Date: Thu, 8 Dec 2016 16:09:06 +0100 Subject: [PATCH] Support alternate ng2-translate attribute in DirectiveParser. Add more tests --- src/parsers/directive.parser.ts | 2 +- tests/parsers/directive.parser.spec.ts | 20 ++++++++++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/parsers/directive.parser.ts b/src/parsers/directive.parser.ts index a70a6f4..90c4192 100644 --- a/src/parsers/directive.parser.ts +++ b/src/parsers/directive.parser.ts @@ -22,7 +22,7 @@ export class DirectiveParser extends AbstractTemplateParser implements ParserInt .addBack() .each((i: number, element: CheerioElement) => { const $element = $(element); - const attr = $element.attr('translate'); + const attr = $element.attr('translate') || $element.attr('ng2-translate'); if (attr) { results.push(attr); diff --git a/tests/parsers/directive.parser.spec.ts b/tests/parsers/directive.parser.spec.ts index 2c2c064..127a42a 100644 --- a/tests/parsers/directive.parser.spec.ts +++ b/tests/parsers/directive.parser.spec.ts @@ -80,10 +80,26 @@ describe('DirectiveParser', () => { expect(messages).to.deep.equal(['Hello World']); }); - it('should extract when using alternate translate attribute', () => { - const contents = '
Hello World
'; + + + + + it('should extract contents when no ng2-translate attribute value is provided', () => { + const contents = '
Hello World
'; const messages = parser.process(templateFilename, contents); expect(messages).to.deep.equal(['Hello World']); }); + it('should extract ng2-translate attribute if provided', () => { + const contents = '
Hello World
'; + const messages = parser.process(templateFilename, contents); + expect(messages).to.deep.equal(['KEY']); + }); + + it('should extract bound ng2-translate attribute as key if provided', () => { + const contents = `
Hello World
`; + const messages = parser.process(templateFilename, contents); + expect(messages).to.deep.equal(['KEY']); + }); + });