From 4e22ee135e2df7f9b8dc1023f37ab2dfdb9d821d Mon Sep 17 00:00:00 2001 From: "Kent C. Dodds" Date: Wed, 25 May 2016 14:29:16 -0600 Subject: [PATCH] fix(cli): Remove default files from CLI The default files should be in one place (`ava-files.js`). Right now the defaults provided in `ava-files.js` aren't being used because the CLI pre-populates them. Closes #875 --- cli.js | 7 ----- test/ava-files.js | 26 +++++++++++++++++++ .../sub/directory/__tests__/foo.js | 1 + .../sub/directory/bar.test.js | 1 + .../ava-files/default-patterns/test-foo.js | 1 + .../ava-files/default-patterns/test.js | 1 + .../ava-files/default-patterns/test/baz.js | 1 + 7 files changed, 31 insertions(+), 7 deletions(-) create mode 100644 test/fixture/ava-files/default-patterns/sub/directory/__tests__/foo.js create mode 100644 test/fixture/ava-files/default-patterns/sub/directory/bar.test.js create mode 100644 test/fixture/ava-files/default-patterns/test-foo.js create mode 100644 test/fixture/ava-files/default-patterns/test.js create mode 100644 test/fixture/ava-files/default-patterns/test/baz.js diff --git a/cli.js b/cli.js index ee57608bd..d4b313c21 100755 --- a/cli.js +++ b/cli.js @@ -165,13 +165,6 @@ api.on('test-run', function (runStatus) { }); var files = cli.input.length ? cli.input : arrify(conf.files); -if (files.length === 0) { - files = [ - 'test.js', - 'test-*.js', - 'test' - ]; -} if (cli.flags.watch) { try { diff --git a/test/ava-files.js b/test/ava-files.js index d4bdbfa3c..0cedc4d1b 100644 --- a/test/ava-files.js +++ b/test/ava-files.js @@ -104,3 +104,29 @@ test('findFiles - does not return duplicates of the same file', function (t) { t.end(); }); }); + +test('findFiles - finds the correct files by default', function (t) { + var avaFiles = new AvaFiles(['**/ava-files/default-patterns/**']); + var filesToFind = [ + 'sub/directory/__tests__/foo.js', + 'sub/directory/bar.test.js', + 'test-foo.js', + 'test.js', + 'test/baz.js' + ]; + + avaFiles.findTestFiles().then(function (files) { + var allFilesFound = filesToFind.every(function (fileToFind) { + return files.some(function (file) { + return endsWith(file, fileToFind); + }); + }); + t.true(allFilesFound); + t.is(files.length, 5); + t.end(); + }); +}); + +function endsWith(str, suffix) { + return str.indexOf(suffix, str.length - suffix.length) !== -1; +} diff --git a/test/fixture/ava-files/default-patterns/sub/directory/__tests__/foo.js b/test/fixture/ava-files/default-patterns/sub/directory/__tests__/foo.js new file mode 100644 index 000000000..8b1a39374 --- /dev/null +++ b/test/fixture/ava-files/default-patterns/sub/directory/__tests__/foo.js @@ -0,0 +1 @@ +// empty diff --git a/test/fixture/ava-files/default-patterns/sub/directory/bar.test.js b/test/fixture/ava-files/default-patterns/sub/directory/bar.test.js new file mode 100644 index 000000000..8b1a39374 --- /dev/null +++ b/test/fixture/ava-files/default-patterns/sub/directory/bar.test.js @@ -0,0 +1 @@ +// empty diff --git a/test/fixture/ava-files/default-patterns/test-foo.js b/test/fixture/ava-files/default-patterns/test-foo.js new file mode 100644 index 000000000..8b1a39374 --- /dev/null +++ b/test/fixture/ava-files/default-patterns/test-foo.js @@ -0,0 +1 @@ +// empty diff --git a/test/fixture/ava-files/default-patterns/test.js b/test/fixture/ava-files/default-patterns/test.js new file mode 100644 index 000000000..8b1a39374 --- /dev/null +++ b/test/fixture/ava-files/default-patterns/test.js @@ -0,0 +1 @@ +// empty diff --git a/test/fixture/ava-files/default-patterns/test/baz.js b/test/fixture/ava-files/default-patterns/test/baz.js new file mode 100644 index 000000000..8b1a39374 --- /dev/null +++ b/test/fixture/ava-files/default-patterns/test/baz.js @@ -0,0 +1 @@ +// empty