39 lines
1.7 KiB
JavaScript
39 lines
1.7 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var Customizations_1 = require("./Customizations");
|
|
describe('Customizations', function () {
|
|
beforeEach(function () {
|
|
Customizations_1.Customizations.reset();
|
|
});
|
|
it('can set/get global settings', function () {
|
|
Customizations_1.Customizations.applySettings({ a: 'a', b: 'b' });
|
|
expect(Customizations_1.Customizations.getSettings(['a', 'b'])).toEqual({
|
|
a: 'a',
|
|
b: 'b',
|
|
});
|
|
expect(Customizations_1.Customizations.getSettings(['a'])).toEqual({
|
|
a: 'a',
|
|
});
|
|
expect(Customizations_1.Customizations.getSettings(['z'])).toEqual({});
|
|
});
|
|
it('can set/get scoped settings', function () {
|
|
Customizations_1.Customizations.applyScopedSettings('Foo', { a: 'a', b: 'b' });
|
|
expect(Customizations_1.Customizations.getSettings(['a', 'b'], 'Foo')).toEqual({
|
|
a: 'a',
|
|
b: 'b',
|
|
});
|
|
expect(Customizations_1.Customizations.getSettings(['a'], 'Bar')).toEqual({});
|
|
});
|
|
it('can fire changes', function () {
|
|
var counter = 0;
|
|
var incCounter = function () { return counter++; };
|
|
Customizations_1.Customizations.observe(incCounter);
|
|
Customizations_1.Customizations.applyScopedSettings('Foo', { a: 'a', b: 'b' });
|
|
Customizations_1.Customizations.applySettings({ a: 'a', b: 'b' });
|
|
expect(counter).toEqual(2);
|
|
Customizations_1.Customizations.unobserve(incCounter);
|
|
Customizations_1.Customizations.applySettings({ a: 'a', b: 'b' });
|
|
expect(counter).toEqual(2);
|
|
});
|
|
});
|
|
//# sourceMappingURL=Customizations.test.js.map
|