public void ShouldNotAffectOutputByDefault() { using (var console = new RedirectedConsole()) { var listener = new ConsoleListener(); typeof(SampleTestClass).Run(listener, SelfTestConvention.Build()); console .Output.Split(new[] { Environment.NewLine }, StringSplitOptions.None) .Select(CleanBrittleValues) .ShouldEqual( "------ Testing Assembly Fixie.Tests.dll ------", "", "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.DivideByZero' failed: System.DivideByZeroException", "Attempted to divide by zero.", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.DivideByZero() in " + PathToThisFile() + ":line #", "", "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.FailedAssertion' failed: Fixie.Tests.SampleAssertionLibrary.AssertionException", "Expected 1, but was 0.", " at Fixie.Tests.SampleAssertionLibrary.SampleAssert.AreEqual(Int32 expected, Int32 actual) in " + PathToThisFile() + ":line #", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.FailedAssertion() in " + PathToThisFile() + ":line #", "", "0 passed, 2 failed, took 1.23 seconds (Fixie 1.2.3.4).", "", ""); } }
public void ShouldFilterAssertionLibraryImplementationDetailsWhenLibraryTypesAreSpecified() { using (var console = new RedirectedConsole()) { var listener = new ConsoleListener(); var convention = SelfTestConvention.Build(); convention .HideExceptionDetails .For <SampleAssertionLibrary.AssertionException>() .For(typeof(SampleAssertionLibrary.SampleAssert)); typeof(SampleTestClass).Run(listener, convention); console .Output.Split(new[] { Environment.NewLine }, StringSplitOptions.None) .Select(CleanBrittleValues) .ShouldEqual( "------ Testing Assembly Fixie.Tests.dll ------", "", "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.DivideByZero' failed: System.DivideByZeroException", "Attempted to divide by zero.", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.DivideByZero() in " + PathToThisFile() + ":line #", "", "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.FailedAssertion' failed: ", "Expected 1, but was 0.", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.FailedAssertion() in " + PathToThisFile() + ":line #", "", "0 passed, 2 failed, took 1.23 seconds (Fixie 1.2.3.4).", "", ""); } }
public void ShouldFilterAssertionLibraryImplementationDetailsWhenLibraryNamespacesAreSpecified() { using (var console = new RedirectedConsole()) { var listener = new ConsoleListener(); var convention = new SelfTestConvention(); convention .AssertionLibrary .Namespace(typeof(SampleAssert).Namespace); convention.Execute(listener, typeof(SampleTestClass)); console .Output.Split(new[] { Environment.NewLine }, StringSplitOptions.None) .Select(x => Regex.Replace(x, @":line \d+", ":line #")) //Avoid brittle assertion introduced by stack trace line numbers. .ShouldEqual( "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.DivideByZero' failed: System.DivideByZeroException", "Attempted to divide by zero.", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.DivideByZero() in " + PathToThisFile() + ":line #", "", "Test 'Fixie.Tests.AssertionLibraryFilteringTests+SampleTestClass.FailedAssertion' failed: ", "Expected 1, but was 0.", " at Fixie.Tests.AssertionLibraryFilteringTests.SampleTestClass.FailedAssertion() in " + PathToThisFile() + ":line #", "", ""); } }