Bug 1191324 - Extend Marionette to allow automation of telemetry tests; r?maja_zf
Changed directory structure, not yet files.
MozReview-Commit-ID: S6UZ6VCfit
rename from testing/marionette/harness/marionette/runner/base2.py
rename to testing/marionette/harness/session/runner/base2.py
rename from testing/marionette/harness/marionette/runtests2.py
rename to testing/marionette/harness/session/runtests.py
rename from testing/marionette/harness/marionette/marionette2_test.py
rename to testing/marionette/harness/session/session_test.py
rename from testing/marionette/harness/marionette/tests2/test_marionette2.py
rename to testing/marionette/harness/session/tests/test_marionette2.py
rename from testing/marionette/harness/marionette/tests2/unit-tests.ini
rename to testing/marionette/harness/session/tests/unit-tests.ini
--- a/testing/marionette/mach_commands.py
+++ b/testing/marionette/mach_commands.py
@@ -68,16 +68,56 @@ def run_marionette(tests, b2g_path=None,
args,
{"mach": sys.stdout})
failed = MarionetteHarness(MarionetteTestRunner, args=args).run()
if failed > 0:
return 1
else:
return 0
+def setup_argument_parser2():
+ from marionette.runner.base2 import BaseMarionette2Arguments
+ return BaseMarionette2Arguments()
+
+def run_marionette2(tests, testtype=None,
+ binary=None, topsrcdir=None, **kwargs):
+ from mozlog.structured import commandline
+
+ from marionette.runtests2 import (
+ Marionette2TestRunner,
+ BaseMarionette2Arguments,
+ Marionette2Harness
+ )
+
+ parser = BaseMarionette2Arguments()
+ commandline.add_logging_group(parser)
+ args = parser.parse_args()
+
+ if not tests:
+ tests = [os.path.join(topsrcdir,
+ 'testing/marionette/harness/marionette/tests2/unit-tests.ini')]
+ args.tests = tests
+
+ args.binary = binary
+ path, exe = os.path.split(args.binary)
+
+ for k, v in kwargs.iteritems():
+ setattr(args, k, v)
+
+ parser.verify_usage(args)
+
+ args.logger = commandline.setup_logging("Marionette Unit Tests",
+ args,
+ {"mach": sys.stdout})
+ failed = Marionette2Harness(Marionette2TestRunner, args=args).run()
+ if failed > 0:
+ return 1
+ else:
+ return 0
+
@CommandProvider
class B2GCommands(MachCommandBase):
def __init__(self, context):
MachCommandBase.__init__(self, context)
for attr in ('b2g_home', 'device_name'):
setattr(self, attr, getattr(context, attr, None))
@Command('marionette-webapi', category='testing',
@@ -119,65 +159,22 @@ class MachCommands(MachCommandBase):
tests = []
for obj in kwargs['test_objects']:
tests.append(obj['file_relpath'])
del kwargs['test_objects']
kwargs['binary'] = self.get_binary_path('app')
return run_marionette(tests, topsrcdir=self.topsrcdir, **kwargs)
-def setup_argument_parser2():
- from marionette.runner.base2 import BaseMarionette2Arguments
- return BaseMarionette2Arguments()
-
-def run_marionette2(tests, testtype=None,
- binary=None, topsrcdir=None, **kwargs):
- from mozlog.structured import commandline
-
- from marionette.runtests2 import (
- Marionette2TestRunner,
- BaseMarionette2Arguments,
- Marionette2Harness
- )
-
- parser = BaseMarionette2Arguments()
- commandline.add_logging_group(parser)
- args = parser.parse_args()
-
- if not tests:
- tests = [os.path.join(topsrcdir,
- 'testing/marionette/harness/marionette/tests2/unit-tests.ini')]
- args.tests = tests
-
- args.binary = binary
- path, exe = os.path.split(args.binary)
-
- for k, v in kwargs.iteritems():
- setattr(args, k, v)
-
- parser.verify_usage(args)
-
- args.logger = commandline.setup_logging("Marionette Unit Tests",
- args,
- {"mach": sys.stdout})
- failed = Marionette2Harness(Marionette2TestRunner, args=args).run()
- if failed > 0:
- return 1
- else:
- return 0
-
-@CommandProvider
-class MachCommands2(MachCommandBase):
- @Command('marionette2-test', category='testing',
- description='Run a Marionette2 test (Check UI or the internal JavaScript using marionette).',
+ @Command('marionette-session-test', category='testing',
+ description='Run a Marionette-Session test (Check Telemetry using marionette).',
conditions=[conditions.is_firefox],
parser=setup_argument_parser2,
)
def run_marionette2_test(self, tests, **kwargs):
if 'test_objects' in kwargs:
tests = []
for obj in kwargs['test_objects']:
tests.append(obj['file_relpath'])
del kwargs['test_objects']
- from pudb import set_trace; set_trace() #AR TODO: remove this line
kwargs['binary'] = self.get_binary_path('app')
return run_marionette2(tests, topsrcdir=self.topsrcdir, **kwargs)