UNPKG

1.53 kBJavaScriptView Raw
1"use strict";
2
3describe("loglevel included via node", function () {
4 it("is included successfully", function () {
5 expect(require('../lib/loglevel')).not.toBeUndefined();
6 });
7
8 it("allows setting the logging level", function () {
9 var log = require('../lib/loglevel');
10
11 log.setLevel(log.levels.TRACE);
12 log.setLevel(log.levels.DEBUG);
13 log.setLevel(log.levels.INFO);
14 log.setLevel(log.levels.WARN);
15 log.setLevel(log.levels.ERROR);
16 });
17
18 it("successfully logs", function () {
19 var log = require('../lib/loglevel');
20 console.info = jasmine.createSpy("info");
21
22 log.setLevel(log.levels.INFO);
23 log.info("test message");
24
25 expect(console.info).toHaveBeenCalledWith("test message");
26 });
27
28 // NOTE: this test is the same as the similarly-named test in
29 // `multiple-logger-test.js` (which only runs in browsers). If making
30 // changes here, be sure to adjust that test as well.
31 it("supports using symbols as names", function() {
32 var log = require('../lib/loglevel');
33
34 var s1 = Symbol("a-symbol");
35 var s2 = Symbol("a-symbol");
36
37 var logger1 = log.getLogger(s1);
38 var defaultLevel = logger1.getLevel();
39 logger1.setLevel(log.levels.TRACE);
40
41 var logger2 = log.getLogger(s2);
42
43 // Should be unequal: same name, but different symbol instances
44 expect(logger1).not.toEqual(logger2);
45 expect(logger2.getLevel()).toEqual(defaultLevel);
46 });
47});