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,12 +7,10 @@ describe('null error', function() { ...@@ -7,12 +7,10 @@ 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) {
db.run("CREATE TABLE febp_data (leacode TEXT, leaname TEXT, state TEXT, postcode TEXT, fips TEXT, titleistim TEXT, ideastim TEXT, ideapool TEXT, ideapoolname TEXT, localebasis TEXT, localetype2 TEXT, version TEXT, leacount_2006 TEXT, ppexpend_2005 TEXT, ppexpend_2006 TEXT, ppexpend_2007 TEXT, ppexpend_2008 TEXT, ppexpendrank_2006 TEXT, ppexpendrank_2007 TEXT, ppexpendrank_2008 TEXT, rankppexpend_2005 TEXT, opbud_2004 TEXT, opbud_2006 TEXT, opbud_2007 TEXT, opbud_2008 TEXT, titlei_2004 TEXT, titlei_2006 TEXT, titlei_2007 TEXT, titlei_2008 TEXT, titlei_2009 TEXT, titlei_2010 TEXT, idea_2004 TEXT, idea_2005 TEXT, idea_2006 TEXT, idea_2007 TEXT, idea_2008 TEXT, idea_2009 TEXT, ideaest_2010 TEXT, impact_2007 TEXT, impact_2008 TEXT, impact_2009 TEXT, impact_2010 TEXT, fedrev_2006 TEXT, fedrev_2007 TEXT, fedrev_2008 TEXT, schonut_2006 TEXT, schonut_2007 TEXT, schomeal_2006 TEXT, schomeal_2007 TEXT, schoco_2006 TEXT, schocom_2007 TEXT, medicaid_2006 TEXT, medicaid_2007 TEXT, medicaid_2008 TEXT, cenpov_2004 TEXT, cenpov_2007 TEXT, cenpov_2008 TEXT, rankcenpov_2004 TEXT, rankcenpov_2007 TEXT, rankcenpov_2008 TEXT, enroll_2006 TEXT, enroll_2007 TEXT, enroll_2008 TEXT, white_2006 TEXT, white_2007 TEXT, white_2008 TEXT, afam_2006 TEXT, afam_2007 TEXT, afam_2008 TEXT, amin_2006 TEXT, amin_2007 TEXT, amin_2008 TEXT, asian_2006 TEXT, asian_2007 TEXT, asian_2008 TEXT, hisp_2006 TEXT, hisp_2007 TEXT, hisp_2008 TEXT, frpl_2006 TEXT, frpl_2007 TEXT, frpl_2008 TEXT, ell_2006 TEXT, ell_2007 TEXT, ell_2008 TEXT, sped_2006 TEXT, sped_2007 TEXT, sped_2008 TEXT, state4read_2005 TEXT, state4read_2006 TEXT, state4read_2007 TEXT, state4read_2008 TEXT, state4read_2009 TEXT, state4math_2005 TEXT, state4math_2006 TEXT, state4math_2007 TEXT, state4math_2008 TEXT, state4math_2009 TEXT, minor_2007 TEXT, minor_2008 TEXT, state8math_2006 TEXT, state8math_2007 TEXT, state8math_2008 TEXT, state8math_2009 TEXT, state8read_2006 TEXT, state8read_2007 TEXT, state8read_2008 TEXT, state8read_2009 TEXT, statehsmath_2006 TEXT, statehsmath_2007 TEXT, statehsmath_2008 TEXT, statehsmath_2009 TEXT, statehsread_2006 TEXT, statehsread_2007 TEXT, statehsread_2008 TEXT, statehsread_2009 TEXT)", done); db.run("CREATE TABLE febp_data (leacode TEXT, leaname TEXT, state TEXT, postcode TEXT, fips TEXT, titleistim TEXT, ideastim TEXT, ideapool TEXT, ideapoolname TEXT, localebasis TEXT, localetype2 TEXT, version TEXT, leacount_2006 TEXT, ppexpend_2005 TEXT, ppexpend_2006 TEXT, ppexpend_2007 TEXT, ppexpend_2008 TEXT, ppexpendrank_2006 TEXT, ppexpendrank_2007 TEXT, ppexpendrank_2008 TEXT, rankppexpend_2005 TEXT, opbud_2004 TEXT, opbud_2006 TEXT, opbud_2007 TEXT, opbud_2008 TEXT, titlei_2004 TEXT, titlei_2006 TEXT, titlei_2007 TEXT, titlei_2008 TEXT, titlei_2009 TEXT, titlei_2010 TEXT, idea_2004 TEXT, idea_2005 TEXT, idea_2006 TEXT, idea_2007 TEXT, idea_2008 TEXT, idea_2009 TEXT, ideaest_2010 TEXT, impact_2007 TEXT, impact_2008 TEXT, impact_2009 TEXT, impact_2010 TEXT, fedrev_2006 TEXT, fedrev_2007 TEXT, fedrev_2008 TEXT, schonut_2006 TEXT, schonut_2007 TEXT, schomeal_2006 TEXT, schomeal_2007 TEXT, schoco_2006 TEXT, schocom_2007 TEXT, medicaid_2006 TEXT, medicaid_2007 TEXT, medicaid_2008 TEXT, cenpov_2004 TEXT, cenpov_2007 TEXT, cenpov_2008 TEXT, rankcenpov_2004 TEXT, rankcenpov_2007 TEXT, rankcenpov_2008 TEXT, enroll_2006 TEXT, enroll_2007 TEXT, enroll_2008 TEXT, white_2006 TEXT, white_2007 TEXT, white_2008 TEXT, afam_2006 TEXT, afam_2007 TEXT, afam_2008 TEXT, amin_2006 TEXT, amin_2007 TEXT, amin_2008 TEXT, asian_2006 TEXT, asian_2007 TEXT, asian_2008 TEXT, hisp_2006 TEXT, hisp_2007 TEXT, hisp_2008 TEXT, frpl_2006 TEXT, frpl_2007 TEXT, frpl_2008 TEXT, ell_2006 TEXT, ell_2007 TEXT, ell_2008 TEXT, sped_2006 TEXT, sped_2007 TEXT, sped_2008 TEXT, state4read_2005 TEXT, state4read_2006 TEXT, state4read_2007 TEXT, state4read_2008 TEXT, state4read_2009 TEXT, state4math_2005 TEXT, state4math_2006 TEXT, state4math_2007 TEXT, state4math_2008 TEXT, state4math_2009 TEXT, minor_2007 TEXT, minor_2008 TEXT, state8math_2006 TEXT, state8math_2007 TEXT, state8math_2008 TEXT, state8math_2009 TEXT, state8read_2006 TEXT, state8read_2007 TEXT, state8read_2008 TEXT, state8read_2009 TEXT, statehsmath_2006 TEXT, statehsmath_2007 TEXT, statehsmath_2008 TEXT, statehsmath_2009 TEXT, statehsread_2006 TEXT, statehsread_2007 TEXT, statehsread_2008 TEXT, statehsread_2009 TEXT)", 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,10 +6,9 @@ describe('parallel', function() { ...@@ -6,10 +6,9 @@ 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 = [];
for (var i = 0; i < 128; i++) { for (var i = 0; i < 128; i++) {
......
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