Exemplo n.º 1
0
 def generateExtraVersionHeader(self, extraVersion):
     bgColour = self.colourFinder.find("column_header_bg")
     extraVersionElement = HTMLgen.Container(HTMLgen.Name(extraVersion),
                                             extraVersion)
     columnHeader = HTMLgen.TH(extraVersionElement,
                               colspan=len(self.tags) + 1,
                               bgcolor=bgColour)
     return HTMLgen.TR(columnHeader)
Exemplo n.º 2
0
 def addVersionSection(self, version, categoryHandler,
                       linkFromDetailsToOverview):
     self.totalCategoryHandler.update(categoryHandler)
     container = HTMLgen.Container()
     container.append(HTMLgen.HR())
     container.append(self.getSummaryHeading(version, categoryHandler))
     for desc, testInfo in categoryHandler.getTestsWithDescriptions():
         fullDescription = self.getFullDescription(
             testInfo, version, linkFromDetailsToOverview)
         if fullDescription:
             container.append(HTMLgen.Name(version + desc))
             container.append(
                 HTMLgen.Heading(
                     3, "Detailed information for the tests that " + desc +
                     ":"))
             container.append(fullDescription)
     self.versionSections.append(container)
Exemplo n.º 3
0
    def generateTestRows(self, testName, extraVersion, results):
        bgColour = self.colourFinder.find("row_header_bg")
        testId = makeTestId(self.version, extraVersion, testName)
        description = self.descriptionInfo.get(testName, "")
        container = HTMLgen.Container(HTMLgen.Name(testId), testName)
        rows = []
        testRow = [
            HTMLgen.TD(container,
                       bgcolor=bgColour,
                       title=self.escapeForHtml(description))
        ]

        # Don't add empty rows to the table
        foundData = False
        bgcol = None
        for tag in self.tags:
            cellContent, bgcol, hasData = self.generateTestCell(
                tag, testName, testId, results)
            testRow.append(HTMLgen.TD(cellContent, bgcolor=bgcol))
            foundData |= hasData

        if foundData:
            # We only filter based on the final column
            self.usedColours.add(bgcol)
            rows.append(HTMLgen.TR(*testRow))
        else:
            return rows

        for resourceName in self.resourceNames:
            foundData = False
            resourceRow = [
                HTMLgen.TD(HTMLgen.Emphasis("(" + resourceName + ")"),
                           align="right")
            ]
            for tag in self.tags:
                cellContent, bgcol, hasData = self.generateTestCell(
                    tag, testName, testId, results, resourceName)
                resourceRow.append(
                    HTMLgen.TD(HTMLgen.Emphasis(cellContent),
                               bgcolor=bgcol,
                               align="right"))
                foundData |= hasData

            if foundData:
                rows.append(HTMLgen.TR(*resourceRow))
        return rows
Exemplo n.º 4
0
 def getFullDescription(self, tests, version, linkFromDetailsToOverview):
     freeTextData = self.getFreeTextData(tests)
     if len(freeTextData) == 0:
         return
     fullText = HTMLgen.Container()
     for freeText, tests in freeTextData:
         tests.sort(key=lambda info: info[0])
         for testName, _, extraVersion in tests:
             fullText.append(
                 HTMLgen.Name(makeTestId(version, extraVersion, testName)))
         fullText.append(
             self.getHeaderLine(tests, version, linkFromDetailsToOverview))
         self.appendFreeText(fullText, freeText)
         if len(tests) > 1:
             for line in self.getTestLines(tests, version,
                                           linkFromDetailsToOverview):
                 fullText.append(line)
     return fullText
Exemplo n.º 5
0
 def makeTableHeaderCell(self, tableHeader):
     container = HTMLgen.Container()
     container.append(HTMLgen.Name(tableHeader))
     container.append(
         HTMLgen.U(HTMLgen.Heading(1, tableHeader, align='center')))
     return HTMLgen.TD(container)