From 6d9e041e5309015f8e72418740b53bea13e99a02 Mon Sep 17 00:00:00 2001 From: Zolmeister Date: Wed, 15 Nov 2017 12:51:53 -0600 Subject: [PATCH] test: re-use static build directory for caching between test runs, fixes https://github.com/trufflesuite/truffle/issues/343 --- lib/commands/test.js | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) 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() {