diff options
Diffstat (limited to 'includes/external/matrix/node_modules/loglevel/test/default-level-test.js')
-rw-r--r-- | includes/external/matrix/node_modules/loglevel/test/default-level-test.js | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/includes/external/matrix/node_modules/loglevel/test/default-level-test.js b/includes/external/matrix/node_modules/loglevel/test/default-level-test.js new file mode 100644 index 0000000..329c9dd --- /dev/null +++ b/includes/external/matrix/node_modules/loglevel/test/default-level-test.js @@ -0,0 +1,77 @@ +"use strict"; + +define(['test/test-helpers'], function(testHelpers) { + var describeIf = testHelpers.describeIf; + var it = testHelpers.itWithFreshLog; + + var originalConsole = window.console; + + describe("Setting default log level tests:", function() { + + beforeEach(function() { + window.console = {"log" : jasmine.createSpy("console.log")}; + this.addMatchers({ + "toBeAtLevel" : testHelpers.toBeAtLevel, + "toBeTheStoredLevel" : testHelpers.toBeTheLevelStoredByLocalStorage + }); + + testHelpers.clearStoredLevels(); + }); + + afterEach(function() { + window.console = originalConsole; + }); + + describe("If no level is saved", function() { + it("new level is always set", function(log) { + log.setDefaultLevel("trace"); + expect(log).toBeAtLevel("trace"); + }); + + it("level is not persisted", function(log) { + log.setDefaultLevel("debug"); + expect("debug").not.toBeTheStoredLevel(); + }); + }); + + describe("If a level is saved", function () { + beforeEach(function () { + testHelpers.setStoredLevel("trace"); + }); + + it("saved level is not modified", function (log) { + log.setDefaultLevel("debug"); + expect(log).toBeAtLevel("trace"); + }); + }); + + describe("If the level is stored incorrectly", function() { + beforeEach(function() { + testHelpers.setLocalStorageStoredLevel("gibberish"); + }); + + it("new level is set", function(log) { + log.setDefaultLevel("debug"); + expect(log).toBeAtLevel("debug"); + expect("debug").not.toBeTheStoredLevel(); + }); + }); + + describe("log.resetLevel() resets the log", function() { + it("to warn if no explicit default is set", function(log) { + log.setLevel("debug"); + log.resetLevel(); + + expect(log).toBeAtLevel("warn"); + }); + + it("to info if default is set to info", function(log) { + log.setDefaultLevel("info"); + log.setLevel("debug"); + log.resetLevel(); + + expect(log).toBeAtLevel("info"); + }); + }); + }); +}); |