65 lines
3.4 KiB
Plaintext
65 lines
3.4 KiB
Plaintext
|
/* --------------------------------------------------------------------------------------------
|
||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||
|
* ------------------------------------------------------------------------------------------ */
|
||
|
'use strict';
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
var assert = require("assert");
|
||
|
var path = require("path");
|
||
|
var nls = require("../main");
|
||
|
var root = path.join(__dirname, '..', '..', '..', 'src', 'node', 'test');
|
||
|
describe('Localize', function () {
|
||
|
it('Simple call', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE' })();
|
||
|
var message = 'Hello World';
|
||
|
assert.strictEqual(localize('key', message), message);
|
||
|
});
|
||
|
it('Simple call with separate load', function () {
|
||
|
nls.config({ locale: 'de-DE' });
|
||
|
var localize = nls.loadMessageBundle();
|
||
|
var message = 'Hello World';
|
||
|
assert.strictEqual(localize('key', message), message);
|
||
|
});
|
||
|
it('With args', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE' })();
|
||
|
var message = '{0} {1}';
|
||
|
assert.strictEqual(localize('key', message, 'Hello', 'World'), 'Hello World');
|
||
|
});
|
||
|
it('Pseudo', function () {
|
||
|
var localize = nls.config({ locale: 'pseudo' })();
|
||
|
var message = 'Hello World';
|
||
|
assert.strictEqual(localize('key', message), '\uFF3BHeelloo Woorld\uFF3D');
|
||
|
});
|
||
|
it('Pseudo with args', function () {
|
||
|
var localize = nls.config({ locale: 'pseudo' })();
|
||
|
var message = 'Hello {0} World';
|
||
|
assert.strictEqual(localize('key', message, 'bright'), '\uFF3BHeelloo bright Woorld\uFF3D');
|
||
|
});
|
||
|
it('External Data German flat', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE', messageFormat: nls.MessageFormat.file })(path.join(root, 'data'));
|
||
|
assert.strictEqual(localize(0, null), 'Guten Tag Welt');
|
||
|
});
|
||
|
it('External Data German flat with extension', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE', messageFormat: nls.MessageFormat.file })(path.join(root, 'data.js'));
|
||
|
assert.strictEqual(localize(0, null), 'Guten Tag Welt');
|
||
|
});
|
||
|
it('External Data German flat with extension separate load', function () {
|
||
|
nls.config({ locale: 'de-DE', messageFormat: nls.MessageFormat.file });
|
||
|
var localize = nls.loadMessageBundle(path.join(root, 'data.js'));
|
||
|
assert.strictEqual(localize(0, null), 'Guten Tag Welt');
|
||
|
});
|
||
|
it('External Data German structured', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE', messageFormat: nls.MessageFormat.file })(path.join(root, 'dataStructured'));
|
||
|
assert.strictEqual(localize(0, null), 'Guten Tag Welt');
|
||
|
assert.strictEqual(localize(1, null), 'Auf Wiedersehen Welt');
|
||
|
});
|
||
|
it('External Bundle', function () {
|
||
|
var localize = nls.config({ locale: 'de-DE', messageFormat: nls.MessageFormat.bundle, bundleFormat: nls.BundleFormat.standalone })(path.join(root, 'localize.test.js'));
|
||
|
assert.strictEqual(localize(0, null), 'Guten Tag Welt');
|
||
|
});
|
||
|
it('Default data file', function () {
|
||
|
var localize = nls.config({ locale: 'zh-tw', messageFormat: nls.MessageFormat.file })(path.join(root, 'data'));
|
||
|
assert.strictEqual(localize(0, null), 'Hello World');
|
||
|
});
|
||
|
});
|
||
|
//# sourceMappingURL=localize.test.js.map
|