/// <summary> /// Add a child result /// </summary> /// <param name="result">The child result to be added</param> public override void AddResult(TestResult result) { base.AddResult(result); this.passCount += result.PassCount; this.failCount += result.FailCount; this.skipCount += result.SkipCount; this.inconclusiveCount += result.InconclusiveCount; }
void UpdateData(TestResult test) { if (test == null) return; // no result to fill FindViewById<TextView> (Resource.Id.ResultFullName).Text = test.FullName; FindViewById<TextView> (Resource.Id.ResultResultState).Text = test.ResultState.ToString (); FindViewById<TextView> (Resource.Id.ResultMessage).Text= test.Message; FindViewById<TextView> (Resource.Id.ResultStackTrace).Text = test.StackTrace; FindViewById<TextView> (Resource.Id.ResultStackTrace).MovementMethod = new ScrollingMovementMethod (); }
public void Update (TestResult result) { Result = result; Update (); if (GetContainerTableView () != null) { var root = GetImmediateRootElement (); root.Reload (this, UITableViewRowAnimation.Fade); } }
public void SetUp() { test = new TestMethod(typeof(DummySuite).GetMethod("DummyMethod")); test.Properties.Set(PropertyNames.Description, "Test description"); test.Properties.Add(PropertyNames.Category, "Dubious"); test.Properties.Set("Priority", "low"); testResult = test.MakeTestResult(); TestSuite suite = new TestSuite(typeof(DummySuite)); suite.Properties.Set(PropertyNames.Description, "Suite description"); suite.Properties.Add(PropertyNames.Category, "Fast"); suite.Properties.Add("Value", 3); suiteResult = suite.MakeTestResult(); SimulateTestRun(); }
protected virtual void PublishResults(TestResult testResults) { TestResultsConfig.PrintConfig(); Log.Info(this.tag, "Publishing results : " + DateTime.Now + "\nTotal count : {0}, Failed : {1}", testResults.AssertCount, testResults.FailCount); if (TestResultsConfig.IsRemote) { switch (TestResultsConfig.TestsResultsFormat) { case "plain_text": // We already published test results because in this case we publish each test results separately. See SetTextWriterForAndroidTestRunner() method. return; case "nunit2": var nunit2Writer = new NUnit2XmlOutputWriter(this.testsStartTime); var tcpwriter = this.NetworkWriter; nunit2Writer.WriteResultFile(testResults, tcpwriter); tcpwriter.Close(); Log.Info(this.tag, "Published tests results in nunit2 format"); return; case "nunit3": var nunit3Writer = new NUnit3XmlOutputWriter(this.testsStartTime); var newtworkWriter = this.NetworkWriter; nunit3Writer.WriteResultFile(testResults, newtworkWriter); newtworkWriter.Close(); Log.Info(this.tag, "Published tests results in nunit3 format"); return; } } else { // If we don't need to send test results to remote server, just return. return; } }
public void SetUp() { expectedDuration = 0.125; expectedStart = new DateTime(1968, 4, 8, 15, 05, 30, 250, DateTimeKind.Utc); expectedEnd = expectedStart.AddSeconds(expectedDuration); test = new TestMethod(typeof(DummySuite).GetMethod("DummyMethod")); test.Properties.Set(PropertyNames.Description, "Test description"); test.Properties.Add(PropertyNames.Category, "Dubious"); test.Properties.Set("Priority", "low"); testResult = test.MakeTestResult(); TestSuite suite = new TestSuite(typeof(DummySuite)); suite.Properties.Set(PropertyNames.Description, "Suite description"); suite.Properties.Add(PropertyNames.Category, "Fast"); suite.Properties.Add("Value", 3); suiteResult = suite.MakeTestResult(); SimulateTestRun(); }
public static ITestResult Find(string name, TestResult result, bool recursive) { if (result.HasChildren) { foreach (TestResult childResult in result.Children) { if (childResult.Name == name) return childResult; if (recursive && childResult.HasChildren) { ITestResult r = Find(name, childResult, true); if (r != null) return r; } } } return null; }
/// <summary> /// Initializes a new instance of the <see cref="TestExecutionContext"/> class. /// </summary> /// <param name="other">An existing instance of TestExecutionContext.</param> public TestExecutionContext( TestExecutionContext other ) { this.prior = other; this.currentTest = other.currentTest; this.currentResult = other.currentResult; this.testObject = other.testObject; this.workDirectory = other.workDirectory; this.listener = other.listener; this.stopOnError = other.stopOnError; this.testCaseTimeout = other.testCaseTimeout; #if !NETCF this.currentCulture = CultureInfo.CurrentCulture; this.currentUICulture = CultureInfo.CurrentUICulture; #endif #if !NETCF && !SILVERLIGHT this.outWriter = other.outWriter; this.errorWriter = other.errorWriter; this.traceWriter = other.traceWriter; this.tracing = other.tracing; #endif #if !NUNITLITE this.logging = other.logging; this.currentDirectory = Environment.CurrentDirectory; this.logCapture = other.logCapture; this.currentPrincipal = Thread.CurrentPrincipal; #endif }
public void Update (TestResult result) { Result = result; Update (); }
private static string GenerateExpectedXml(TestResult result) { StringBuilder expected = new StringBuilder(); TestSuiteResult suiteResult = result as TestSuiteResult; if(suiteResult != null) expected.Append("<test-suite type=" + Quoted("TestSuite")); else expected.Append("<test-case"); expected.Append(" id=" + Quoted(result.Test.Id)); expected.Append(" name=" + Quoted(result.Name)); expected.Append(" fullname=" + Quoted(result.FullName)); if (suiteResult == null) expected.Append(" seed=" + Quoted(result.Test.Seed)); if (suiteResult != null) expected.Append(" testcasecount=" + Quoted(result.Test.TestCaseCount)); expected.Append(" result=" + Quoted(result.ResultState.Status)); if (result.ResultState.Label != null && result.ResultState.Label != "") expected.Append(" label=" + Quoted(result.ResultState.Label)); expected.Append(" time=" + Quoted(result.Duration.ToString())); if (suiteResult != null) { ResultSummary summary = new ResultSummary(suiteResult); expected.Append(" total=" + Quoted(suiteResult.PassCount+suiteResult.FailCount+suiteResult.InconclusiveCount+suiteResult.SkipCount)); expected.Append(" passed=" + Quoted(suiteResult.PassCount)); expected.Append(" failed=" + Quoted(suiteResult.FailCount)); expected.Append(" inconclusive=" + Quoted(suiteResult.InconclusiveCount)); expected.Append(" skipped=" + Quoted(suiteResult.SkipCount)); } expected.Append(" asserts=" + Quoted(result.AssertCount) + ">"); if (result.Test.Properties.Count > 0) { expected.Append("<properties>"); foreach (string key in result.Test.Properties.Keys) foreach (object value in result.Test.Properties[key]) expected.Append("<property name=" + Quoted(key) + " value=" + Quoted(value) + " />"); expected.Append("</properties>"); } if (result.ResultState.Status == TestStatus.Failed) { expected.Append("<failure>"); if (result.Message != null) expected.Append("<message>" + Escape(result.Message) + "</message>"); if (result.StackTrace != null) expected.Append("<stack-trace>" + Escape(result.StackTrace) + "</stack-trace>"); expected.Append("</failure>"); } else if (result.Message != null) { expected.Append("<reason><message>" + Escape(result.Message) + "</message></reason>"); } if (suiteResult != null) { foreach (TestResult childResult in suiteResult.Children) expected.Append(GenerateExpectedXml(childResult)); expected.Append("</test-suite>"); } else expected.Append("</test-case>"); return expected.ToString(); }
public void SetUp() { _result = TestUtilities.Fakes.GetTestMethod(this, "FakeMethod").MakeTestResult(); }
public void RunFinished (TestResult results) { }
/// <summary> /// Add a child result /// </summary> /// <param name="result">The child result to be added</param> public void AddResult(TestResult result) { this.Children.Add(result); this.assertCount += result.AssertCount; this.passCount += result.PassCount; this.failCount += result.FailCount; this.skipCount += result.SkipCount; this.inconclusiveCount += result.InconclusiveCount; // NOTE: We don't call SetResult from this // method to avoid double-counting of results. switch (result.ResultState.Status) { case TestStatus.Passed: if (this.resultState.Status == TestStatus.Inconclusive) this.resultState = ResultState.Success; break; case TestStatus.Failed: if (this.resultState.Status != TestStatus.Failed) { this.resultState = ResultState.Failure; this.message = "One or more child tests had errors"; } break; case TestStatus.Skipped: switch (result.ResultState.Label) { case "Invalid": if (this.ResultState != ResultState.NotRunnable && this.ResultState.Status != TestStatus.Failed) { this.resultState = ResultState.Failure; this.message = "One or more child tests had errors"; } break; case "Ignored": if (this.ResultState.Status == TestStatus.Inconclusive || this.ResultState.Status == TestStatus.Passed) { this.resultState = ResultState.Ignored; this.message = "One or more child tests were ignored"; } break; default: // Tests skipped for other reasons do not change the outcome // of the containing suite when added. break; } break; case TestStatus.Inconclusive: // An inconclusive result does not change the outcome // of the containing suite when added. break; } }
public void TestFinished (TestResult result) { }
public TestResult Run (Test test) { TestResult = null; TestExecutionContext current = TestExecutionContext.CurrentContext; current.WorkDirectory = Environment.CurrentDirectory; current.Listener = this; current.TestObject = test is TestSuite ? null : Reflect.Construct ((test as TestMethod).Method.ReflectedType, null); WorkItem wi = WorkItem.CreateWorkItem (test, current, filter); wi.Execute (); TestResult = wi.Result; return wi.Result; }
public void Set (TestExecutionContext context, long startTicks, TestResult result) { var frame = new Tuple<TestExecutionContext, long, TestResult>(context, startTicks, result); this.testStack.Push(frame); }