jest-webextension-mock 3.8.12 → 3.8.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.changeset/README.md +8 -0
- package/.changeset/config.json +11 -0
- package/CHANGELOG.md +7 -0
- package/__tests__/storage.test.js +20 -0
- package/dist/setup.js +27 -8
- package/package.json +3 -3
- package/src/createEventListeners.js +18 -0
- package/src/storage.js +5 -5
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Changesets
|
|
2
|
+
|
|
3
|
+
Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
|
|
4
|
+
with multi-package repos, or single-package repos to help you version and publish your code. You can
|
|
5
|
+
find the full documentation for it [in our repository](https://github.com/changesets/changesets)
|
|
6
|
+
|
|
7
|
+
We have a quick list of common questions to get you started engaging with this project in
|
|
8
|
+
[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
|
|
3
|
+
"changelog": "@changesets/cli/changelog",
|
|
4
|
+
"commit": false,
|
|
5
|
+
"fixed": [],
|
|
6
|
+
"linked": [],
|
|
7
|
+
"access": "restricted",
|
|
8
|
+
"baseBranch": "main",
|
|
9
|
+
"updateInternalDependencies": "patch",
|
|
10
|
+
"ignore": []
|
|
11
|
+
}
|
package/CHANGELOG.md
ADDED
|
@@ -143,6 +143,26 @@ describe('browser.storage', () => {
|
|
|
143
143
|
});
|
|
144
144
|
});
|
|
145
145
|
});
|
|
146
|
+
test('onChanged', () => {
|
|
147
|
+
const callback = jest.fn();
|
|
148
|
+
expect(jest.isMockFunction(storage.onChanged.addListener)).toBe(true);
|
|
149
|
+
expect(jest.isMockFunction(storage.onChanged.removeListener)).toBe(
|
|
150
|
+
true
|
|
151
|
+
);
|
|
152
|
+
expect(jest.isMockFunction(storage.onChanged.hasListener)).toBe(true);
|
|
153
|
+
expect(jest.isMockFunction(storage.onChanged.hasListeners)).toBe(true);
|
|
154
|
+
|
|
155
|
+
expect(storage.onChanged.hasListeners()).toBe(false);
|
|
156
|
+
expect(storage.onChanged.hasListener(callback)).toBe(false);
|
|
157
|
+
|
|
158
|
+
storage.onChanged.addListener(callback);
|
|
159
|
+
expect(storage.onChanged.hasListeners()).toBe(true);
|
|
160
|
+
expect(storage.onChanged.hasListener(callback)).toBe(true);
|
|
161
|
+
|
|
162
|
+
storage.onChanged.removeListener(callback);
|
|
163
|
+
expect(storage.onChanged.hasListeners()).toBe(false);
|
|
164
|
+
expect(storage.onChanged.hasListener(callback)).toBe(false);
|
|
165
|
+
});
|
|
146
166
|
});
|
|
147
167
|
});
|
|
148
168
|
});
|
package/dist/setup.js
CHANGED
|
@@ -239,6 +239,26 @@ var tabs = {
|
|
|
239
239
|
})
|
|
240
240
|
};
|
|
241
241
|
|
|
242
|
+
var createEventListeners = function createEventListeners() {
|
|
243
|
+
var listeners = [];
|
|
244
|
+
return {
|
|
245
|
+
addListener: jest.fn(function (listener) {
|
|
246
|
+
listeners.push(listener);
|
|
247
|
+
}),
|
|
248
|
+
removeListener: jest.fn(function (listener) {
|
|
249
|
+
listeners = listeners.filter(function (l) {
|
|
250
|
+
return l !== listener;
|
|
251
|
+
});
|
|
252
|
+
}),
|
|
253
|
+
hasListener: jest.fn(function (listener) {
|
|
254
|
+
return listeners.includes(listener);
|
|
255
|
+
}),
|
|
256
|
+
hasListeners: jest.fn(function () {
|
|
257
|
+
return listeners.length > 0;
|
|
258
|
+
})
|
|
259
|
+
};
|
|
260
|
+
};
|
|
261
|
+
|
|
242
262
|
var store = {};
|
|
243
263
|
function resolveKey(key) {
|
|
244
264
|
if (typeof key === 'string') {
|
|
@@ -298,7 +318,8 @@ var storage = {
|
|
|
298
318
|
return cb();
|
|
299
319
|
}
|
|
300
320
|
return Promise.resolve();
|
|
301
|
-
})
|
|
321
|
+
}),
|
|
322
|
+
onChanged: createEventListeners()
|
|
302
323
|
},
|
|
303
324
|
local: {
|
|
304
325
|
get: jest.fn(function (id, cb) {
|
|
@@ -339,7 +360,8 @@ var storage = {
|
|
|
339
360
|
return cb();
|
|
340
361
|
}
|
|
341
362
|
return Promise.resolve();
|
|
342
|
-
})
|
|
363
|
+
}),
|
|
364
|
+
onChanged: createEventListeners()
|
|
343
365
|
},
|
|
344
366
|
managed: {
|
|
345
367
|
get: jest.fn(function (id, cb) {
|
|
@@ -380,13 +402,10 @@ var storage = {
|
|
|
380
402
|
return cb();
|
|
381
403
|
}
|
|
382
404
|
return Promise.resolve();
|
|
383
|
-
})
|
|
405
|
+
}),
|
|
406
|
+
onChanged: createEventListeners()
|
|
384
407
|
},
|
|
385
|
-
onChanged:
|
|
386
|
-
addListener: jest.fn(),
|
|
387
|
-
removeListener: jest.fn(),
|
|
388
|
-
hasListener: jest.fn()
|
|
389
|
-
}
|
|
408
|
+
onChanged: createEventListeners()
|
|
390
409
|
};
|
|
391
410
|
|
|
392
411
|
var getDetails = function getDetails(details, cb) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jest-webextension-mock",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.13",
|
|
4
4
|
"description": "Mock the components of a WebExtension",
|
|
5
5
|
"main": "dist/setup.js",
|
|
6
6
|
"module": "src/setup.js",
|
|
@@ -13,16 +13,16 @@
|
|
|
13
13
|
"scripts": {
|
|
14
14
|
"test": "jest",
|
|
15
15
|
"build": "rollup -c",
|
|
16
|
-
"release": "
|
|
16
|
+
"release": "changeset version",
|
|
17
17
|
"prettier": "prettier --write \"{config,src,__{tests,setups}__}/**/*.js\" rollup.config.js",
|
|
18
18
|
"eslint-check": "eslint --print-config .eslintrc.js | eslint-config-prettier-check"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@babel/core": "^7.11.6",
|
|
22
22
|
"@babel/preset-env": "^7.11.5",
|
|
23
|
+
"@changesets/cli": "^2.27.1",
|
|
23
24
|
"babel-core": "^7.0.0-bridge.0",
|
|
24
25
|
"babel-jest": "^26.5.2",
|
|
25
|
-
"bumpp": "^9.4.0",
|
|
26
26
|
"eslint": "^7.11.0",
|
|
27
27
|
"eslint-config-prettier": "^6.12.0",
|
|
28
28
|
"eslint-plugin-prettier": "^3.1.4",
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const createEventListeners = () => {
|
|
2
|
+
let listeners = [];
|
|
3
|
+
|
|
4
|
+
return {
|
|
5
|
+
addListener: jest.fn((listener) => {
|
|
6
|
+
listeners.push(listener);
|
|
7
|
+
}),
|
|
8
|
+
removeListener: jest.fn((listener) => {
|
|
9
|
+
listeners = listeners.filter((l) => l !== listener);
|
|
10
|
+
}),
|
|
11
|
+
hasListener: jest.fn((listener) => {
|
|
12
|
+
return listeners.includes(listener);
|
|
13
|
+
}),
|
|
14
|
+
hasListeners: jest.fn(() => {
|
|
15
|
+
return listeners.length > 0;
|
|
16
|
+
}),
|
|
17
|
+
};
|
|
18
|
+
};
|
package/src/storage.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
let store = {};
|
|
2
|
+
import { createEventListeners } from './createEventListeners';
|
|
2
3
|
|
|
3
4
|
function resolveKey(key) {
|
|
4
5
|
if (typeof key === 'string') {
|
|
@@ -56,6 +57,7 @@ export const storage = {
|
|
|
56
57
|
}
|
|
57
58
|
return Promise.resolve();
|
|
58
59
|
}),
|
|
60
|
+
onChanged: createEventListeners(),
|
|
59
61
|
},
|
|
60
62
|
local: {
|
|
61
63
|
get: jest.fn((id, cb) => {
|
|
@@ -93,6 +95,7 @@ export const storage = {
|
|
|
93
95
|
}
|
|
94
96
|
return Promise.resolve();
|
|
95
97
|
}),
|
|
98
|
+
onChanged: createEventListeners(),
|
|
96
99
|
},
|
|
97
100
|
managed: {
|
|
98
101
|
get: jest.fn((id, cb) => {
|
|
@@ -130,10 +133,7 @@ export const storage = {
|
|
|
130
133
|
}
|
|
131
134
|
return Promise.resolve();
|
|
132
135
|
}),
|
|
136
|
+
onChanged: createEventListeners(),
|
|
133
137
|
},
|
|
134
|
-
onChanged:
|
|
135
|
-
addListener: jest.fn(),
|
|
136
|
-
removeListener: jest.fn(),
|
|
137
|
-
hasListener: jest.fn(),
|
|
138
|
-
},
|
|
138
|
+
onChanged: createEventListeners(),
|
|
139
139
|
};
|