install-nix-action/node_modules/@cnakazawa/watch/test/test_watchTree.js
Domen Kožar 70742d22d9
v6
2019-11-19 17:50:30 +01:00

24 lines
697 B
JavaScript

var fs = require('fs')
, watch = require('../main')
, assert = require('assert')
;
//
// Demonstrate that the function of 'filter' is semantically inconsistent with
// usual convention, that returning true means 'keep this'.
//
function isDirOrQ(f, stat) { return stat.isDirectory() || f === 'Q'; }
watch.watchTree(__dirname, { filter: isDirOrQ }, function (f, curr, prev) {
if (typeof f == 'object' && prev === null && curr === null) {
Object.keys(f).forEach(function(name) {
var stat = f[name];
assert(isDirOrQ(name, stat));
});
// If the process never exits then `unwatchTree` failed to unwatch all
// the files.
watch.unwatchTree(__dirname);
}
});