def generate(self, loggedTests, pageDir, repositoryDirs): table = HTMLgen.TableLite(border=0, cellpadding=4, cellspacing=2, width="100%") table.append(self.generateTableHead(repositoryDirs)) table.append(self.generateSummaries()) if os.getenv("JENKINS_URL"): changeRow = self.generateJenkinsChanges(pageDir) if changeRow: table.append(changeRow) hasRows = False for extraVersion, testInfo in list(loggedTests.items()): currRows = [] for test in sorted(testInfo.keys()): results = testInfo[test] rows = self.generateTestRows(test, extraVersion, results) if rows: currRows += rows if len(currRows) == 0: continue else: hasRows = True # Add an extra line in the table only if there are several versions. if len(loggedTests) > 1: fullVersion = self.version if extraVersion: fullVersion += "." + extraVersion table.append(self.generateExtraVersionHeader(fullVersion)) table.append(self.generateSummaries(extraVersion)) for row in currRows: table.append(row) if hasRows: table.append(HTMLgen.BR()) return table
def addTable(self, page, resourceNames, categoryHandlers, version, loggedTests, selector, tableHeader, filePath, graphHeading, repositoryDirs): graphDirname, graphFileRef = self.getGraphFileParts(filePath, version) testTable = self.getTestTable(self.getConfigValue, resourceNames, self.descriptionInfo, selector.selectedTags, categoryHandlers, self.pageVersion, version, os.path.join(graphDirname, graphFileRef)) table = testTable.generate(loggedTests, self.pageDir, repositoryDirs) if table: cells = [] if tableHeader: page.append(HTMLgen.HR()) cells.append(self.makeTableHeaderCell(tableHeader)) graphLink = None fullPath = os.path.abspath(os.path.join(graphDirname, graphFileRef)) if testTable.generateGraph(fullPath, graphHeading): graphLink = self.makeImageLink(graphFileRef.replace("\\", "/")) cells.append(HTMLgen.TD(graphLink)) if len(cells): row = HTMLgen.TR(*cells) initialTable = HTMLgen.TableLite(align="center") initialTable.append(row) page.append(initialTable) extraVersions = list(loggedTests.keys())[1:] if len(extraVersions) > 0: page.append(testTable.generateExtraVersionLinks(extraVersions)) page.append(table) return True, graphLink, testTable.usedColours else: return False, None, []