"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