public ITestCaseFilter GetTestCaseFilter() { ITestCaseFilter filter = null; if (this.TestCaseFilters.Count != 0) return new ScopeTestCaseFilter(this.TestCaseFilters); if (this.RunFailures.Count != 0) { foreach (string runFailureReport in this.RunFailures) { if (!File.Exists(runFailureReport)) throw new ArgumentException("Could not find failure file " + runFailureReport); XmlTestBatch testBatch = UnitSerializer.Deserialize(runFailureReport); if (testBatch != null) { FailureFilter failureFilter = new FailureFilter(testBatch); if (filter == null) filter = failureFilter; else filter = new AndTestCaseFilter(filter, failureFilter); } } } if (filter==null) filter = new AnyTestCaseFilter(); return filter; }
public IFixtureFilter GetFixtureFilter() { IFixtureFilter filter=null; if (this.FixtureFilters.Count != 0) filter = new ScopeFixtureFilter(this.FixtureFilters); if (this.Categories.Count != 0) { if (filter == null) filter = new CategoryFixtureFilter(this.Categories); else filter = new AndFixtureFilter( filter, new CategoryFixtureFilter(this.Categories) ); } if (this.RunFailures.Count != 0) { foreach (string runFailureReport in this.RunFailures) { if (!File.Exists(runFailureReport)) throw new ArgumentException("Could not find failure file "+ runFailureReport); XmlTestBatch testBatch = UnitSerializer.Deserialize(runFailureReport); if (testBatch != null) { FailureFilter failureFilter = new FailureFilter(testBatch); if (filter == null) filter = failureFilter; else filter = new AndFixtureFilter(filter, failureFilter); } } } if (this.UseCurrentFixtures) { if (filter == null) filter = new CurrentFixtureFilter(); else filter = new AndFixtureFilter(filter, new CurrentFixtureFilter()); } if (filter == null) filter = new AnyFixtureFilter(); return filter; }