+21
-6
lines changedFilter options
+21
-6
lines changed Original file line number Diff line number Diff line change
@@ -12,8 +12,6 @@ if (common.isIBMi)
12
12
if (common.isAIX)
13
13
common.skip('folder watch capability is limited in AIX.');
14
14
15
-
tmpdir.refresh();
16
-
17
15
const { FilesWatcher } = watcher;
18
16
19
17
tmpdir.refresh();
@@ -32,15 +30,18 @@ Object.entries(fixtureContent)
32
30
.forEach(([file, content]) => writeFileSync(fixturePaths[file], content));
33
31
34
32
describe('watch file with shared dependency', () => {
35
-
it('should not remove shared dependencies when unfiltering an owner', () => {
33
+
it('should not remove shared dependencies when unfiltering an owner', (t, done) => {
36
34
const controller = new AbortController();
37
-
const watcher = new FilesWatcher({ signal: controller.signal, debounce: 200 });
35
+
const watcher = new FilesWatcher({ signal: controller.signal });
38
36
39
37
watcher.on('changed', ({ owners }) => {
40
-
assert.strictEqual(owners.size, 2);
38
+
if (owners.size !== 2) return;
39
+
40
+
// If this code is never reached the test times out.
41
41
assert.ok(owners.has(fixturePaths['test.js']));
42
42
assert.ok(owners.has(fixturePaths['test-2.js']));
43
43
controller.abort();
44
+
done();
44
45
});
45
46
watcher.filterFile(fixturePaths['test.js']);
46
47
watcher.filterFile(fixturePaths['test-2.js']);
@@ -49,6 +50,20 @@ describe('watch file with shared dependency', () => {
49
50
watcher.unfilterFilesOwnedBy([fixturePaths['test.js']]);
50
51
watcher.filterFile(fixturePaths['test.js']);
51
52
watcher.filterFile(fixturePaths['dependency.js'], fixturePaths['test.js']);
52
-
writeFileSync(fixturePaths['dependency.js'], 'module.exports = { modified: true };');
53
+
54
+
if (common.isMacOS) {
55
+
// Do the write with a delay to ensure that the OS is ready to notify us.
56
+
setTimeout(() => {
57
+
writeFileSync(
58
+
fixturePaths['dependency.js'],
59
+
'module.exports = { modified: true };'
60
+
);
61
+
}, common.platformTimeout(200));
62
+
} else {
63
+
writeFileSync(
64
+
fixturePaths['dependency.js'],
65
+
'module.exports = { modified: true };'
66
+
);
67
+
}
53
68
});
54
69
});
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4