mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
Closing file handles to fix test failures on windows
This commit is contained in:
parent
960d15491d
commit
fadd2167f5
@ -17,40 +17,48 @@
|
|||||||
var should = require("should");
|
var should = require("should");
|
||||||
var path = require('path');
|
var path = require('path');
|
||||||
var fs = require('fs-extra');
|
var fs = require('fs-extra');
|
||||||
|
var mkdirp = require('mkdirp');
|
||||||
|
|
||||||
var tailNode = require("../../../../nodes/core/storage/28-tail.js");
|
var tailNode = require("../../../../nodes/core/storage/28-tail.js");
|
||||||
var helper = require("../../helper.js");
|
var helper = require("../../helper.js");
|
||||||
|
|
||||||
describe('TailNode', function() {
|
describe('TailNode', function() {
|
||||||
|
|
||||||
var tempDir = path.join(__dirname, ".tmp/");
|
var tempDir = path.join(__dirname, ".tmp");
|
||||||
var fileToTail = path.join(tempDir, "tailMe.txt");
|
var fileToTail = path.join(tempDir, "tailMe.txt");
|
||||||
|
|
||||||
beforeEach(function(done) {
|
// function which writes to the file creating all missing directories
|
||||||
fs.exists(fileToTail, function(exists) {
|
function writeFile(path, contents) {
|
||||||
if(exists) {
|
mkdirp(tempDir, function(err) {
|
||||||
fs.unlinkSync(fileToTail);
|
if(err) {
|
||||||
}
|
return err;
|
||||||
});
|
}
|
||||||
fs.exists(tempDir, function(exists) {
|
try {
|
||||||
if(!exists) {
|
fs.writeFileSync(path, contents, 'utf8');
|
||||||
fs.mkdirSync(tempDir);
|
} catch (error) {
|
||||||
|
console.log("Unexpected error writing file: " +error.message);
|
||||||
|
return error;
|
||||||
}
|
}
|
||||||
fs.writeFileSync(fileToTail, "Tail message line1\nTail message line2\n");
|
|
||||||
helper.startServer(done);
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
beforeEach(function(done) {
|
||||||
|
writeFile(fileToTail, "Tail message line1\nTail message line2\n");
|
||||||
|
helper.startServer(done);
|
||||||
});
|
});
|
||||||
|
|
||||||
afterEach(function(done) {
|
afterEach(function(done) {
|
||||||
helper.unload();
|
helper.unload();
|
||||||
fs.exists(fileToTail, function(exists) {
|
fs.remove(tempDir, function(err) {
|
||||||
if(exists) {
|
if (err) {
|
||||||
fs.unlinkSync(fileToTail);
|
console.log("error occurred removing " + tempDir + ": " +err);
|
||||||
}
|
return err;
|
||||||
// have to call stop server otherwise tail node litters test output
|
}
|
||||||
// with warnings when tailed file gets deleted
|
fs.exists(tempDir, function(exists) {
|
||||||
fs.remove(tempDir, helper.stopServer(done));
|
exists.should.be.false;
|
||||||
});
|
helper.stopServer(done);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should be loaded', function(done) {
|
it('should be loaded', function(done) {
|
||||||
|
@ -62,6 +62,7 @@ module.exports = {
|
|||||||
unload: function() {
|
unload: function() {
|
||||||
// TODO: any other state to remove between tests?
|
// TODO: any other state to remove between tests?
|
||||||
redNodes.clearRegistry();
|
redNodes.clearRegistry();
|
||||||
|
flows.stopFlows();
|
||||||
},
|
},
|
||||||
|
|
||||||
getNode: function(id) {
|
getNode: function(id) {
|
||||||
|
Loading…
Reference in New Issue
Block a user