예제 #1
0
        public override TestResult Run(EventListener listener, ITestFilter filter)
        {
            listener.TestStarted(this.TestName);

            Fixture = Reflect.Construct(m_FixtureType);
            RunFixtureSetUp();
            TestResult testResult;

            try
            {
                var testRunner       = new DefaultConcordionRunner();
                var concordionResult = testRunner.Run(Fixture);
                testResult = NUnitTestResult(concordionResult, "");
            }
            catch (Exception exception)
            {
                testResult = new TestResult(this);
                testResult.Error(exception);
            }
            RunFixtureTearDown();

            listener.TestFinished(testResult);

            return(testResult);
        }
예제 #2
0
        public void WithTargetDirectory(string baseOutputDirectory)
        {
            if (m_InTestRun)
            {
                return;
            }

            m_InTestRun = true;

            try
            {
                var reportFilePath = baseOutputDirectory +
                                     "\\Concordion\\Spec\\Concordion\\Configuration\\BaseOutputDirectory.html";
                if (File.Exists(reportFilePath))
                {
                    File.Delete(reportFilePath);
                }
                var specificationConfig = new SpecificationConfig().Load(this.GetType().Assembly);
                specificationConfig.BaseOutputDirectory = baseOutputDirectory;
                var testRunner = new DefaultConcordionRunner();
                var testResult = testRunner.Run(this, specificationConfig);
            }
            catch (Exception e)
            {
                Console.WriteLine("Exception during test execution: {0}", e);
            }
            finally
            {
                m_InTestRun = false;
            }
        }
        public bool DirectoryBasedExecuted(string baseInputDirectory)
        {
            if (m_InTestRun)
            {
                return(true);
            }

            m_InTestRun = true;

            //work around for problem of NUnit GUI runner
            baseInputDirectory = baseInputDirectory +
                                 Path.DirectorySeparatorChar +
                                 ".." +
                                 Path.DirectorySeparatorChar +
                                 this.GetType().Assembly.GetName().Name;

            var specificationConfig = new SpecificationConfig().Load(this.GetType().Assembly);

            specificationConfig.BaseInputDirectory = baseInputDirectory;
            var testRunner = new DefaultConcordionRunner();
            var testResult = testRunner.Run(this, specificationConfig);

            m_InTestRun = false;

            return(testResult.getFailureCount() == 0 && !testResult.hasExceptions());
        }
        public void ConcordionTest()
        {
            var concordionResult = new DefaultConcordionRunner().Run(this);

            if (concordionResult.hasExceptions())
            {
                throw new Exception("Exception in Concordion test: please see Concordion test reports");
            }
            else if (concordionResult.getFailureCount() > 0)
            {
                Assert.Fail("Concordion Test Failures: " + concordionResult.getFailureCount(),
                            "for stack trace, please see Concordion test reports");
            }
            else
            {
                Assert.Pass();
            }
        }
        public bool EmbeddedExecuted()
        {
            if (m_InTestRun)
            {
                return(true);
            }

            m_InTestRun = true;

            var specificationConfig = new SpecificationConfig().Load(this.GetType().Assembly);

            specificationConfig.BaseInputDirectory = null;
            var fixtureRunner = new DefaultConcordionRunner();
            var testResult    = fixtureRunner.Run(this, specificationConfig);

            m_InTestRun = false;

            bool hasFailures   = testResult.getFailureCount() == 0;
            bool hasExceptions = !testResult.hasExceptions();

            return(hasFailures && hasExceptions);
        }