3 define(['test/test-helpers'], function(testHelpers) {
4 var describeIf = testHelpers.describeIf;
5 var it = testHelpers.itWithFreshLog;
7 var originalConsole = window.console;
9 describe("Setting default log level tests:", function() {
11 beforeEach(function() {
12 window.console = {"log" : jasmine.createSpy("console.log")};
14 "toBeAtLevel" : testHelpers.toBeAtLevel,
15 "toBeTheStoredLevel" : testHelpers.toBeTheLevelStoredByLocalStorage
18 testHelpers.clearStoredLevels();
21 afterEach(function() {
22 window.console = originalConsole;
25 describe("If no level is saved", function() {
26 it("new level is always set", function(log) {
27 log.setDefaultLevel("trace");
28 expect(log).toBeAtLevel("trace");
31 it("level is not persisted", function(log) {
32 log.setDefaultLevel("debug");
33 expect("debug").not.toBeTheStoredLevel();
37 describe("If a level is saved", function () {
38 beforeEach(function () {
39 testHelpers.setStoredLevel("trace");
42 it("saved level is not modified", function (log) {
43 log.setDefaultLevel("debug");
44 expect(log).toBeAtLevel("trace");
48 describe("If the level is stored incorrectly", function() {
49 beforeEach(function() {
50 testHelpers.setLocalStorageStoredLevel("gibberish");
53 it("new level is set", function(log) {
54 log.setDefaultLevel("debug");
55 expect(log).toBeAtLevel("debug");
56 expect("debug").not.toBeTheStoredLevel();