public void ShouldFilterAssertionLibraryImplementationDetailsWhenLibraryTypesAreSpecified() { using (var console = new RedirectedConsole()) using (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 (" + Framework.Version + ").", "", ""); } }
public void ShouldReportResultsToTheConsole() { using (var console = new RedirectedConsole()) { var listener = new ConsoleListener(); typeof(PassFailTestClass).Run(listener, SelfTestConvention.Build()); var testClass = typeof(PassFailTestClass).FullName; console.Lines() .Select(CleanBrittleValues) .ShouldEqual( "------ Testing Assembly Fixie.Tests.dll ------", "Test '" + testClass + ".SkipA' skipped", "Console.Out: FailA", "Console.Error: FailA", "Console.Out: FailB", "Console.Error: FailB", "Console.Out: PassA", "Console.Error: PassA", "Console.Out: PassB", "Console.Error: PassB", "Console.Out: PassC", "Console.Error: PassC", "Test '" + testClass + ".FailA' failed: Fixie.Tests.FailureException", "'FailA' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailA() in " + PathToThisFile() + ":line #", "Test '" + testClass + ".FailB' failed: Fixie.Tests.FailureException", "'FailB' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailB() in " + PathToThisFile() + ":line #", "3 passed, 2 failed, 1 skipped, took 1.23 seconds (Fixie 1.2.3.4)."); } }
public void ShouldNotAffectOutputByDefault() { using (var console = new RedirectedConsole()) using (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 (" + Framework.Version + ").", "", ""); } }
static AssemblyResult Execute(string assemblyPath, Options options) { if (ShouldUseTeamCityListener(options)) { using (var listener = new TeamCityListener()) return(Execute(assemblyPath, options, listener)); } using (var listener = new ConsoleListener()) return(Execute(assemblyPath, options, listener)); }
static AssemblyResult Execute(string assemblyPath, Options options) { if (ShouldUseTeamCityListener(options)) { using (var listener = new TeamCityListener()) return Execute(assemblyPath, options, listener); } using (var listener = new ConsoleListener()) return Execute(assemblyPath, options, listener); }
static AssemblyResult Execute(string assemblyPath, Options options) { using (var environment = new ExecutionEnvironment(assemblyPath)) { if (ShouldUseTeamCityListener(options)) using (var listener = new TeamCityListener()) return environment.RunAssembly(options, listener); if (ShouldUseAppVeyorListener()) using (var listener = new AppVeyorListener()) return environment.RunAssembly(options, listener); using (var listener = new ConsoleListener()) return environment.RunAssembly(options, listener); } }
public void ShouldNotReportSkipCountsWhenZeroTestsHaveBeenSkipped() { using (var console = new RedirectedConsole()) using (var listener = new ConsoleListener()) { var convention = SelfTestConvention.Build(); convention .Methods .Where(method => !method.Has<SkipAttribute>()); typeof(PassFailTestClass).Run(listener, convention); var testClass = typeof(PassFailTestClass).FullName; console.Lines() .Select(CleanBrittleValues) .ShouldEqual( "------ Testing Assembly Fixie.Tests.dll ------", "", "Console.Out: FailA", "Console.Error: FailA", "Console.Out: FailB", "Console.Error: FailB", "Console.Out: PassA", "Console.Error: PassA", "Console.Out: PassB", "Console.Error: PassB", "Console.Out: PassC", "Console.Error: PassC", "Test '" + testClass + ".FailA' failed: Fixie.Tests.FailureException", "'FailA' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailA() in " + PathToThisFile() + ":line #", "", "Test '" + testClass + ".FailB' failed: Fixie.Tests.FailureException", "'FailB' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailB() in " + PathToThisFile() + ":line #", "", "3 passed, 2 failed, took 1.23 seconds (" + Framework.Version + ")."); } }
static AssemblyResult Execute(string assemblyPath, Options options) { using (var environment = new ExecutionEnvironment(assemblyPath)) { if (ShouldUseTeamCityListener(options)) { using (var listener = new TeamCityListener()) return(environment.RunAssembly(options, listener)); } if (ShouldUseAppVeyorListener()) { using (var listener = new AppVeyorListener()) return(environment.RunAssembly(options, listener)); } using (var listener = new ConsoleListener()) return(environment.RunAssembly(options, listener)); } }
public void ShouldReportResultsToTheConsole() { using (var console = new RedirectedConsole()) using (var listener = new ConsoleListener()) { var convention = SelfTestConvention.Build(); convention.CaseExecution.Skip(x => x.Method.Has<SkipAttribute>(), x => x.Method.GetCustomAttribute<SkipAttribute>().Reason); typeof(PassFailTestClass).Run(listener, convention); var testClass = typeof(PassFailTestClass).FullName; console.Lines() .Select(CleanBrittleValues) .ShouldEqual( "------ Testing Assembly Fixie.Tests.dll ------", "", "Test '" + testClass + ".SkipWithReason' skipped: Skipped with reason.", "Test '" + testClass + ".SkipWithoutReason' skipped", "Console.Out: FailA", "Console.Error: FailA", "Console.Out: FailB", "Console.Error: FailB", "Console.Out: PassA", "Console.Error: PassA", "Console.Out: PassB", "Console.Error: PassB", "Console.Out: PassC", "Console.Error: PassC", "Test '" + testClass + ".FailA' failed: Fixie.Tests.FailureException", "'FailA' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailA() in " + PathToThisFile() + ":line #", "", "Test '" + testClass + ".FailB' failed: Fixie.Tests.FailureException", "'FailB' failed!", " at Fixie.Tests.ConsoleRunner.ConsoleListenerTests.PassFailTestClass.FailB() in " + PathToThisFile() + ":line #", "", "3 passed, 2 failed, 2 skipped, took 1.23 seconds (" + Framework.Version + ")."); } }