From 859750cf60f709e4d327b4cea9c1f0fade410995 Mon Sep 17 00:00:00 2001 From: Rob Brackett Date: Thu, 11 Jan 2024 00:06:47 +0000 Subject: [PATCH] Fix clearStoredLevels() helper and remaining tests The `clearStoredLevels()` helper did not work correctly for named loggers -- it looked for cookie names like `loglevel:whatever` instead of `loglevel:%3Awhatever` (cookie names and values are URL-encoded). This also fixes another test that started failing after an earlier fix, I think because of timing/ordering issues. Explicitly clearing storage before the test fixed the issue (the test was implicitly expecting nothing to be stored). --- test/default-level-test.js | 4 ++++ test/test-helpers.js | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/test/default-level-test.js b/test/default-level-test.js index d7e1182..44d2755 100644 --- a/test/default-level-test.js +++ b/test/default-level-test.js @@ -23,6 +23,10 @@ define(['test/test-helpers'], function(testHelpers) { }); describe("If no level is saved", function() { + beforeEach(function () { + testHelpers.clearStoredLevels(); + }); + it("new level is always set", function(log) { log.setDefaultLevel("trace"); expect(log).toBeAtLevel("trace"); diff --git a/test/test-helpers.js b/test/test-helpers.js index 86bd71f..42b57e4 100644 --- a/test/test-helpers.js +++ b/test/test-helpers.js @@ -165,7 +165,7 @@ define(function () { window.localStorage.clear(); } if (self.isCookieStorageAvailable()) { - var storedKeys = window.document.cookie.match(/(?:^|;\s)(loglevel(\:\w+)?)(?=\=)/g); + var storedKeys = window.document.cookie.match(/(?:^|;\s)(loglevel(%3a\w+)?)(?=\=)/ig); if (storedKeys) { for (var i = 0; i < storedKeys.length; i++) { window.document.cookie = storedKeys[i] + "=; expires=Thu, 01 Jan 1970 00:00:01 GMT;";