.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / loglevel / test / default-level-test.js
diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/loglevel/test/default-level-test.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/loglevel/test/default-level-test.js
new file mode 100644 (file)
index 0000000..6e3e3c7
--- /dev/null
@@ -0,0 +1,60 @@
+"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();
+            });
+        });
+    });
+});