On Saturday, June 21, 2014 09:43:56 AM Ilia Mirkin wrote: > On Sat, Jun 21, 2014 at 8:06 AM, Dylan Baker <[email protected]> wrote: > > 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 <[email protected]> > > --- > > > > 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 ++++---- > > You forgot > > piglit-print-commands.py > > > 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() > > Perhaps rename this to OPTS?
Yeah, I was just being lazy... > > > __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 > > and rename all these too... > > Anyways, not super-required, if you don't feel like doing it, you still get > my > > Reviewed-by: Ilia Mirkin <[email protected]> > > once you also update piglit-print-commands.py. > > > """ > > 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 > > [email protected] > > http://lists.freedesktop.org/mailman/listinfo/piglit
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
