summaryrefslogtreecommitdiff
path: root/piglit-summary-html.py
AgeCommit message (Collapse)AuthorFilesLines
2013-09-11core.py: Move parse_listfile to core.pyDylan Baker1-11/+1
Replaces the two individual implementations of parse_listfile with a single shared instance in core.py. Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
2013-09-11piglit-summary-html.py: Replace .read().split('\n') with .readlines()Dylan Baker1-1/+1
This is equivalent but simpler. Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
2013-07-29piglit-summary-html.py: PEP8 ComplianceDylan Baker1-22/+21
Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
2013-07-05summary: rename NewSummary to SummaryDylan Baker1-1/+1
Since the old summary code is gone, the NewSummary class can now be named just Summary. This should be clearer and easier to understand. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-05-31HTML summary: Provides means to exclude generating test result filesDylan Baker1-1/+16
This provides a switch and method for excluding the generation of the test result HTML files (those that live under <testrun name>/). This allows the user to trade some verbosity in the results for a significant increase in generation speed. A run of quick.tests with all options enabled takes ~5.5 seconds, with just pass and skip disabled it only takes ~2.5 seconds. This only becomes more significant as more testsruns are added the HTML page. V3: - Remove some bad comments - adds 'skip' to exclude list V4: - Renames --exclude-generation to --exclude-details Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-By: Aaron Watry <awatry@gmail.com> Reviewed-By: Kenneth Graunke <kenneth@whitecape.org>
2013-05-31piglit-summary-py: Use the new summary class to generate HTMLDylan Baker1-244/+19
Drops almost all of the code used in this file, all of that functionality is now handled in the summary class. Instead, the majority of this file is just the argparse instance, and a few short lines calling the new summary class. V2: - Fixes the -l/--list syntax V3: - Changes the listfile syntax to match the newline separated format Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-By: Aaron Watry <awatry@gmail.com> Reviewed-By: Kenneth Graunke <kenneth@whitecape.org>
2013-05-31piglit-summary-html.py: Fix listfile syntaxDylan Baker1-15/+27
This patch changes the listfile syntax to be newline separated. Further it actually hooks up the plumbing allowing the -l/--list option to actually work V3: - Adds this patch Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-By: Aaron Watry <awatry@gmail.com> Reviewed-By: Kenneth Graunke <kenneth@whitecape.org>
2013-05-13python: Convert tabs to spacesDylan Baker1-178/+178
PEP 8 specifies that all indents should be either 4 spaces or an equivalent tab indent, but without mixing tabs and spaces, with a preference for spaces over tabs because they are absolute. Tabs and spaces should not be mixed because they lead to expected indent level errors. Currently piglit uses a mixture of spaces and tabs, this patch uses the python tools reindent.py to convert the tabs to spaces. Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> v2: Rebase against master, fix apparent unintentional unindentation of help text in piglit-summary.py (changes by anholt) Reviewed-by: Eric Anholt <eric@anholt.net>
2013-05-08html: Escape test names in the summary page.Kenneth Graunke1-1/+1
Characters like & and < are need to be escaped in proper HTML/XML. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-05-08html: Rework colgroup generation.Kenneth Graunke1-2/+1
There's no need to specify width="50pt" on every <col/>; we can easily specify a width for all but the first column with CSS3. At that point, using a template file that contains only <col/> seems absurd; just repeat that the right number of times in the python code. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-05-08html: Remove the index_groupgroup template.Kenneth Graunke1-4/+1
It was entirely empty. Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-05-08html: Use CSS3 for zebra-striping the tables.Kenneth Graunke1-15/+2
Most browsers support the :nth-child selector by now, which allows us to zebra-stripe the tables in CSS rather than making the python code annotate every row with an 'a' or 'b' class. While we're at it, stripe the pass/fail/crash results too. Based on some CSS fragments, this was the intent all along, but didn't work. This also changes the striping slightly: it now stripes purely based on whether the row is even/odd, rather than striping on a per-group basis. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-05-08html: Use CSS for indenting table rows rather than colspan.Kenneth Graunke1-6/+4
Previously, we indented groups of tests by adding 10 columns of whitespace to the table and adding colspan. This is pretty ugly; we really should use CSS for things like this. The new CSS-based approach should work with deeper nesting levels, and simplifies the tables. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
2013-04-21piglit-summary-html.py: replace getopt with argparseDylan Baker1-62/+29
Less code, easier to read and more standard, and free help messages. V2: Changed args.overwrite to 'store_true' per Ken Graunke Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2012-10-10Generate a html summary of skipped testsMarek Olšák1-1/+5
Reviewed-by: Brian Paul <brianp@vmware.com>
2012-04-23framework: Remove 'abort' and 'trap' results in favor of 'crash'.Kenneth Graunke1-8/+2
While distinguishing between 'fail' and 'crash' in extremely useful, I've never encountered a situation where 'abort' or 'trap' offers more insight than simply calling it a 'crash'. We may as well simplify things a bit. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Acked-by: Marek Olšák <maraeo@gmail.com>
2012-03-26html: Use isinstance(x, basestring) rather than "str" and "unicode."Kenneth Graunke1-1/+1
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
2012-02-13framework: Remove checking for the pre-JSON piglit file format.Kenneth Graunke1-4/+1
It was polite to print a message shortly after the conversion, but at this point, it's basically dead code.
2011-10-13Make Python scripts independent of the current working directoryMatěj Cepl1-2/+3
The main purpose of this patch is to make piglit independent of the current working directory, so it is possible to package piglit as a RPM package (with binaries symlinked to /usr/bin, most of the files in read-only /usr/lib*/piglit directory, and results somewhere else). So it is now possible to run $ piglit-run tests/quick-driver.tests /tmp/piglit and then with this command $ piglit-summary-html --overwrite /tmp/piglit/results /tmp/piglit/main generate a report in /tmp/piglit/results/index.html & al. Signed-off-by: Matěj Cepl <mcepl@redhat.com> Reviewed-by: Paul Berry <stereotype441@gmail.com>
2011-10-05Don't add slash to the start of HREFs of individual test results.Matěj Cepl1-1/+7
Otherwise the browser thinks they are in the root of the current hierarchy, whereas they are in the same folder as index.html. Signed-off-by: Matěj Cepl <mcepl@redhat.com> Reviewed-by: Paul Berry <stereotype441@gmail.com>
2011-09-17piglit-summary-html: Use map() to speed up loop in buildDetailValue()Tom Stellard1-5/+5
I use piglit to capture shaders stats, which generates much more output than typical usage (~70,000 lines for texCombine). This commit reduces the time it takes to generate html for one set of results from 6m 22s to 1.7s. Tested-by: Ian Romanick <ian.d.romanick@intel.com>
2011-08-11Changed piglit-summary-html to explicitly encode its output as UTF-8.Paul Berry1-1/+1
Previously piglit-summary-html didn't explicitly encode its output at all--it relied on the default behavior of the Python file.write() method (which, in Python 2.x, is to write 8-bit strings verbatim and to encode unicode strings using ASCII). This meant that if a non-ASCII character appeared in any of the test data, piglit-summary-html would fail with an exception. This patch changes piglit-summary-html to explicitly encode its output using UTF-8. It also updates all of the HTML templates to specify UTF-8 as the encoding, so that when results are viewed in a web browser, non-ASCII characters will display correctly.
2011-07-14piglit-summary-html: Skip result files in old format and emit warningChad Versace1-1/+6
This was requested by Ian Romanick. Signed-off-by: Chad Versace <chad@chad-versace.us>
2011-07-14piglit-summary-html: Remove dead option --fullChad Versace1-7/+3
Option --full was ignored because committ 5556f8d1790aaf664c5e8dd62e12afb983992b1a framework: Replace custom serialization format with json removed generation of the summary file; only the full result file is generated. Signed-off-by: Chad Versace <chad@chad-versace.us>
2011-07-14framework: Replace custom serialization format with jsonChad Versace1-5/+13
The results file produced by piglit-run.py contains a serialized TestrunResult, and the serialization format was horridly homebrew. This commit replaces that insanity with json. Benefits: - Net loss of 113 lines of code (ignoring comments and empty lines). - By using the json module in the Python standard library, serializing and unserializing is nearly as simple as `json.dump(object, file)` and `json.load(object, file)`. - By using a format that is easy to manipulate, it is now simple to extend Piglit to allow users to embed custom data into the results file. As a side effect, the summary file is no longer needed, so it is no longer produced. Reviewed-by: Paul Berry <stereotype441@gmail.com> Signed-off-by: Chad Versace <chad@chad-versace.us>
2011-04-06core: generate a summary of fixesMarek Olšák1-1/+5
Same as regressions if you reverse the order of columns.
2011-04-06core: generate a summary of regressionsMarek Olšák1-1/+5
This is basically a subset of 'changes'. The regression is if a test result changes from either 'pass' or 'skip' to something other than 'pass' and 'skip'. Thus the relation is: { pass, skip } -> { warn, fail, trap, abort, crash } Acked-by: Kenneth Graunke <kenneth@whitecape.org>
2011-04-06core: add new status trap, abort, and crash printed as black lines in summaryMarek Olšák1-3/+12
To distiguish between 'fail' and unexpected termination. Acked-by: Ian Romanick <ian.d.romanick@intel.com> Acked-by: Eric Anholt <eric@anholt.net> Acked-by: Chad Versace <chad.versace@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2009-08-23Python: Add spaces after commas.Vinson Lee1-6/+6
2009-08-21Python: Remove unused imports.Vinson Lee1-1/+0
2009-04-15Use os.path.join() for directory/file paths.Vinson Lee1-20/+20
2008-08-27piglit-summary-html.py: Add glxinfo/lspci output to HTML summariesNicolai Haehnle1-1/+11
2008-06-30piglit-summary-html.py: Some more features for automated summariesNicolai Haehnle1-6/+35
2008-06-12Generate abbreviated resultsNicolai Haehnle1-2/+6
The results files can get rather huge when tests fail, because tests like glean/blendFunc output a lot of debugging data, which we all record. Now, we generate an additional .../summary file, in which the info string is simply truncated. Pretty stupid, but it should give enough info to get an idea of the rough kind of failure. Add a new option for piglit-summary-html.py, to choose between full or abbreviated info when both are present.
2008-02-21Fix path generation for test result html.Eric Anholt1-1/+1
2008-02-21Use /usr/bin/env python instead of /usr/bin/python for portability.Eric Anholt1-1/+1
2007-04-03Refactor summary generationNicolai Haehnle1-180/+43
2007-04-03Nonsensical reference in licenseNicolai Haehnle1-1/+1
2007-03-26Add some cgi.escapesNicolai Haehnle1-2/+3
2007-03-25piglit: Fix calls to exit()Jeff Muizelaar1-1/+1
Fix calls to exit() to use sys.exit(). 'exit' is a string. We want to use sys.exit instead. Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2007-03-25Fetch templates relative to piglit-summary-html.pyNicolai Haehnle1-16/+18
2007-03-24Initial commitNicolai Hähnle1-0/+414