public RunnerResult Execute(object callingFixture, Resource resource, string href)
        {
            var runnerFixture = GetFixture(resource, href, callingFixture);

            var concordion = new ConcordionBuilder()
                                        .WithSource(Source)
                                        .WithTarget(Target)
                                        .Build();

            var results = concordion.Process(runnerFixture);

            Result result;
            if (results.HasFailures)
            {
                result = Result.Failure;
            }
            else if (results.HasExceptions)
            {
                result = Result.Exception;
            }
            else
            {
                result = Result.Success;
            }

		    return new RunnerResult(result);
        }
示例#2
0
        public RunnerResult Execute(object callingFixture, Resource resource, string href)
        {
            var runnerFixture = GetFixture(resource, href, callingFixture);

            var concordion = new ConcordionBuilder()
                             .WithSource(Source)
                             .WithTarget(Target)
                             .Build();

            var results = concordion.Process(runnerFixture);

            Result result;

            if (results.HasFailures)
            {
                result = Result.Failure;
            }
            else if (results.HasExceptions)
            {
                result = Result.Exception;
            }
            else
            {
                result = Result.Success;
            }

            return(new RunnerResult(result));
        }
示例#3
0
        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 bool RunTestFixture(ITestCommand testCommand, ConcordionTest concordionTest, ITestStep parentTestStep)
        {
            ITestContext testContext = testCommand.StartPrimaryChildStep(parentTestStep);

            // The magic happens here!
            var concordion = new ConcordionBuilder()
                             .WithSource(concordionTest.Source)
                             .WithTarget(concordionTest.Target)
                             .WithSpecificationListener(new GallioResultRenderer())
                             .Build();

            var  summary = concordion.Process(concordionTest.Resource, concordionTest.Fixture);
            bool passed  = !(summary.HasFailures || summary.HasExceptions);

            testContext.AddAssertCount((int)summary.SuccessCount + (int)summary.FailureCount);
            testContext.FinishStep(passed ? TestOutcome.Passed : TestOutcome.Failed, null);
            return(passed);
        }
示例#5
0
        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);
            }
        }