errorCollector.assertTrue(ps1.accept(Path.create("d/"))); // arg is parent to scope[2]
errorCollector.assertTrue(ps1.accept(Path.create("d/e/"))); // arg is parent to scope[2]
errorCollector.assertTrue(!ps1.accept(Path.create("d/g/"))); // unrelated to any preconfigured
// files
errorCollector.assertTrue(ps1.accept(Path.create("a/d"))); // "a/" is parent
errorCollector.assertTrue(ps1.accept(Path.create("a/d/f"))); // "a/" is still a parent
errorCollector.assertTrue(ps1.accept(Path.create("b/c"))); // ==
errorCollector.assertTrue(!ps1.accept(Path.create("b/d"))); // file, !=
//
// accept only specified files, folders and their direct children, allow navigate to them from above (FileIterator contract)
PathScope ps2 = new PathScope(true, false, true, scope);