public override TestResult Run(EventListener listener, ITestFilter filter) { listener.TestStarted(TestName); var source = new EmbeddedResourceSource(m_FixtureType.Assembly); var target = new FileTarget(new SpecificationConfig().Load(m_FixtureType).BaseOutputDirectory); var concordion = new ConcordionBuilder().WithSource(source).WithTarget(target).Build(); Fixture = Reflect.Construct(m_FixtureType); var concordionResult = concordion.Process(Fixture); var testResult = NUnitTestResult(concordionResult); listener.TestFinished(testResult); return testResult; }
private static TestResult RunTestFixture(ITestCommand testCommand, ConcordionTest concordionTest, TestStep parentTestStep) { ITestContext testContext = testCommand.StartPrimaryChildStep(parentTestStep); // The magic happens here! var concordion = new ConcordionBuilder() .WithSource(concordionTest.Source) .WithTarget(concordionTest.Target) .WithSpecificationListener(new GallioResultRenderer()) .Build(); concordionTest.ProcessGroupStart(); ConstructorInfo constructor = concordionTest.FixtureType.GetConstructor(Type.EmptyTypes); var fixture=constructor.Invoke(new object[]{}); var summary = concordion.Process(concordionTest.Resource, fixture); bool passed = !(summary.HasFailures || summary.HasExceptions); concordionTest.ProcessGroupEnd(); testContext.AddAssertCount((int)summary.SuccessCount + (int)summary.FailureCount); return testContext.FinishStep(passed ? TestOutcome.Passed : TestOutcome.Failed, null); }
public ProcessingResult Process(Resource resource) { var eventRecorder = new EventRecorder(); var stubTarget = new StubTarget(); var concordion = new ConcordionBuilder() .WithAssertEqualsListener(eventRecorder) .WithExceptionListener(eventRecorder) .WithSource(Source) .WithEvaluatorFactory(EvaluatorFactory) .WithTarget(stubTarget) .Build(); try { IResultSummary resultSummary = concordion.Process(resource, Fixture); string xml = stubTarget.GetWrittenString(resource); return new ProcessingResult(resultSummary, eventRecorder, xml); } catch (Exception e) { throw new Exception("Test rig failed to process specification", e); } }