Environment doesn't really describe what the class is (although, honestly it's a pretty bad class design), but Options comes much closer to what it is.
Signed-off-by: Dylan Baker <baker.dyla...@gmail.com> --- framework/core.py | 17 +++++++++++++++-- framework/exectest.py | 6 +++--- framework/profile.py | 4 ++-- framework/programs/run.py | 30 +++++++++++++++--------------- framework/tests/core_tests.py | 2 +- framework/tests/profile_tests.py | 8 ++++---- 6 files changed, 40 insertions(+), 27 deletions(-) diff --git a/framework/core.py b/framework/core.py index 6f476d0..2005a4e 100644 --- a/framework/core.py +++ b/framework/core.py @@ -40,7 +40,7 @@ import framework.status as status from .threads import synchronized_self __all__ = ['PIGLIT_CONFIG', - 'Environment', + 'Options', 'TestrunResult', 'TestResult', 'JSONWriter', @@ -326,7 +326,20 @@ class TestrunResult: json.dump(raw_dict, file, indent=JSONWriter.INDENT) -class Environment: +class Options(object): + """ Contains options for a piglit run + + Options are as follows: + concurrent -- True if concurrency is to be used + execute -- False for dry run + filter -- list of compiled regex which include exclusively tests that match + exclude_filter -- list of compiled regex which exclude tests that match + valgrind -- True if valgrind is to be used + dmesg -- True if dmesg checking is desired. This forces concurrency off + verbose -- verbosity level. + env -- environment variables set for each test before run + + """ def __init__(self, concurrent=True, execute=True, include_filter=None, exclude_filter=None, valgrind=False, dmesg=False, verbose=False): diff --git a/framework/exectest.py b/framework/exectest.py index ad6f2ae..d7cad6e 100644 --- a/framework/exectest.py +++ b/framework/exectest.py @@ -28,7 +28,7 @@ import time import sys import traceback -from .core import TestResult, Environment +from .core import TestResult, Options __all__ = ['Test', @@ -49,7 +49,7 @@ else: class Test(object): - ENV = Environment() + ENV = Options() __slots__ = ['ENV', 'run_concurrent', 'env', 'result', 'cwd', '_command', '_test_hook_execute_run'] @@ -191,7 +191,7 @@ class Test(object): def get_command_result(self): # Set the environment for the tests. Use the default settings created - # in the Environment constructor first, then use any user defined + # in the Options constructor first, then use any user defined # variables, finally, use any variables set for the test in the test # profile fullenv = self.ENV.env.copy() diff --git a/framework/profile.py b/framework/profile.py index affd4b6..ba481a3 100644 --- a/framework/profile.py +++ b/framework/profile.py @@ -121,7 +121,7 @@ class TestProfile(object): runs it's own filters plus the filters in the self.filters name Arguments: - env - a core.Environment instance + env - a core.Options instance """ self._flatten_group_hierarchy() @@ -181,7 +181,7 @@ class TestProfile(object): Finally it will print a final summary of the tests Arguments: - env -- a core.Environment instance + env -- a core.Options instance json_writer -- a core.JSONWriter instance """ diff --git a/framework/programs/run.py b/framework/programs/run.py index 0189e48..6008eb5 100644 --- a/framework/programs/run.py +++ b/framework/programs/run.py @@ -129,14 +129,14 @@ def run(input_): core.PIGLIT_CONFIG.read(os.path.abspath( os.path.join(os.path.dirname(__file__), 'piglit.conf'))) - # Pass arguments into Environment - env = core.Environment(concurrent=args.concurrency, - exclude_filter=args.exclude_tests, - include_filter=args.include_tests, - execute=args.execute, - valgrind=args.valgrind, - dmesg=args.dmesg, - verbose=args.verbose) + # Pass arguments into Options + env = core.Options(concurrent=args.concurrency, + exclude_filter=args.exclude_tests, + include_filter=args.include_tests, + execute=args.execute, + valgrind=args.valgrind, + dmesg=args.dmesg, + verbose=args.verbose) # Set the platform to pass to waffle if args.platform: @@ -211,13 +211,13 @@ def resume(input_): args = parser.parse_args(input_) results = core.load_results(args.results_path) - env = core.Environment(concurrent=results.options['concurrent'], - exclude_filter=results.options['exclude_filter'], - include_filter=results.options['filter'], - execute=results.options['execute'], - valgrind=results.options['valgrind'], - dmesg=results.options['dmesg'], - verbose=results.options['verbose']) + env = core.Options(concurrent=results.options['concurrent'], + exclude_filter=results.options['exclude_filter'], + include_filter=results.options['filter'], + execute=results.options['execute'], + valgrind=results.options['valgrind'], + dmesg=results.options['dmesg'], + verbose=results.options['verbose']) if results.options.get('platform'): env.env['PIGLIT_PLATFORM'] = results.options['platform'] diff --git a/framework/tests/core_tests.py b/framework/tests/core_tests.py index 44462ce..15858b8 100644 --- a/framework/tests/core_tests.py +++ b/framework/tests/core_tests.py @@ -49,7 +49,7 @@ def test_generate_initialize(): """ yieldable = check_initialize - for target in [core.Environment, core.TestrunResult, core.TestResult, + for target in [core.Options, core.TestrunResult, core.TestResult, core.PiglitJSONEncoder]: yieldable.description = "Test that {} initializes".format( target.__name__) diff --git a/framework/tests/profile_tests.py b/framework/tests/profile_tests.py index de4730f..c861cfc 100644 --- a/framework/tests/profile_tests.py +++ b/framework/tests/profile_tests.py @@ -211,7 +211,7 @@ def test_matches_filter_mar_1(data): Nothing should be filtered. """ - env = core.Environment() + env = core.Options() profile_ = profile.TestProfile() profile_.test_list = data @@ -223,7 +223,7 @@ def test_matches_filter_mar_1(data): @nt.nottest def test_matches_filter_mar_2(data): """ Tests 'not env.filter or matches_any_regex() mar is False""" - env = core.Environment(include_filter=['test5']) + env = core.Options(include_filter=['test5']) profile_ = profile.TestProfile() profile_.test_list = data @@ -237,7 +237,7 @@ def test_matches_filter_mar_2(data): @nt.nottest def test_matches_env_exclude(data): """ Tests 'not path in env.exclude_tests """ - env = core.Environment() + env = core.Options() env.exclude_tests.add('group3/test5') profile_ = profile.TestProfile() @@ -253,7 +253,7 @@ def test_matches_env_exclude(data): @nt.nottest def test_matches_exclude_mar(data): """ Tests 'not matches_any_regexp() """ - env = core.Environment(exclude_filter=['test5']) + env = core.Options(exclude_filter=['test5']) profile_ = profile.TestProfile() profile_.test_list = data -- 2.0.0 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit