[Piglit] [PATCH v3 0/28] Various cleanups for profiles
Dylan Baker
dylan at pnwbakers.com
Mon Oct 31 17:49:56 UTC 2016
This series is a large collections of cleanups for th profile module and
particularly for the TestProfile and TestDict classes. These began their
lives as the start of a series to serialize the TestDict at compile time
and to move startup overhead.
This series is just a bunch of cleanups and removes a *lot* of code, and
simplifies a number of things, as well as fixing a few long standing
bugs in piglit. The biggest of these fixes is that it is now possible to
pass two derivatives of all.py (say glslparser.py and shader.py) at the
same time.
Changes in v2:
- Rebase on master, including one patch that was part of this
series, but was merged since it fixed a bug
- Don't add filters that do nothing in framework/programs/run.py.
This doesn't really affect this series, but it does have
ramifications in some other work that isn't ready to go to the
list yet.
Changes in v3:
- Don't close the pools until all of the profiles have finished
running
- Don't remove the _{pre,post}_run_hook methods, instead rename them
to setup and teardown, making them public. They actually are used
by XTS and IGT, which I didn't notice. I still think I'd like to
get rid of them, but not while they're in use and there isn't an
obviously good way to do so.
- Store images in the JSON file, rather than externally
- the XTS profile uses a temporary directory to store it's results,
which (along with the previous change) removes the need to pass
the results directory to its tests.
- Fix RegexFilter to work for both the include filter (-t) and the
exclude filter (-x), it previously only worked for one or the
other. Also add tests.
Dylan Baker (28):
framework/profile: make run hooks public
framework/profile: Drop unneeded except
framework: Split the run method out of profile.
framework: remove concurrent from OPTIONS, pass directly to profile
[RFC] framework: Use an enum for concurrency.
framework/programs/run: Remove use of TestrunResult
framework/profile: add a copy method to profile
tests: Copy profiles to allow them to be run in parallel
framework/programs/run: Only allow --test-list if one profile
framework/profile: Don't merge profiles
framework/programs/run: remove redundant list() around comprehension
framework/profile: Drop TestProfile.filter_tests
framework/programs/run: import framework.profile as profile
framework: Remove exclude_tests from options.OPTIONS
framework: Pull {include,exclude}_filter out of Options
framework/profile: Factor out check_all closure
framework/profile: Don't alter the TestProfile before running
framework/profile: Update __all__
framework/profile: Update docstrings
framework/profile: Split try/except block
framework/profile: replace Testprofile.{dmesg,monitoring} with dict
framework/profile: remove unused argument from TestProfile.group_manager
framework/profile: Move group_manager from TestProfile to TestDict
framework/test/base: Remove timeout parameter
framework/test/glsl_parser_test.py: split the parser out of the class
tests/all.py: Make add_fbo_depthstencil_tests take an adder
framework: Embed images in results.
tests/xts: Use a tmpdir for output
framework/backends/json.py | 36 +-
framework/options.py | 144 +--
framework/profile.py | 566 +++------
framework/programs/print_commands.py | 13 +-
framework/programs/run.py | 127 +-
framework/results.py | 7 +-
framework/test/base.py | 36 +-
framework/test/glsl_parser_test.py | 85 +-
templates/test_result.mako | 8 +-
tests/all.py | 605 ++++------
tests/cl.py | 8 +-
tests/cpu.py | 6 +-
tests/glslparser.py | 6 +-
tests/gpu.py | 8 +-
tests/igt.py | 10 +-
tests/llvmpipe.py | 4 +-
tests/quick.py | 14 +-
tests/quick_cl.py | 4 +-
tests/sanity.py | 2 +-
tests/shader.py | 6 +-
tests/xts-render.py | 9 +-
tests/xts.py | 81 +-
tox.ini | 1 +-
unittests/framework/backends/images/LICENSE | 6 +-
unittests/framework/backends/images/openlogo-nd-25.png | Bin 0 -> 409 bytes
unittests/framework/backends/images/ref.png | 1 +-
unittests/framework/backends/images/render.png | 1 +-
unittests/framework/backends/schema/piglit-10.json | 135 ++-
unittests/framework/backends/shared.py | 2 +-
unittests/framework/backends/test_json_update.py | 101 ++-
unittests/framework/test/test_base.py | 14 +-
unittests/framework/test/test_shader_test.py | 2 +-
unittests/framework/test_options.py | 178 +---
unittests/framework/test_profile.py | 363 ++----
34 files changed, 1207 insertions(+), 1382 deletions(-)
create mode 100644 unittests/framework/backends/images/LICENSE
create mode 100644 unittests/framework/backends/images/openlogo-nd-25.png
create mode 120000 unittests/framework/backends/images/ref.png
create mode 120000 unittests/framework/backends/images/render.png
create mode 100644 unittests/framework/backends/schema/piglit-10.json
--
git-series 0.8.10
More information about the Piglit
mailing list