зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1555792: Add --setpref option to many test types r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D37503 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
a381540292
Коммит
5fe8caac32
|
@ -1044,7 +1044,8 @@ def ensure_spi_disabled_on_all_but_spi(config, tests):
|
|||
has_setpref = ('gtest' not in test['suite'] and
|
||||
'cppunit' not in test['suite'] and
|
||||
'jittest' not in test['suite'] and
|
||||
'junit' not in test['suite'])
|
||||
'junit' not in test['suite'] and
|
||||
'raptor' not in test['suite'])
|
||||
|
||||
if has_setpref and variant != 'socketprocess':
|
||||
test['mozharness']['extra-options'].append(
|
||||
|
|
|
@ -285,8 +285,9 @@ class BaseMarionetteArguments(ArgumentParser):
|
|||
help='profile to use when launching the gecko process. If not passed, '
|
||||
'then a profile will be constructed and used',
|
||||
type=dir_path)
|
||||
self.add_argument('--pref',
|
||||
self.add_argument('--setpref',
|
||||
action='append',
|
||||
metavar='PREF=VALUE',
|
||||
dest='prefs_args',
|
||||
help="A preference to set. Must be a key-value pair separated by a ':'.")
|
||||
self.add_argument('--preferences',
|
||||
|
@ -414,7 +415,7 @@ class BaseMarionetteArguments(ArgumentParser):
|
|||
for prefs_file in prefs_files:
|
||||
prefs.add_file(prefs_file)
|
||||
|
||||
separator = ':'
|
||||
separator = '='
|
||||
cli_prefs = []
|
||||
if prefs_args:
|
||||
misformatted = []
|
||||
|
|
|
@ -49,6 +49,12 @@ firefox_ui_tests_config_options = [
|
|||
'default': True,
|
||||
'help': 'Disable multi-process (e10s) mode when running tests.',
|
||||
}],
|
||||
[["--setpref"], {
|
||||
'dest': 'extra_prefs',
|
||||
'action': 'append',
|
||||
'default': [],
|
||||
'help': 'Extra user prefs.',
|
||||
}],
|
||||
[['--symbols-path=SYMBOLS_PATH'], {
|
||||
'dest': 'symbols_path',
|
||||
'help': 'absolute path to directory containing breakpad '
|
||||
|
@ -243,6 +249,8 @@ class FirefoxUITests(TestingMixin, VCSToolsScript, CodeCoverageMixin):
|
|||
if not self.config.get('e10s'):
|
||||
cmd.append('--disable-e10s')
|
||||
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.config.get('extra_prefs')])
|
||||
|
||||
if self.symbols_url:
|
||||
cmd.extend(['--symbols-path', self.symbols_url])
|
||||
|
||||
|
|
|
@ -103,6 +103,14 @@ class AndroidEmulatorTest(TestingMixin, BaseScript, MozbaseMixin, CodeCoverageMi
|
|||
"help": "Repeat the tests the given number of times. Supported "
|
||||
"by mochitest, reftest, crashtest, ignored otherwise."
|
||||
}
|
||||
], [
|
||||
['--setpref'],
|
||||
{"action": "append",
|
||||
"metavar": "PREF=VALUE",
|
||||
"dest": "extra_prefs",
|
||||
"default": [],
|
||||
"help": "Extra user prefs.",
|
||||
}
|
||||
]] + copy.deepcopy(testing_config_options) + \
|
||||
copy.deepcopy(code_coverage_config_options)
|
||||
|
||||
|
@ -151,6 +159,7 @@ class AndroidEmulatorTest(TestingMixin, BaseScript, MozbaseMixin, CodeCoverageMi
|
|||
# AndroidMixin uses this when launching the emulator. We only want
|
||||
# GLES3 if we're running WebRender
|
||||
self.use_gles3 = True
|
||||
self.extra_prefs = c.get('extra_prefs')
|
||||
|
||||
def query_abs_dirs(self):
|
||||
if self.abs_dirs:
|
||||
|
@ -286,6 +295,8 @@ class AndroidEmulatorTest(TestingMixin, BaseScript, MozbaseMixin, CodeCoverageMi
|
|||
else:
|
||||
self.log("--repeat not supported in {}".format(category), level=WARNING)
|
||||
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.extra_prefs])
|
||||
|
||||
if not (self.verify_enabled or self.per_test_coverage):
|
||||
if user_paths:
|
||||
cmd.extend(user_paths)
|
||||
|
|
|
@ -94,6 +94,13 @@ class AndroidHardwareTest(TestingMixin, BaseScript, MozbaseMixin,
|
|||
"help": "Repeat the tests the given number of times. Supported "
|
||||
"by mochitest, reftest, crashtest, ignored otherwise."
|
||||
}
|
||||
], [
|
||||
['--setpref', ],
|
||||
{"action": "append",
|
||||
"dest": "extra_prefs",
|
||||
"default": [],
|
||||
"help": "Extra user prefs.",
|
||||
}
|
||||
]] + copy.deepcopy(testing_config_options)
|
||||
|
||||
def __init__(self, require_config_file=False):
|
||||
|
@ -136,6 +143,7 @@ class AndroidHardwareTest(TestingMixin, BaseScript, MozbaseMixin,
|
|||
self.log_tbpl_level = c.get('log_tbpl_level')
|
||||
self.e10s = c.get('e10s')
|
||||
self.enable_webrender = c.get('enable_webrender')
|
||||
self.extra_prefs = c.get('extra_prefs')
|
||||
|
||||
def query_abs_dirs(self):
|
||||
if self.abs_dirs:
|
||||
|
@ -278,6 +286,8 @@ class AndroidHardwareTest(TestingMixin, BaseScript, MozbaseMixin,
|
|||
if self.enable_webrender:
|
||||
cmd.extend(['--enable-webrender'])
|
||||
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.extra_prefs])
|
||||
|
||||
try_options, try_tests = self.try_args(self.test_suite)
|
||||
cmd.extend(try_options)
|
||||
if not self.verify_enabled and not self.per_test_coverage:
|
||||
|
|
|
@ -44,6 +44,12 @@ class AWSY(TestingMixin, MercurialScript, TooltoolMixin, CodeCoverageMixin):
|
|||
"default": True,
|
||||
"help": "Run tests without multiple processes (e10s). (Desktop builds only)",
|
||||
}],
|
||||
[["--setpref"],
|
||||
{"action": "append",
|
||||
"dest": "extra_prefs",
|
||||
"default": [],
|
||||
"help": "Extra user prefs.",
|
||||
}],
|
||||
[["--single-stylo-traversal"],
|
||||
{"action": "store_true",
|
||||
"dest": "single_stylo_traversal",
|
||||
|
@ -225,6 +231,7 @@ class AWSY(TestingMixin, MercurialScript, TooltoolMixin, CodeCoverageMixin):
|
|||
cmd.append("--profile=%s" % (os.path.join(dirs['abs_work_dir'], 'profile')))
|
||||
if not self.config['e10s']:
|
||||
cmd.append('--disable-e10s')
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.config['extra_prefs']])
|
||||
cmd.append('--gecko-log=%s' % os.path.join(dirs["abs_blob_upload_dir"],
|
||||
'gecko.log'))
|
||||
# TestingMixin._download_and_extract_symbols() should set
|
||||
|
@ -243,7 +250,7 @@ class AWSY(TestingMixin, MercurialScript, TooltoolMixin, CodeCoverageMixin):
|
|||
|
||||
cmd.append("--preferences=%s" % os.path.join(self.awsy_path, "conf", prefs_file))
|
||||
if dmd_enabled:
|
||||
cmd.append("--pref=security.sandbox.content.level:0")
|
||||
cmd.append("--setpref=security.sandbox.content.level=0")
|
||||
cmd.append(test_file)
|
||||
|
||||
if self.config['enable_webrender']:
|
||||
|
|
|
@ -90,6 +90,14 @@ class MarionetteTest(TestingMixin, MercurialScript, TransferMixin,
|
|||
"default": True,
|
||||
"help": "Run tests without multiple processes (e10s). (Desktop builds only)",
|
||||
}
|
||||
], [
|
||||
["--setpref"],
|
||||
{"action": "append",
|
||||
"metavar": "PREF=VALUE",
|
||||
"dest": "extra_prefs",
|
||||
"default": [],
|
||||
"help": "Extra user prefs.",
|
||||
}
|
||||
], [
|
||||
["--headless"],
|
||||
{"action": "store_true",
|
||||
|
@ -309,6 +317,8 @@ class MarionetteTest(TestingMixin, MercurialScript, TransferMixin,
|
|||
if self.config['enable_webrender']:
|
||||
cmd.append('--enable-webrender')
|
||||
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.config['extra_prefs']])
|
||||
|
||||
cmd.append('--gecko-log=-')
|
||||
|
||||
if self.config.get("structured_output"):
|
||||
|
|
|
@ -51,6 +51,12 @@ telemetry_tests_config_options = [
|
|||
'default': True,
|
||||
'help': 'Disable multi-process (e10s) mode when running tests.',
|
||||
}],
|
||||
[["--setpref"], {
|
||||
'dest': 'extra_prefs',
|
||||
'action': 'append',
|
||||
'default': [],
|
||||
'help': 'Extra user prefs.',
|
||||
}],
|
||||
[['--symbols-path=SYMBOLS_PATH'], {
|
||||
'dest': 'symbols_path',
|
||||
'help': 'absolute path to directory containing breakpad '
|
||||
|
@ -165,6 +171,11 @@ class TelemetryTests(TestingMixin, VCSToolsScript, CodeCoverageMixin):
|
|||
if self.config['enable_webrender']:
|
||||
cmd.extend(['--enable-webrender'])
|
||||
|
||||
cmd.extend(['--setpref={}'.format(p) for p in self.config['extra_prefs']])
|
||||
|
||||
if not self.config["e10s"]:
|
||||
cmd.append("--disable-e10s")
|
||||
|
||||
parser = StructuredOutputParser(config=self.config,
|
||||
log_obj=self.log_obj,
|
||||
strict=False)
|
||||
|
|
Загрузка…
Ссылка в новой задаче