var watch = require('../main') , assert = require('assert') , path = require('path') , fs = require('fs') , target = path.join(__dirname, "d/t") ; function clearFile() { fs.writeFileSync(target, '') } clearFile() // test if changed event is fired correctly watch.createMonitor(__dirname, { interval: 150 }, function (monitor) { monitor.once('changed', function (f) { assert.equal(f, target); clearFile(); process.exit(0) }) fs.writeFile(target, 'Test Write\n', function (err) { if (err) throw err; setTimeout(function () { // should have got the other assert done by now assert.ok(false); }, 300); }) });