From e7e0919d7c76c818590df4435db0152298298bd9 Mon Sep 17 00:00:00 2001 From: frankiebee Date: Thu, 27 Apr 2017 15:25:00 +0200 Subject: Setup test enviroment for mascara --- mascara/test/util/mascara-test-helper.js | 40 ++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 mascara/test/util/mascara-test-helper.js (limited to 'mascara/test/util/mascara-test-helper.js') diff --git a/mascara/test/util/mascara-test-helper.js b/mascara/test/util/mascara-test-helper.js new file mode 100644 index 000000000..1ed576005 --- /dev/null +++ b/mascara/test/util/mascara-test-helper.js @@ -0,0 +1,40 @@ +const EventEmitter = require('events') +const IDB = require('../../../mascara/src/lib/index-db-controller') +const KEY = 'metamask-test-config' +module.exports = class Helper extends EventEmitter { + constructor () { + super() + } + + tryToCleanContext () { + this.unregister() + .then(() => this.clearDb()) + .then(() => super.emit('complete')) + .catch((err) => super.emit('complete')) + } + + unregister () { + return global.navigator.serviceWorker.getRegistration() + .then((registration) => { + if (registration) return registration.unregister() + .then((b) => b ? Promise.resolve() : Promise.reject()) + else return Promise.resolve() + }) + } + clearDb () { + return new Promise ((resolve, reject) => { + const deleteRequest = global.indexDB.deleteDatabase(KEY) + deleteRequest.addEventListener('success', resolve) + deleteRequest.addEventListener('error', reject) + }) + + } + mockState (state) { + const db = new IDB({ + version: 2, + key: KEY, + initialState: state + }) + return db.open() + } +} -- cgit v1.2.3 From 53537824f179038d227c9a340302d039ab151ede Mon Sep 17 00:00:00 2001 From: frankiebee Date: Thu, 27 Apr 2017 17:21:10 +0200 Subject: break out IndexDbController && Run the first time test on mascara --- mascara/test/util/mascara-test-helper.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mascara/test/util/mascara-test-helper.js') diff --git a/mascara/test/util/mascara-test-helper.js b/mascara/test/util/mascara-test-helper.js index 1ed576005..9cf4fa900 100644 --- a/mascara/test/util/mascara-test-helper.js +++ b/mascara/test/util/mascara-test-helper.js @@ -1,5 +1,5 @@ const EventEmitter = require('events') -const IDB = require('../../../mascara/src/lib/index-db-controller') +const IDB = require('idb-global') const KEY = 'metamask-test-config' module.exports = class Helper extends EventEmitter { constructor () { -- cgit v1.2.3