diff --git a/lib/ava-files.js b/lib/ava-files.js index 243379d..dd9a2ee 100644 --- a/lib/ava-files.js +++ b/lib/ava-files.js @@ -13,11 +13,11 @@ function handlePaths(files, excludePatterns, globOptions) { // Convert Promise to Bluebird files = Promise.resolve(globby(files.concat(excludePatterns), globOptions)); - const searchedParents = Object.create(null); - const foundFiles = Object.create(null); + const searchedParents = new Set(); + const foundFiles = new Set(); function alreadySearchingParent(dir) { - if (searchedParents[dir]) { + if (searchedParents.has(dir)) { return true; } @@ -40,7 +40,7 @@ function handlePaths(files, excludePatterns, globOptions) { return null; } - searchedParents[file] = true; + searchedParents.add(file); let pattern = path.join(file, '**', '*.js'); @@ -67,8 +67,8 @@ function handlePaths(files, excludePatterns, globOptions) { }) .map(file => path.resolve(file)) .filter(file => { - const alreadyFound = foundFiles[file]; - foundFiles[file] = true; + const alreadyFound = foundFiles.has(file); + foundFiles.add(file); return !alreadyFound; }); } diff --git a/lib/process-adapter.js b/lib/process-adapter.js index a319d74..2712b0c 100644 --- a/lib/process-adapter.js +++ b/lib/process-adapter.js @@ -62,7 +62,7 @@ if (debug.enabled) { require('time-require'); // eslint-disable-line import/no-unassigned-import } -const sourceMapCache = Object.create(null); +const sourceMapCache = new Map(); const cacheDir = opts.cacheDir; exports.installSourceMapSupport = () => { @@ -70,10 +70,10 @@ exports.installSourceMapSupport = () => { environment: 'node', handleUncaughtExceptions: false, retrieveSourceMap(source) { - if (sourceMapCache[source]) { + if (sourceMapCache.has(source)) { return { url: source, - map: fs.readFileSync(sourceMapCache[source], 'utf8') + map: fs.readFileSync(sourceMapCache.get(source), 'utf8') }; } } @@ -85,7 +85,7 @@ exports.installPrecompilerHook = () => { const precompiled = opts.precompiled[filename]; if (precompiled) { - sourceMapCache[filename] = path.join(cacheDir, precompiled + '.js.map'); + sourceMapCache.set(filename, path.join(cacheDir, precompiled + '.js.map')); return fs.readFileSync(path.join(cacheDir, precompiled + '.js'), 'utf8'); }