Newer
Older
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import * as i18next from '../i18next.js';
describe('i18next', () => {
it('createInstance', () => {
var inst = i18next.createInstance({de: {}}, 'de', 'en');
assert.exists(inst);
assert.deepEqual(inst.languages, ['de', 'en']);
});
it('translations', () => {
var inst = i18next.createInstance({de: {foo: 'bar'}, en: {foo: 'baz', extra: 'quux'}}, 'de', 'en');
assert.deepEqual(inst.languages, ['de', 'en']);
assert.equal( inst.t('foo'), 'bar');
assert.equal( inst.t('nope'), 'nope');
assert.equal( inst.t('extra'), 'quux');
inst.changeLanguage('en');
assert.deepEqual(inst.languages, ['en']);
assert.equal( inst.t('foo'), 'baz');
assert.equal( inst.t('nope'), 'nope');
inst.changeLanguage('nope');
assert.deepEqual(inst.languages, ['nope', 'en']);
assert.equal( inst.t('foo'), 'baz');
assert.equal( inst.t('nope'), 'nope');
});
it('date format', () => {
var inst = i18next.createInstance({de: {}}, 'de', 'en');
assert.deepEqual(inst.languages, ['de', 'en']);
var date = new Date('1995-12-17T03:24:00');
assert.equal(i18next.dateTimeFormat(inst, date), '17.12.1995');
inst.changeLanguage('en');
// TODO: not sure it's a good idea to use the english format even if english is selected because it's just confusing
assert.equal(i18next.dateTimeFormat(inst, date), '12/17/1995');
});
it('number format', () => {
var inst = i18next.createInstance({de: {}}, 'de', 'en');
assert.deepEqual(inst.languages, ['de', 'en']);
assert.equal(i18next.numberFormat(inst, 42), '42');
assert.equal(i18next.numberFormat(inst, 1.25), '1,25');
assert.equal(i18next.numberFormat(inst, 1234), '1.234');
inst.changeLanguage('en');
assert.equal(i18next.numberFormat(inst, 42), '42');
assert.equal(i18next.numberFormat(inst, 1.25), '1.25');
assert.equal(i18next.numberFormat(inst, 1234), '1,234');
});
});