Skip to content

Commit 859966d

Browse files
committed
support using dtrwTranslate without config
1 parent 54f0eb3 commit 859966d

File tree

8 files changed

+28
-23
lines changed

8 files changed

+28
-23
lines changed

bower.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"main": [
44
"dist/angular-devtrw-translate.js"
55
],
6-
"version": "0.1.4",
6+
"version": "0.1.5",
77
"description": "Provides translate-base and translate-child directives for angular-translate",
88
"authors": [
99
"Steven Nance <steven@devtrw.com>"

dist/angular-devtrw-translate.js

Lines changed: 2 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/angular-devtrw-translate.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/angular-devtrw-translate.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

karma.conf.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ module.exports = function (config) {
1919

2020
// frameworks to use
2121
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
22-
frameworks: ['mocha', 'chai'],
22+
frameworks: ['chai', 'mocha', 'sinon'],
2323

2424
// list of files / patterns to load in the browser
2525
files: [
@@ -69,7 +69,8 @@ module.exports = function (config) {
6969
require('karma-webpack'),
7070
'karma-chai',
7171
'karma-mocha',
72-
'karma-phantomjs-launcher'
72+
'karma-phantomjs-launcher',
73+
'karma-sinon'
7374
]
7475
});
7576
};

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "angular-devtrw-translate",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"author": "Steven Nance <steven@devtrw.com>",
55
"homepage": "https://github.com/devtrw/angular-devtrw-translate",
66
"repository": {
@@ -45,6 +45,7 @@
4545
"karma-chai": "0.1.0",
4646
"karma-mocha": "0.1.10",
4747
"karma-phantomjs-launcher": "0.1.4",
48+
"karma-sinon": "^1.0.4",
4849
"karma-webpack": "1.5.0",
4950
"mocha": "2.2.4",
5051
"ng-annotate-loader": "0.0.2",

src/index.test.js

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ describe(ngModule.name, () => {
1313
dtrwTranslateProvider.setBaseTranslationKey('dtrw');
1414
}));
1515

16-
beforeEach(function () {
16+
beforeEach(() => {
1717
inject($injector => {
1818
$state = $injector.get('$state');
1919
dtrwTranslate = $injector.get('dtrwTranslate');
@@ -32,13 +32,25 @@ describe(ngModule.name, () => {
3232
});
3333
});
3434

35-
describe('dtrwTranslate service missing configuration', () => {
35+
describe('dtrwTranslate service without configuration', () => {
3636
beforeEach(window.module(ngModule.name));
3737

38-
it('should throw an error when the base translation key is not configured', () => {
39-
assert.throws(() => {
40-
inject($injector => $injector.get('dtrwTranslate'));
38+
beforeEach(() => {
39+
inject($injector => {
40+
$state = $injector.get('$state');
41+
dtrwTranslate = $injector.get('dtrwTranslate');
4142
});
4243
});
44+
45+
beforeEach(() => {
46+
$state.current = {name: 'app.states.some-state-name'};
47+
});
48+
49+
it('should combine the state name, and the passed in key', () => {
50+
assert.equal(
51+
dtrwTranslate.getStateKey('CHILD.TRANSLATION.KEY'),
52+
'app.states.someStateName.CHILD.TRANSLATION.KEY'
53+
);
54+
});
4355
});
4456
});

src/translate-provider.js

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,6 @@ function dtrwTranslateProvider() {
2727
* @ngInject
2828
*/
2929
function $get($filter, $state) {
30-
if (!baseTranslationKey) {
31-
throw new Error(
32-
'Expected base translation key is not set. ' +
33-
'This can be set by calling dtrwTranslateProvider#setBaseTranslationKey()'
34-
);
35-
}
3630
/**
3731
* @name dtrw.translate.dtrwTranslate
3832
* @constructor
@@ -53,7 +47,7 @@ function dtrwTranslateProvider() {
5347
* @returns {string}
5448
*/
5549
function getStateKey(key) {
56-
let parts = [baseTranslationKey];
50+
let parts = baseTranslationKey ? [baseTranslationKey] : [];
5751

5852
parts.push(...$state.current.name.split('.').map($filter('hyphenatedToCamelCase')));
5953
parts.push(key);

0 commit comments

Comments
 (0)