[Piglit] [PATCH 00/13] Add shader and glslparser tests with loop
Dylan Baker
baker.dylan.c at gmail.com
Thu Feb 19 10:39:20 PST 2015
Bump.
On Thu, Feb 12, 2015 at 10:38:36AM -0800, Dylan Baker wrote:
> This is a second set of patches from my rather lengthy RFC from a few
> weeks ago.
>
> This one removes the need for add_shader_test_dir and
> import_glsl_parser_tests, and replaces them with a loop at the top of
> all.py. As groundwork it replaces the TestProfile.tests dictionary with
> a new Tree object, which is like a dictionary but it automatically
> grows branches whenever they are used, removing the need for the very
> common pattern:
> foobar = {}
> spec['foo'] = {}
> spec['foo']['bar'] = {}
> spec['foo']['bar']['foobar'] = foobar
>
> And allowing it to be replaced with
> foobar = spec['foo']['bar']['foobar']
>
> This makes some additional changes to the json on disk format, which are
> explained in the later patches, with the only really problem being that
> in order to make all of this work clean the final 3 patches will need to
> combine into one very large patch, or bisecting may not work.
>
> If someone has a better idea for how to do this (other than introducing
> multiple json version bumps), I'd be happy to make those changes.
>
> ultimately this removes a lot of code from hot paths, and adds code for
> updating the json results version, which isn't a particularly hot path
> and should be missed the majority of the time.
>
> Dylan Baker (13):
> profiles: add new profiles that only run specific test classes.
> profile.py: Use a Tree structure for Profile.tests
> profile.py: Lower all test keys before getting and setting.
> shader_test.py: Removed recursive keyword from add_shader_test_dir
> shader_test.py: remove add_shader_test
> shader_test.py: use os.path.splitext instead of rsplit('.')
> shader_test.py: use os.walk in add_shader_test_Dir
> shader_test.py: convert add_shader_test_dir to use a flat group
> all.py: Replace use of add_glsl_parser_test with import_glsl_parser_test
> glsl_parser_test.py: remove add_glsl_parser_test
> all.py: replace add_shader_test_dir with loop in all.py
> framework: update json version to v4 to fix test changes
> all.py: replace import_glsl_parser_test with loop search
>
> README | 6 +
> framework/backends/json.py | 2 +-
> framework/profile.py | 63 ++-
> framework/results.py | 55 ++
> framework/test/glsl_parser_test.py | 69 +--
> framework/test/shader_test.py | 34 --
> framework/tests/glsl_parser_test_tests.py | 4 +-
> framework/tests/profile_tests.py | 70 ++-
> framework/tests/results_v2_tests.py | 92 ++++
> framework/tests/results_v3_tests.py | 134 +++++
> framework/tests/shader_test_tests.py | 11 -
> framework/tests/utils.py | 48 ++
> tests/all.py | 873 ++++++++----------------------
> tests/cl.py | 25 +-
> tests/glslparser.py | 8 +
> tests/gpu.py | 6 +-
> tests/quick.py | 9 +-
> tests/shader.py | 8 +
> 18 files changed, 701 insertions(+), 816 deletions(-)
> create mode 100644 framework/tests/results_v2_tests.py
> create mode 100644 framework/tests/results_v3_tests.py
> create mode 100644 tests/glslparser.py
> create mode 100644 tests/shader.py
>
> --
> 2.3.0
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20150219/7111cd08/attachment.sig>
More information about the Piglit
mailing list