From 96761c79ca91d660a83c5ada013aa78d475b69cf Mon Sep 17 00:00:00 2001 From: Brad Dougherty Date: Sat, 27 Jan 2018 15:33:58 -0500 Subject: [PATCH] Expand directories in ignore option (#62) --- index.js | 4 ++++ test.js | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/index.js b/index.js index a6b63f0..a645e0e 100644 --- a/index.js +++ b/index.js @@ -32,6 +32,10 @@ const generateGlobTasks = (patterns, taskOpts) => { nodir: true }, taskOpts); + if (taskOpts.expandDirectories) { + taskOpts.ignore = dirGlob.sync(taskOpts.ignore); + } + patterns.forEach((pattern, i) => { if (isNegative(pattern)) { return; diff --git a/test.js b/test.js index 1f449cd..da566ab 100644 --- a/test.js +++ b/test.js @@ -109,6 +109,17 @@ test('expandDirectories option', t => { }), ['tmp/a.tmp']); }); +test('expandDirectories and ignores option', t => { + t.deepEqual(m.sync('tmp', { + ignore: ['tmp'] + }), []); + + t.deepEqual(m.sync('tmp/**', { + expandDirectories: false, + ignore: ['tmp'] + }), ['tmp/a.tmp', 'tmp/b.tmp', 'tmp/c.tmp', 'tmp/d.tmp', 'tmp/e.tmp']); +}); + test('expandDirectories:true and nodir:true option', t => { t.deepEqual(m.sync('tmp', {nodir: true}), ['tmp/a.tmp', 'tmp/b.tmp', 'tmp/c.tmp', 'tmp/d.tmp', 'tmp/e.tmp']); t.deepEqual(m.sync('tmp', {nodir: false}), ['tmp', 'tmp/a.tmp', 'tmp/b.tmp', 'tmp/c.tmp', 'tmp/d.tmp', 'tmp/e.tmp']);