|
|
|
@ -26,16 +26,16 @@ function compileFileOrFiles (filename, isDirectory, cb) { |
|
|
|
|
filepath = (isDirectory ? filename : path.dirname(filename)) |
|
|
|
|
|
|
|
|
|
fs.readdirSync(filepath).forEach(file => { |
|
|
|
|
// only process .sol files named *_test.sol
|
|
|
|
|
if (/_test.sol$/.test(file)) { |
|
|
|
|
// only process .sol files
|
|
|
|
|
if (file.split('.').pop() === 'sol') { |
|
|
|
|
let c = fs.readFileSync(path.join(filepath, file)).toString() |
|
|
|
|
const s = /^(import)\s['"](remix_tests.sol|tests.sol)['"];/gm |
|
|
|
|
if (!s.test(c)) { |
|
|
|
|
if (file.indexOf('_test.sol') > 0 && c.regexIndexOf(s) < 0) { |
|
|
|
|
c = c.replace(/(pragma solidity \^?\d+\.\d+\.\d+;)/, '$1\nimport \'remix_tests.sol\';') |
|
|
|
|
} |
|
|
|
|
sources[file] = { content: c } |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
async.waterfall([ |
|
|
|
|
function loadCompiler (next) { |
|
|
|
|