Beispiel #1
0
        protected virtual void DoOneTimeTearDown(TestResult suiteResult)
        {
            if (this.Fixture != null)
            {
                try
                {
                    if (this.fixtureTearDown != null)
                    {
                        Reflect.InvokeMethod(fixtureTearDown, Fixture);
                    }

                    IDisposable disposable = Fixture as IDisposable;
                    if (disposable != null)
                    {
                        disposable.Dispose();
                    }
                }
                catch (Exception ex)
                {
                    // Error in TestFixtureTearDown or Dispose causes the
                    // suite to be marked as a failure, even if
                    // all the contained tests passed.
                    NUnitException nex = ex as NUnitException;
                    if (nex != null)
                    {
                        ex = nex.InnerException;
                    }


                    suiteResult.Failure(ex.Message, ex.StackTrace, FailureSite.TearDown);
                }

                this.Fixture = null;
            }
        }
Beispiel #2
0
        protected virtual void DoOneTimeAfterTestSuiteActions(TestResult suiteResult)
        {
            try
            {
                ExecuteActions(ActionPhase.After);
            }
            catch (Exception ex)
            {
                // Error in TestFixtureTearDown or Dispose causes the
                // suite to be marked as a failure, even if
                // all the contained tests passed.
                NUnitException nex = ex as NUnitException;
                if (nex != null)
                {
                    ex = nex.InnerException;
                }

                suiteResult.Failure(ex.Message, ex.StackTrace, FailureSite.TearDown);
            }
        }
Beispiel #3
0
        protected virtual void DoOneTimeTearDown(TestResult suiteResult)
        {
            if (this.FixtureType != null)
            {
                try
                {
                    if (this.fixtureTearDownMethods != null)
                    {
                        int index = fixtureTearDownMethods.Length;
                        while (--index >= 0)
                        {
                            MethodInfo fixtureTearDown = fixtureTearDownMethods[index];
                            Reflect.InvokeMethod(fixtureTearDown, fixtureTearDown.IsStatic ? null : Fixture);
                        }
                    }

                    IDisposable disposable = Fixture as IDisposable;
                    if (disposable != null)
                    {
                        disposable.Dispose();
                    }
                }
                catch (Exception ex)
                {
                    // Error in TestFixtureTearDown or Dispose causes the
                    // suite to be marked as a failure, even if
                    // all the contained tests passed.
                    NUnitException nex = ex as NUnitException;
                    if (nex != null)
                    {
                        ex = nex.InnerException;
                    }


                    suiteResult.Failure(ex.Message, ex.StackTrace, FailureSite.TearDown);
                }

                this.Fixture = null;
            }
        }