summary refs log tree commit diff
path: root/resources/app/node_modules/loglevel/test/method-factory-test.js
diff options
context:
space:
mode:
Diffstat (limited to 'resources/app/node_modules/loglevel/test/method-factory-test.js')
-rw-r--r--resources/app/node_modules/loglevel/test/method-factory-test.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/resources/app/node_modules/loglevel/test/method-factory-test.js b/resources/app/node_modules/loglevel/test/method-factory-test.js
new file mode 100644
index 0000000..aa80fc6
--- /dev/null
+++ b/resources/app/node_modules/loglevel/test/method-factory-test.js
@@ -0,0 +1,42 @@
+"use strict";
+
+define(['test/test-helpers'], function(testHelpers) {
+    var it = testHelpers.itWithFreshLog;
+
+    describe("Setting the methodFactory tests:", function() {
+
+        it("methodFactory should be called once for each loggable level", function(log) {
+            log.methodFactory = jasmine.createSpy("methodFactory");
+
+            log.setLevel("trace");
+            expect(log.methodFactory.calls.length).toEqual(5);
+            expect(log.methodFactory.argsForCall[0]).toEqual(["trace", 0, undefined]);
+            expect(log.methodFactory.argsForCall[1]).toEqual(["debug", 0, undefined]);
+            expect(log.methodFactory.argsForCall[2]).toEqual(["info",  0, undefined]);
+            expect(log.methodFactory.argsForCall[3]).toEqual(["warn",  0, undefined]);
+            expect(log.methodFactory.argsForCall[4]).toEqual(["error", 0, undefined]);
+
+            log.setLevel("error");
+            expect(log.methodFactory.calls.length).toEqual(6);
+            expect(log.methodFactory.argsForCall[5]).toEqual(["error", 4, undefined]);
+        });
+
+        it("functions returned by methodFactory should be used as logging functions", function(log) {
+            var logFunction = function() {};
+            log.methodFactory = function() { return logFunction; };
+            log.setLevel("error");
+
+            expect(log.warn).not.toEqual(logFunction);
+            expect(log.error).toEqual(logFunction);
+        });
+
+        it("the third argument should be logger's name", function(log) {
+            var logger = log.getLogger("newLogger");
+            logger.methodFactory = jasmine.createSpy("methodFactory");
+
+            logger.setLevel("error");
+            expect(logger.methodFactory.argsForCall[0]).toEqual(["error", 4, "newLogger"]);
+        });
+
+    });
+});