Commit 128d5352 by Dane Springmeyer

move test/tmp directory creation to sync to avoid race to create directory which…

move test/tmp directory creation to sync to avoid race to create directory which will appear as'Error: done() called multiple times' - refs visionmedia/mocha#316
parent 7fe379eb
...@@ -3,8 +3,8 @@ var assert = require('assert'); ...@@ -3,8 +3,8 @@ var assert = require('assert');
var helper = require('./support/helper'); var helper = require('./support/helper');
describe('cache', function() { describe('cache', function() {
before(function(done) { before(function() {
helper.ensureExists('test/tmp',done); helper.ensureExists('test/tmp');
}); });
it('should cache Database objects while opening', function(done) { it('should cache Database objects while opening', function(done) {
......
...@@ -7,11 +7,9 @@ describe('null error', function() { ...@@ -7,11 +7,9 @@ describe('null error', function() {
var db; var db;
before(function(done) { before(function(done) {
helper.ensureExists('test/tmp',function(err) { helper.ensureExists('test/tmp');
if (err) throw err; helper.deleteFile(filename);
helper.deleteFile(filename); db = new sqlite3.Database(filename, done);
db = new sqlite3.Database(filename, done);
});
}); });
it('should create a table', function(done) { it('should create a table', function(done) {
......
...@@ -4,8 +4,8 @@ var fs = require('fs'); ...@@ -4,8 +4,8 @@ var fs = require('fs');
var helper = require('./support/helper'); var helper = require('./support/helper');
describe('open/close', function() { describe('open/close', function() {
before(function(done) { before(function() {
helper.ensureExists('test/tmp',done); helper.ensureExists('test/tmp');
}); });
describe('open and close non-existant database', function() { describe('open and close non-existant database', function() {
......
...@@ -6,9 +6,8 @@ describe('parallel', function() { ...@@ -6,9 +6,8 @@ describe('parallel', function() {
var db; var db;
before(function(done) { before(function(done) {
helper.deleteFile('test/tmp/test_parallel_inserts.db'); helper.deleteFile('test/tmp/test_parallel_inserts.db');
helper.ensureExists('test/tmp',function(err){ helper.ensureExists('test/tmp');
db = new sqlite3.Database('test/tmp/test_parallel_inserts.db', done); db = new sqlite3.Database('test/tmp/test_parallel_inserts.db', done);
});
}); });
var columns = []; var columns = [];
......
var assert = require('assert'); var assert = require('assert');
var fs = require('fs'); var fs = require('fs');
var pathExists = require('fs').exists || require('path').exists; var pathExists = require('fs').existsSync || require('path').existsSync;
exports.deleteFile = function(name) { exports.deleteFile = function(name) {
try { try {
...@@ -13,14 +13,9 @@ exports.deleteFile = function(name) { ...@@ -13,14 +13,9 @@ exports.deleteFile = function(name) {
}; };
exports.ensureExists = function(name,cb) { exports.ensureExists = function(name,cb) {
pathExists(name,function(exists) { if (!pathExists(name)) {
if (!exists) { fs.mkdirSync(name);
fs.mkdir(name,function(err) { };
return cb(err);
});
}
return cb(null);
});
} }
assert.fileDoesNotExist = function(name) { assert.fileDoesNotExist = function(name) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment