Skip to content

Commit

Permalink
closes #21
Browse files Browse the repository at this point in the history
  • Loading branch information
jonschlinkert committed Oct 31, 2019
1 parent fa58f45 commit 766bcb0
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 5 deletions.
2 changes: 1 addition & 1 deletion lib/parse.js
Original file line number Diff line number Diff line change
Expand Up @@ -791,7 +791,7 @@ const parse = (input, options) => {
prior.output = '(?:' + prior.output;

prev.type = 'globstar';
prev.output = globstar(opts) + '|$)';
prev.output = globstar(opts) + (opts.strictSlashes ? ')' : '|$)');
prev.value += value;

state.output += prior.output + prev.output;
Expand Down
4 changes: 2 additions & 2 deletions test/options.format.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,13 @@ describe('options.format', () => {
assert(isMatch('.\\foo\\bar.js', '**/foo/**', { ...opts, windows: false }));
assert(isMatch('.\\foo\\bar.js', './**/foo/**', opts));
equal(match(fixtures, '*', opts), ['a', 'b']);
equal(match(fixtures, '**/a/**', opts), ['a', 'a/a', 'a/c', 'a/b', 'a/x', 'a/a/a', 'a/a/b', 'a/a/a/a', 'a/a/a/a/a']);
equal(match(fixtures, '**/a/**', opts), ['a/a', 'a/c', 'a/b', 'a/x', 'a/a/a', 'a/a/b', 'a/a/a/a', 'a/a/a/a/a']);
equal(match(fixtures, '*/*', opts), ['a/a', 'a/b', 'a/c', 'a/x', 'x/y', 'z/z']);
equal(match(fixtures, '*/*/*', opts), ['a/a/a', 'a/a/b']);
equal(match(fixtures, '*/*/*/*', opts), ['a/a/a/a']);
equal(match(fixtures, '*/*/*/*/*', opts), ['a/a/a/a/a']);
equal(match(fixtures, '*', opts), ['a', 'b']);
equal(match(fixtures, '**/a/**', opts), ['a', 'a/a', 'a/c', 'a/b', 'a/x', 'a/a/a', 'a/a/b', 'a/a/a/a', 'a/a/a/a/a']);
equal(match(fixtures, '**/a/**', opts), ['a/a', 'a/c', 'a/b', 'a/x', 'a/a/a', 'a/a/b', 'a/a/a/a', 'a/a/a/a/a']);
equal(match(fixtures, 'a/*/a', opts), ['a/a/a']);
equal(match(fixtures, 'a/*', opts), ['a/a', 'a/b', 'a/c', 'a/x']);
equal(match(fixtures, 'a/*/*', opts), ['a/a/a', 'a/a/b']);
Expand Down
5 changes: 3 additions & 2 deletions test/options.ignore.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ describe('options.ignore', () => {
const opts = { ignore: ['a/**'], strictSlashes: true };
const dotOpts = { ...opts, dot: true };

assert.deepEqual(match(globs, '*', opts), ['b']);
assert.deepEqual(match(globs, '*', opts), ['a', 'b']);
assert.deepEqual(match(globs, '*', { ...opts, strictSlashes: false }), ['b']);
assert.deepEqual(match(globs, '*', { ignore: '**/a' }), ['b']);
assert.deepEqual(match(globs, '*/*', opts), ['x/y', 'z/z']);
assert.deepEqual(match(globs, '*/*/*', opts), ['b/b/b', 'b/b/c', 'c/c/c', 'e/f/g', 'h/i/a', 'x/x/x', 'z/z/z']);
Expand All @@ -31,7 +32,7 @@ describe('options.ignore', () => {
assert.deepEqual(match(globs, '**/*/[b-z]', opts), ['b/b/b', 'b/b/c', 'c/c/c', 'e/f/g', 'x/x/x', 'x/y', 'z/z', 'z/z/z']);

assert.deepEqual(match(globs, '*', { ignore: '**/a', dot: true }), ['.a', 'b']);
assert.deepEqual(match(globs, '*', dotOpts), ['.a', 'b']);
assert.deepEqual(match(globs, '*', dotOpts), ['.a', 'a', 'b']);
assert.deepEqual(match(globs, '*/*', dotOpts), ['.a/a', 'x/y', 'z/z'].sort());
assert.deepEqual(match(globs, '*/*/*', dotOpts), ['.a/a/a', 'b/b/b', 'b/b/c', 'c/c/c', 'e/f/g', 'h/i/a', 'x/x/x', 'z/z/z'].sort());
assert.deepEqual(match(globs, '*/*/*/*', dotOpts), ['.a/a/a/a']);
Expand Down

0 comments on commit 766bcb0

Please sign in to comment.