示例#1
0
        public static string GetTestSource(Test Test)
        {
            string testSource = TestHtml.GetSource(3);
            string stepSource = StepHtml.GetSource(2);

            if (Test.Logs.Count > 0 && Test.Logs[0].StepName != "")
            {
                testSource = TestHtml.GetSource(4);
                stepSource = StepHtml.GetSource(-1);
            }

            if (Test.Description == "")
            {
                testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("descVis"), "style='display:none;'");
            }

            testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("testName"), Test.Name)
                         .Replace(ExtentFlag.GetPlaceHolder("testStatus"), Test.Status.ToString().ToLower())
                         .Replace(ExtentFlag.GetPlaceHolder("testStartTime"), Test.StartedTime.ToString())
                         .Replace(ExtentFlag.GetPlaceHolder("testEndTime"), Test.EndedTime.ToString())
                         .Replace(ExtentFlag.GetPlaceHolder("testTimeTaken"), (Test.EndedTime - Test.StartedTime).Minutes + "m " + (Test.EndedTime - Test.StartedTime).Seconds + "s")
                         .Replace(ExtentFlag.GetPlaceHolder("testDescription"), Test.Description)
                         .Replace(ExtentFlag.GetPlaceHolder("descVis"), "")
                         .Replace(ExtentFlag.GetPlaceHolder("category"), "")
                         .Replace(ExtentFlag.GetPlaceHolder("testWarnings"), TestHtml.GetWarningSource(Test.InternalWarning));

            foreach (TestAttribute t in Test.CategoryList)
            {
                testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("testCategory"), TestHtml.GetCategorySource() + ExtentFlag.GetPlaceHolder("testCategory"))
                             .Replace(ExtentFlag.GetPlaceHolder("category"), t.GetName());
            }

            foreach (var log in Test.Logs)
            {
                testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("step"), stepSource + ExtentFlag.GetPlaceHolder("step"))
                             .Replace(ExtentFlag.GetPlaceHolder("timeStamp"), log.Timestamp.ToShortTimeString())
                             .Replace(ExtentFlag.GetPlaceHolder("stepStatusU"), log.LogStatus.ToString().ToUpper())
                             .Replace(ExtentFlag.GetPlaceHolder("stepStatus"), log.LogStatus.ToString().ToLower())
                             .Replace(ExtentFlag.GetPlaceHolder("statusIcon"), Icon.GetIcon(log.LogStatus))
                             .Replace(ExtentFlag.GetPlaceHolder("stepName"), log.StepName)
                             .Replace(ExtentFlag.GetPlaceHolder("details"), log.Details);
            }

            testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("step"), "");

            return(testSource);
        }
示例#2
0
        public static string GetSource(Test test)
        {
            if (test.IsChildNode)
            {
                return("");
            }

            var testSource = TestHtml.GetSource(3);
            var stepSource = StepHtml.GetSource(2);

            if (test.Logs.Count > 0 && test.Logs[0].StepName != "")
            {
                testSource = TestHtml.GetSource(4);
                stepSource = StepHtml.GetSource(-1);
            }

            if (test.Description == "")
            {
                testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("descVis"), "style='display:none;'");
            }

            string[] testFlags =
            {
                ExtentFlag.GetPlaceHolder("testName"),
                ExtentFlag.GetPlaceHolder("testStatus"),
                ExtentFlag.GetPlaceHolder("testStartTime"),
                ExtentFlag.GetPlaceHolder("testEndTime"),
                ExtentFlag.GetPlaceHolder("testTimeTaken"),
                ExtentFlag.GetPlaceHolder("testDescription"),
                ExtentFlag.GetPlaceHolder("descVis"),
                ExtentFlag.GetPlaceHolder("category"),
                ExtentFlag.GetPlaceHolder("testWarnings")
            };
            string[] testValues =
            {
                test.Name,
                test.Status.ToString().ToLower(),
                test.StartedTime.ToString(),
                test.EndedTime.ToString(),
                (test.EndedTime - test.StartedTime).Minutes + "m " + (test.EndedTime - test.StartedTime).Seconds + "s",
                test.Description,
                "",
                "",
                TestHtml.GetWarningSource(test.InternalWarning)
            };

            testSource = SourceBuilder.Build(testSource, testFlags, testValues);

            testFlags = new string[] {
                ExtentFlag.GetPlaceHolder("testCategory"),
                ExtentFlag.GetPlaceHolder("category")
            };

            test.CategoryList.ForEach(attr =>
            {
                testValues = new string[] {
                    TestHtml.GetCategorySource() + ExtentFlag.GetPlaceHolder("testCategory"),
                    attr.GetName()
                };

                testSource = SourceBuilder.Build(testSource, testFlags, testValues);
            });

            var stepSrc = StepHtml.GetSource(2);

            string[] stepFlags =
            {
                ExtentFlag.GetPlaceHolder("step"),
                ExtentFlag.GetPlaceHolder("timeStamp"),
                ExtentFlag.GetPlaceHolder("stepStatusU"),
                ExtentFlag.GetPlaceHolder("stepStatus"),
                ExtentFlag.GetPlaceHolder("statusIcon"),
                ExtentFlag.GetPlaceHolder("stepName"),
                ExtentFlag.GetPlaceHolder("details")
            };
            string[] stepValues;

            if (test.Logs.Count > 0)
            {
                if (test.Logs[0].StepName != "")
                {
                    stepSrc = StepHtml.GetSource(3);
                }

                test.Logs.ForEach(log =>
                {
                    stepValues = new string[] {
                        stepSrc + ExtentFlag.GetPlaceHolder("step"),
                        log.Timestamp.ToShortTimeString(),
                        log.LogStatus.ToString().ToUpper(),
                        log.LogStatus.ToString().ToLower(),
                        Icon.GetIcon(log.LogStatus),
                        log.StepName,
                        log.Details
                    };

                    testSource = SourceBuilder.Build(testSource, stepFlags, stepValues);
                });
            }

            testSource = testSource.Replace(ExtentFlag.GetPlaceHolder("step"), "");

            testSource = AddChildTests(test, testSource, 1);

            return(testSource);
        }
