Exemple #1
0
        /// <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();
        }
Exemple #7
0
        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
        }
Exemple #9
0
		public void Update (TestResult result)
		{
			Result = result;
			
			Update ();
		}
Exemple #10
0
        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;
            }
        }
Exemple #14
0
		public void TestFinished (TestResult result)
		{
			
		}
Exemple #15
0
		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);
		}