Exemple #1
0
        void CollectResults(IEnumerable<IConeTest> tests, IConeFixture fixture, ISuiteLogger suiteLog)
        {
            var testExecutor = GetTestExecutor(fixture);
            var beforeFailure = new Lazy<Exception>(() => Initiaize(testExecutor));
            tests.ForEach(test =>
                suiteLog.WithTestLog(test, log => {
                    if(ShouldSkipTest(test))
                        log.Skipped();
                    else {
                        ITestResult result = new TestResult(test, log);
                        if(beforeFailure.Value != null)
                            result.BeforeFailure(beforeFailure.Value);
                        else
                            testExecutor.Run(test, result);
                    }
                }));

            try {
                testExecutor.Relase();
            } catch { }
        }