diff --git a/lib/commands/test.js b/lib/commands/test.js index f076636..001ac98 100644 --- a/lib/commands/test.js +++ b/lib/commands/test.js @@ -4,6 +4,7 @@ var command = { builder: {}, run: function (options, done) { var OS = require("os"); + var path = require('path'); var dir = require("node-dir"); var temp = require("temp"); var Config = require("truffle-config"); @@ -43,12 +44,31 @@ var command = { dir.files(config.test_directory, callback); }; + function getTestTempDir(cb) { + var tempDir = path.join(config.working_directory, '.tmp'); + var testDir = path.join(tempDir, 'test'); + + try { + if (!fs.existsSync(tempDir)) { + fs.mkdirSync(tempDir); + } + + if (!fs.existsSync(testDir)) { + fs.mkdirSync(testDir); + } + + cb(null, testDir); + } catch (err) { + cb(err); + } + } + getFiles(function(err, files) { files = files.filter(function(file) { return file.match(config.test_file_extension_regexp) != null; }); - temp.mkdir('test-', function(err, temporaryDirectory) { + getTestTempDir(function (err, temporaryDirectory) { if (err) return done(err); function cleanup() {