static Xunit1TestCase Create( Type typeUnderTest, string methodName, string?displayName = null, Dictionary <string, IReadOnlyList <string> >?traits = null, string?skipReason = null) { var typeName = typeUnderTest.FullName !; var result = new Xunit1TestCase { AssemblyUniqueID = $"asm-id", SkipReason = skipReason, TestCaseDisplayName = displayName ?? "display-name", TestCaseUniqueID = $"case-id: {typeName}:{methodName}", TestClass = typeName, TestClassUniqueID = $"class-id: {typeName}", TestCollectionUniqueID = $"collection-id", TestMethod = methodName, TestMethodUniqueID = $"method-id: {typeName}:{methodName}", }; if (traits != null) { result.Traits = traits; } return(result); }
public static void WithTestNode_ParsesNumberWithInvariantCulture() { var sink = Substitute.For <IMessageSink>(); var testCase = new Xunit1TestCase("assembly", "config", "foo", "bar", "foo.bar"); var handler = new TestClassCallbackHandler(new [] { testCase }, sink); var xml = new XmlDocument(); xml.LoadXml("<test type='foo' method='bar' name='foo.bar' time='1.234' result='Pass' />"); handler.OnXmlNode(xml.FirstChild); var args = sink.Captured(1, x => x.OnMessage(null)); var message = args.Arg <ITestFinished>(); Assert.Equal(1.234M, message.ExecutionTime); }
public static void WithTestNode_OutputResultsInOutputMessage() { var sink = Substitute.For <IMessageSink>(); var testCase = new Xunit1TestCase("assembly", "config", "foo", "bar", "foo.bar"); var handler = new TestClassCallbackHandler(new[] { testCase }, sink); var xml = new XmlDocument(); xml.LoadXml("<test type='foo' method='bar' name='foo.bar' time='1.234' result='Pass'><output>This is output text</output></test>"); handler.OnXmlNode(xml.FirstChild); var args = sink.Captured(0, x => x.OnMessage(null)); var message = args.Arg <ITestOutput>(); Assert.Same(testCase, message.TestCase); Assert.Equal("This is output text", message.Output); }