Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
This is equivalent but simpler.
Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
|
|
Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
It was entirely empty.
Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
|
|
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>
|
|
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>
|
|
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>
|
|
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
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>
|
|
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
It was polite to print a message shortly after the conversion, but at
this point, it's basically dead code.
|
|
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>
|
|
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>
|
|
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>
|
|
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.
|
|
This was requested by Ian Romanick.
Signed-off-by: Chad Versace <chad@chad-versace.us>
|
|
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>
|
|
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>
|
|
Same as regressions if you reverse the order of columns.
|
|
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>
|
|
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>
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
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>
|
|
|
|
|