61 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| "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();
 | |
|             });
 | |
|         });
 | |
|     });
 | |
| });
 |