test('Find: exclude combination of paths', function (done: () => void) { this.timeout(testTimeout); if (platform.isWindows) { done(); return; } const filesIn = [ './examples/subfolder/subfile.txt', './examples/company.js', './index.html' ]; const filesOut = [ './examples/subfolder/anotherfolder/anotherfile.txt', './more/file.txt' ]; const walker = new FileWalker({ folderQueries: ROOT_FOLDER_QUERY, excludePattern: { '**/subfolder/anotherfolder': true, '**/something/else': true, '**/more': true, '**/andmore': true } }); const cmd1 = walker.spawnFindCmd(TEST_ROOT_FOLDER); walker.readStdout(cmd1, 'utf8', /*isRipgrep=*/false, (err1, stdout1) => { assert.equal(err1, null); for (const fileIn of filesIn) { assert.notStrictEqual(stdout1.split('\n').indexOf(fileIn), -1, stdout1); } for (const fileOut of filesOut) { assert.strictEqual(stdout1.split('\n').indexOf(fileOut), -1, stdout1); } done(); }); });