public void SealDirectories() { var harness1 = new Harness(TestOutputDirectory); harness1.AddSealDir(harness1.SealDir(b, c, d)); harness1.EnumerateDirAndAssert(a, expectedPaths: new HashSet <string> { b }); harness1.EnumerateDirAndAssert(b, expectedPaths: new HashSet <string> { c, d }); harness1.EnumerateDirAndAssert(c, expectedPaths: s_emptySet); harness1.EnumerateDirAndAssert(k, expectedPaths: s_emptySet); var harness2 = new Harness(TestOutputDirectory); harness2.AddSealDir(harness2.SealDir(j, l)); harness2.EnumerateDirAndAssert(j, expectedPaths: new HashSet <string> { k }); var harness3 = new Harness(TestOutputDirectory); harness3.AddSealDir(harness3.SealDir(a, h)); harness3.EnumerateDirAndAssert(a, expectedPaths: new HashSet <string> { b }); harness3.EnumerateDirAndAssert(b, expectedPaths: new HashSet <string> { g }); harness3.EnumerateDirAndAssert(g, expectedPaths: new HashSet <string> { h }); harness3.EnumerateDirAndAssert(c, expectedPaths: s_emptySet); }