nodejs-mozilla/test/parallel/test-fs-watch-stop-sync.js

22 lines
627 B
JavaScript

'use strict';
const common = require('../common');
// This test checks that the `stop` event is emitted asynchronously.
//
// If it isn't asynchronous, then the listener will be called during the
// execution of `watch.stop()`. That would be a bug.
//
// If it is asynchronous, then the listener will be removed before the event is
// emitted.
const fs = require('fs');
const listener = common.mustNotCall(
'listener should have been removed before the event was emitted'
);
const watch = fs.watchFile(__filename, common.mustNotCall());
watch.once('stop', listener);
watch.stop();
watch.removeListener('stop', listener);