public override TestResult Run(EventListener listener, ITestFilter filter) { using (new DirectorySwapper(Path.GetDirectoryName(TestFixtureBuilder.GetAssemblyPath(FixtureType)))) { return(base.Run(listener, filter)); } }
public void Add(object fixture) { Test test = TestFixtureBuilder.BuildFrom(fixture); if (test != null) { Add(test); } }
public LegacySuite(Type fixtureType) : base(fixtureType) { PropertyInfo suiteProperty = GetSuiteProperty(fixtureType); if (suiteProperty == null) { throw new ArgumentException("Invalid argument to LegacySuite constructor", "fixtureType"); } this.fixtureSetUp = NUnitFramework.GetFixtureSetUpMethod(fixtureType); this.fixtureTearDown = NUnitFramework.GetFixtureTearDownMethod(fixtureType); MethodInfo method = suiteProperty.GetGetMethod(true); if (method.GetParameters().Length == 0) { Type returnType = method.ReturnType; if (returnType.FullName == "NUnit.Core.TestSuite") { TestSuite suite = (TestSuite)suiteProperty.GetValue(null, new Object[0]); foreach (Test test in suite.Tests) { this.Add(test); } } else if (typeof(IEnumerable).IsAssignableFrom(returnType)) { foreach (object obj in (IEnumerable)suiteProperty.GetValue(null, new object[0])) { Type type = obj as Type; if (type != null && TestFixtureBuilder.CanBuildFrom(type)) { this.Add(TestFixtureBuilder.BuildFrom(type)); } else { this.Add(obj); } } } else { this.RunState = RunState.NotRunnable; this.IgnoreReason = "Suite property must return either TestSuite or IEnumerable"; } } else { this.RunState = RunState.NotRunnable; this.IgnoreReason = "Suite property may not be indexed"; } }
public AssemblyReader(Assembly assembly) { this.assemblyPath = TestFixtureBuilder.GetAssemblyPath(assembly); CalcHeaderOffsets(); }