private static (AllCoverageReports AllCoverageReports, TestResults AllTestResults) RunListOfCoverage(ICoverageDataObject coverageData, ITestCoverageCatalog testCoverageCatalog, ITestCatalog testCatalog, Guid workspaceGuid, IResourceCatalog catalog) { var allTestResults = new TestResults(); var allCoverageReports = new AllCoverageReports { StartTime = DateTime.Now }; var resources = catalog.GetResources <IWarewolfWorkflow>(workspaceGuid); var selectedResources = resources.Where(resource => coverageData.CoverageReportResourceIds.Contains(resource.ResourceID)).ToArray(); var testResultsTemp = new List <WorkflowTestResults>(); var coverageReportsTemp = new List <WorkflowCoverageReports>(); foreach (var coverageResourceId in coverageData.CoverageReportResourceIds) { var res = selectedResources.FirstOrDefault(o => o.ResourceID == coverageResourceId); if (res is null) { continue; } var workflowTestResults = new WorkflowTestResults(); testCatalog.Fetch(coverageResourceId) ?.ForEach(o => workflowTestResults.Add(o)); testResultsTemp.Add(workflowTestResults); var coverageReports = new WorkflowCoverageReports(res); testCoverageCatalog.Fetch(coverageResourceId) ?.ForEach(o => coverageReports.Add(o)); coverageReportsTemp.Add(coverageReports); } testResultsTemp.ForEach(o => allTestResults.Add(o)); coverageReportsTemp.ForEach(o => allCoverageReports.Add(o)); allTestResults.EndTime = DateTime.Now; allCoverageReports.EndTime = DateTime.Now; return(allCoverageReports, allTestResults); }
private static AllCoverageReports RunListOfCoverage(ICoverageDataObject coverageData, ITestCoverageCatalog testCoverageCatalog, Guid workspaceGuid, IResourceCatalog catalog) { var allCoverageReports = new AllCoverageReports { StartTime = DateTime.Now }; var resources = catalog.GetResources <IWarewolfWorkflow>(workspaceGuid); var selectedResources = resources.Where(resource => coverageData.CoverageReportResourceIds.Contains(resource.ResourceID)).ToArray(); testCoverageCatalog.ReloadAllReports(); var coverageReportsTemp = new List <WorkflowCoverageReports>(); foreach (var coverageResourceId in coverageData.CoverageReportResourceIds) { var res = selectedResources.FirstOrDefault(o => o.ResourceID == coverageResourceId); if (res is null) { continue; } var coverageReports = new WorkflowCoverageReports(res); var allWorkflowReports = testCoverageCatalog.Fetch(coverageResourceId); if (allWorkflowReports?.Count > 0) { foreach (var workflowReport in allWorkflowReports) { coverageReports.Add(workflowReport); } coverageReportsTemp.Add(coverageReports); } } foreach (var item in coverageReportsTemp) { allCoverageReports.Add(item); } allCoverageReports.EndTime = DateTime.Now; return(allCoverageReports); }
internal static void SetupCountSummaryHtml(this List <IServiceTestModelTO> allTests, HtmlTextWriter writer, string className, AllCoverageReports allCoverageReports, ICoverageDataObject coverageData) { writer.AddStyleAttribute(HtmlTextWriterStyle.Padding, "10px 10px 20px 10px"); writer.AddStyleAttribute(HtmlTextWriterStyle.Margin, "5px"); writer.AddAttribute(HtmlTextWriterAttribute.Class, className); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.AddStyleAttribute(HtmlTextWriterStyle.Margin, "0 -15px 0 -15px"); writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "200px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "roboto sans-serif"); writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "black"); writer.AddAttribute(HtmlTextWriterAttribute.Class, "table-td-black"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.Write("Total Test Count: " + allTests.Count.ToString()); writer.RenderEndTag(); writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "200px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "roboto sans-serif"); writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "green"); writer.AddAttribute(HtmlTextWriterAttribute.Class, "table-td-green"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.Write("Tests Passed: " + allTests.Count(o => o.TestPassed)); writer.RenderEndTag(); var failedCount = allTests.Count(o => o.TestFailing); writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "200px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14px"); writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "roboto sans-serif"); if (failedCount > 0) { writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "red"); } else { writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "black"); } writer.AddAttribute(HtmlTextWriterAttribute.Class, "table-td-red"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.Write("Tests Failed: " + failedCount); writer.RenderEndTag(); writer.RenderBeginTag(HtmlTextWriterTag.Td); if (coverageData.IsMultipleWorkflowReport) { writer.AddAttribute(HtmlTextWriterAttribute.Target, "_new"); writer.AddAttribute(HtmlTextWriterAttribute.Href, coverageData.GetAllTestsUrl()); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.Write("Run All Tests"); writer.RenderEndTag(); } writer.RenderEndTag(); writer.RenderEndTag(); writer.RenderEndTag(); writer.RenderEndTag(); }