コード例 #1
0
 public virtual void Visit(TestCaseNode node)
 {
     VisitHeads(node);
 }
コード例 #2
0
ファイル: XUnitReporter.cs プロジェクト: provegard/testness
            public override void Visit(TestCaseNode node)
            {
                var app = node.Application;
                var violations = app.Violations.ToList();
                var elapsed = app.ElapsedTimeInMilliseconds;
                var testCase = app.TestCase;
                var rule = app.Rule;

                var displayName = string.Format("{0} [{1}]", GetTestCaseName(testCase), rule);
                var pass = violations.Count == 0;

                var elem = new XElement("test",
                                        new XAttribute("name", displayName),
                                        new XAttribute("type", testCase.TestMethod.DeclaringType.FullName),
                                        new XAttribute("method", testCase.TestMethod.Name),
                                        new XAttribute("result", pass ? "Pass" : "Fail"),
                                        new XAttribute("time", ToTimeString(elapsed)));
                if (!pass)
                {
                    // Construct a single message from all violations
                    var sb = new StringBuilder();
                    if (violations.Count > 1)
                    {
                        sb.Append(violations.Count).AppendLine(" violations:");
                    }
                    foreach (var v in violations)
                    {
                        sb.AppendLine(v.Message);
                    }
                    var felem = new XElement("failure",
                                             new XAttribute("exception-type", "System.Exception"),
                                             new XElement("message", new XText(sb.ToString())));
                    elem.Add(felem);
                }

                var pc = pass ? 1 : 0;
                _intermediate.Add(new Result { Element = elem, PassCount = pc, FailCount = 1 - pc, Elapsed = elapsed, Level = Level });
            }