Previously every page (fixes, regressions, etc) was generated regardless of whether there was anything on that page. That is simply silly, this patch does a quick check and only generates pages that actually have content, and add those pages to the link bar at the top of the page.
Signed-off-by: Dylan Baker <[email protected]> --- framework/summary.py | 92 ++++++++++++++++++++++++++++++++++------------------ templates/index.mako | 4 +-- 2 files changed, 63 insertions(+), 33 deletions(-) diff --git a/framework/summary.py b/framework/summary.py index 722912c..6780458 100644 --- a/framework/summary.py +++ b/framework/summary.py @@ -668,54 +668,84 @@ class NewSummary: output_encoding = "utf-8", module_directory = ".makotmp") + # Figure out which pages need to be built, then only build those pages + # and only add those pages to the link bar at the top + links = ['index', 'changes', 'problems', 'skipped', 'fixes', + 'regressions'] + + if not self.changes: + links.remove('changes') + if not self.problems: + links.remove('problems') + if not self.skipped: + links.remove('skipped') + if not self.fixes: + links.remove('fixes') + if not self.regressions: + links.remove('regressions') + # Index.html file = open(path.join(destination, "index.html"), 'w') file.write(index.render(results = BuildHTMLIndex(self, self.alltests), page = 'all', colnum = len(self.results), + links = links, exclude = exclude)) file.close() # changes.html - file = open(path.join(destination, "changes.html"), 'w') - file.write(index.render(results = BuildHTMLIndex(self, self.changes), - page = 'changes', - colnum = len(self.results), - exclude = exclude)) - file.close() + if self.changes: + file = open(path.join(destination, "changes.html"), 'w') + file.write(index.render(results = BuildHTMLIndex(self, + self.changes), + page = 'changes', + colnum = len(self.results), + links = links, + exclude = exclude)) + file.close() # problems.html - file = open(path.join(destination, "problems.html"), 'w') - file.write(index.render(results = BuildHTMLIndex(self, self.problems), - page = 'problems', - colnum = len(self.results), - exclude = exclude)) - file.close() + if self.problems: + file = open(path.join(destination, "problems.html"), 'w') + file.write(index.render(results = BuildHTMLIndex(self, + self.problems), + page = 'problems', + colnum = len(self.results), + links = links, + exclude = exclude)) + file.close() # skipped.html - file = open(path.join(destination, "skipped.html"), 'w') - file.write(index.render(results = BuildHTMLIndex(self, self.skipped), - page = 'skipped', - colnum = len(self.results), - exclude = exclude)) - file.close() + if self.skipped: + file = open(path.join(destination, "skipped.html"), 'w') + file.write(index.render(results = BuildHTMLIndex(self, + self.skipped), + page = 'skipped', + colnum = len(self.results), + links = links, + exclude = exclude)) + file.close() # fixes.html - file = open(path.join(destination, "fixes.html"), 'w') - file.write(index.render(results = BuildHTMLIndex(self, self.fixes), - page = 'fixes', - colnum = len(self.results), - exclude = exclude)) - file.close() + if self.fixes: + file = open(path.join(destination, "fixes.html"), 'w') + file.write(index.render(results = BuildHTMLIndex(self, self.fixes), + page = 'fixes', + colnum = len(self.results), + links = links, + exclude = exclude)) + file.close() # regressions.html - file = open(path.join(destination, "regressions.html"), 'w') - file.write(index.render(results = BuildHTMLIndex(self, - self.regressions), - page = 'regressions', - colnum = len(self.results), - exclude = exclude)) - file.close() + if self.regressions: + file = open(path.join(destination, "regressions.html"), 'w') + file.write(index.render(results = BuildHTMLIndex(self, + self.regressions), + page = 'regressions', + colnum = len(self.results), + links = links, + exclude = exclude)) + file.close() def _buildDictionary(self, summary): # Build a dictionary from test name to pass count/total count, i.e. diff --git a/templates/index.mako b/templates/index.mako index e29ebcc..fd999ad 100644 --- a/templates/index.mako +++ b/templates/index.mako @@ -11,7 +11,7 @@ <h1>Result summary</h1> <p>Currently showing: all</p> <p>Show: - % for i in ['index', 'changes', 'fixes', 'problems', 'regressions', 'skipped']: + % for i in links: % if i == page: ${page} % elif i == 'index': @@ -23,7 +23,7 @@ % else: <a href="${i}.html">${i}</a> % endif - % if i != "skipped": + % if i != links[-1]: | % endif % endfor -- 1.8.1.4 _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