示例#3
0
        public static string GetSource(Test test)
        {
            string result;

            if (test.IsChildNode)
            {
                result = string.Empty;
            }
            else
            {
                string text   = TestHtml.GetSource(3);
                string source = StepHtml.GetSource(2);
                if (test.Logs.Count > 0 && test.Logs[0].StepName != "")
                {
                    text   = TestHtml.GetSource(4);
                    source = StepHtml.GetSource(-1);
                }
                if (string.IsNullOrEmpty(test.Description))
                {
                    text = text.Replace(UnifiedReportFlag.GetPlaceHolder("descVis"), "style='display:none;'");
                }
                string[] flags = new string[]
                {
                    UnifiedReportFlag.GetPlaceHolder("testName"),
                    UnifiedReportFlag.GetPlaceHolder("testStatus"),
                    UnifiedReportFlag.GetPlaceHolder("testStartTime"),
                    UnifiedReportFlag.GetPlaceHolder("testEndTime"),
                    UnifiedReportFlag.GetPlaceHolder("testTimeTaken"),
                    UnifiedReportFlag.GetPlaceHolder("testDescription"),
                    UnifiedReportFlag.GetPlaceHolder("descVis"),
                    UnifiedReportFlag.GetPlaceHolder("category"),
                    UnifiedReportFlag.GetPlaceHolder("testWarnings")
                };
                string[] values = new string[]
                {
                    test.Name,
                    test.Status.ToString().ToLower(),
                    test.StartedTime.ToString(),
                    test.EndedTime.ToString(),
                    string.Concat(new object[]
                    {
                        (test.EndedTime - test.StartedTime).Minutes,
                        "m ",
                        (test.EndedTime - test.StartedTime).Seconds,
                        "s"
                    }),
                    test.Description,
                    "",
                    "",
                    TestHtml.GetWarningSource(test.InternalWarning)
                };
                text = SourceBuilder.Build(text, flags, values);
                foreach (TestAttribute current in test.CategoryList)
                {
                    text = text.Replace(UnifiedReportFlag.GetPlaceHolder("testCategory"), TestHtml.GetCategorySource() + UnifiedReportFlag.GetPlaceHolder("testCategory")).Replace(UnifiedReportFlag.GetPlaceHolder("category"), current.GetName());
                }
                string   source2 = StepHtml.GetSource(2);
                string[] flags2  = new string[]
                {
                    UnifiedReportFlag.GetPlaceHolder("step"),
                    UnifiedReportFlag.GetPlaceHolder("timeStamp"),
                    UnifiedReportFlag.GetPlaceHolder("stepStatusU"),
                    UnifiedReportFlag.GetPlaceHolder("stepStatus"),
                    UnifiedReportFlag.GetPlaceHolder("statusIcon"),
                    UnifiedReportFlag.GetPlaceHolder("stepName"),
                    UnifiedReportFlag.GetPlaceHolder("details")
                };
                if (test.Logs.Count > 0)
                {
                    if (!string.IsNullOrEmpty(test.Logs[0].StepName))
                    {
                        source2 = StepHtml.GetSource(3);
                    }
                    for (int i = 0; i < test.Logs.Count; i++)
                    {
                        string[] values2 = new string[]
                        {
                            source2 + UnifiedReportFlag.GetPlaceHolder("step"),
                            test.Logs[i].Timestamp.ToShortTimeString(),
                            test.Logs[i].LogStatus.ToString().ToUpper(),
                            test.Logs[i].LogStatus.ToString().ToLower(),
                            Icon.GetIcon(test.Logs[i].LogStatus),
                            test.Logs[i].StepName,
                            test.Logs[i].Details
                        };
                        text = SourceBuilder.Build(text, flags2, values2);
                    }
                }
                text   = text.Replace(UnifiedReportFlag.GetPlaceHolder("step"), "");
                text   = TestBuilder.AddChildTests(test, text, 1);
                result = text;
            }
            return(result);
        }