From 4bb14312ffe5dfef0eb5036648d5680471526f09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Mierzwa?= Date: Sat, 5 Aug 2017 19:32:29 -0700 Subject: [PATCH] Mock local storage when running tests --- assets/static/__mocks__/localStorageMock.js | 22 +++++++++++++++++++++ assets/static/unsee.test.js | 1 + 2 files changed, 23 insertions(+) create mode 100644 assets/static/__mocks__/localStorageMock.js diff --git a/assets/static/__mocks__/localStorageMock.js b/assets/static/__mocks__/localStorageMock.js new file mode 100644 index 000000000..9935e1d36 --- /dev/null +++ b/assets/static/__mocks__/localStorageMock.js @@ -0,0 +1,22 @@ +// source: https://github.com/facebook/jest/issues/2098 + +var localStorageMock = (function() { + var store = {}; + + return { + getItem: function(key) { + return store[key] || null; + }, + setItem: function(key, value) { + store[key] = value.toString(); + }, + clear: function() { + store = {}; + } + }; + +})(); + +Object.defineProperty(window, "localStorage", { + value: localStorageMock +}); diff --git a/assets/static/unsee.test.js b/assets/static/unsee.test.js index cb84b8fab..381c37848 100644 --- a/assets/static/unsee.test.js +++ b/assets/static/unsee.test.js @@ -1,6 +1,7 @@ const $ = require("jquery"); const templatesMock = require("./__mocks__/templatesMock"); const alertsMock = require("./__mocks__/alertsMock"); +require("./__mocks__/localStorageMock"); jest.useFakeTimers();