--- a/mozilla-tests/config.py
+++ b/mozilla-tests/config.py
@@ -650,16 +650,36 @@ MOCHITEST_PUSH_E10S = [
'use_mozharness': True,
'script_path': 'scripts/desktop_unittest.py',
'extra_args': ['--mochitest-suite', 'mochitest-push', '--e10s'],
'blob_upload': True,
'script_maxtime': 7200,
}),
]
+MOCHITEST_MEDIA = [
+ ('mochitest-media', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/desktop_unittest.py',
+ 'extra_args': ['--mochitest-suite', 'mochitest-media'],
+ 'blob_upload': True,
+ 'script_maxtime': 7200,
+ }),
+]
+
+MOCHITEST_MEDIA_E10S = [
+ ('mochitest-media-e10s', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/desktop_unittest.py',
+ 'extra_args': ['--mochitest-suite', 'mochitest-media', '--e10s'],
+ 'blob_upload': True,
+ 'script_maxtime': 7200,
+ }),
+]
+
MOCHITEST_WEBGL = [
('mochitest-gl', {
'use_mozharness': True,
'script_path': 'scripts/desktop_unittest.py',
'extra_args': ['--mochitest-suite', 'mochitest-gl'],
'blob_upload': True,
'script_maxtime': 12000,
}),
@@ -921,16 +941,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push-10s': {
'config_files': ["unittests/linux_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
+ 'mochitest-media-10s': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-screenshots': {
'config_files': ["unittests/linux_unittest.py"],
@@ -1044,16 +1070,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
+ 'mochitest-media-10s': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-screenshots': {
'config_files': ["unittests/linux_unittest.py"],
@@ -1172,16 +1204,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
+ 'mochitest-media-10s': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
@@ -1293,16 +1331,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
+ 'mochitest-media-10s': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
@@ -1414,16 +1458,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
+ 'mochitest-media-10s': {
+ 'config_files': ["unittests/linux_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s-browser-chrome': {
'config_files': ["unittests/linux_unittest.py"],
@@ -1539,16 +1589,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-csb': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/win_unittest.py"],
@@ -1653,16 +1709,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-csb': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/win_unittest.py"],
@@ -1773,16 +1835,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-csb': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/win_unittest.py"],
@@ -1904,16 +1972,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-csb': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/win_unittest.py"],
@@ -2018,16 +2092,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/win_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-csb': {
'config_files': ["unittests/win_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/win_unittest.py"],
@@ -2132,16 +2212,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-screenshots': {
'config_files': ["unittests/mac_unittest.py"],
@@ -2241,16 +2327,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-screenshots': {
'config_files': ["unittests/mac_unittest.py"],
@@ -2350,16 +2442,22 @@ PLATFORM_UNITTEST_VARS = {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
+ 'mochitest-media': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
+ 'mochitest-media-e10s': {
+ 'config_files': ["unittests/mac_unittest.py"],
+ },
'mochitest-e10s': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-chrome': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-browser-screenshots': {
'config_files': ["unittests/mac_unittest.py"],
@@ -2716,16 +2814,34 @@ for platform in PLATFORMS.keys():
continue
if platform in BRANCHES[name]['platforms']:
if slave_platform in BRANCHES[name]['platforms'][platform]:
BRANCHES[name]['platforms'][platform][slave_platform]['opt_unittest_suites'] += \
WEB_PLATFORM_TESTS_CHUNKED + WEB_PLATFORM_REFTESTS
+### Tests Enabled in Gecko 47+ ###
+
+# Bug 1242682 - Split out mochitest-media in 47+
+for platform in PLATFORMS.keys():
+ for name, branch in items_at_least(BRANCHES, 'gecko_version', 47):
+ for slave_platform in PLATFORMS[platform]['slave_platforms']:
+ if platform in BRANCHES[name]['platforms']:
+ if slave_platform in BRANCHES[name]['platforms'][platform]:
+ BRANCHES[name]['platforms'][platform][slave_platform]['opt_unittest_suites'] += MOCHITEST_MEDIA
+ BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites']+= MOCHITEST_MEDIA
+
+ # excluding linux64 due to builder limits and it will be in taskcluster soon
+ if platform in ('linux', 'linux64-asan') and platform in BRANCHES[name]['platforms']:
+ BRANCHES[name]['platforms'][platform][slave_platform]['opt_unittest_suites'] += MOCHITEST_MEDIA_E10S
+ if platform in ('linux') and platform in BRANCHES[name]['platforms']:
+ BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites'] += MOCHITEST_MEDIA_E10S
+
+
### Tests Enabled in Gecko 40+ ###
# Bug 1156357 - Enable mochitest-push to ride the trains
for platform in PLATFORMS.keys():
for name, branch in items_at_least(BRANCHES, 'gecko_version', 40):
for slave_platform in PLATFORMS[platform]['slave_platforms']:
if platform in BRANCHES[name]['platforms']:
if slave_platform in BRANCHES[name]['platforms'][platform]:
@@ -2843,17 +2959,17 @@ for name, branch in items_at_least(BRANC
if name not in TWIGS:
branch['platforms'][platform][slave_platform]['debug_unittest_suites'] += \
MOCHITEST_WEBGL_E10S + MOCHITEST_DT_8_E10S + REFTEST_E10S + CRASHTEST_E10S + \
JSREFTEST_E10S + MOCHITEST_PUSH_E10S + WEB_PLATFORM_TESTS_CHUNKED_MORE_E10S + \
WEB_PLATFORM_REFTESTS_E10S
branch['platforms'][platform][slave_platform]['opt_unittest_suites'] += \
MOCHITEST_WEBGL_E10S + MOCHITEST_DT_8_E10S + MOCHITEST_E10S + REFTEST_E10S + \
CRASHTEST_E10S + JSREFTEST_E10S + MOCHITEST_PUSH_E10S + WEB_PLATFORM_TESTS_CHUNKED_E10S + \
- WEB_PLATFORM_REFTESTS_E10S
+ WEB_PLATFORM_REFTESTS_E10S + MOCHITEST_MEDIA_E10S
# Bug 1200437
# Use 7 chunks for m-bc on branches > trunk, excluding twigs, 3 chunks elsewhere
# Bug 1203227
# Use 9 chunks for m-dt on branches > trunk, excluding twigs, 2 or 4 chunks elsewhere
for branch in BRANCHES.keys():
for platform in PLATFORMS.keys():
if platform not in BRANCHES[branch]['platforms']:
--- a/mozilla-tests/mobile_config.py
+++ b/mozilla-tests/mobile_config.py
@@ -3054,16 +3054,70 @@ ANDROID_4_3_MOCHITEST_PUSH = [
],
'blob_upload': True,
'timeout': 2400,
'script_maxtime': 14400,
},
),
]
+# bug 1242682 - Enable DOM media Mochitests on Android Fennec
+ANDROID_4_3_MOCHITEST_MEDIA = [
+ ('mochitest-media-1', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/android_emulator_unittest.py',
+ 'extra_args': [
+ '--cfg', 'android/androidarm_4_3.py',
+ '--test-suite', 'mochitest-media-1',
+ ],
+ 'blob_upload': True,
+ 'timeout': 2400,
+ 'script_maxtime': 14400,
+ },
+ ),
+ ('mochitest-media-2', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/android_emulator_unittest.py',
+ 'extra_args': [
+ '--cfg', 'android/androidarm_4_3.py',
+ '--test-suite', 'mochitest-media-2',
+ ],
+ 'blob_upload': True,
+ 'timeout': 2400,
+ 'script_maxtime': 14400,
+ },
+ ),
+]
+ANDROID_2_3_MOCHITEST_MEDIA = [
+ ('mochitest-media-1', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/android_emulator_unittest.py',
+ 'extra_args': [
+ '--cfg', 'android/androidarm.py',
+ '--test-suite', 'mochitest-media-1',
+ ],
+ 'blob_upload': True,
+ 'timeout': 2400,
+ 'script_maxtime': 14400,
+ },
+ ),
+ ('mochitest-media-2', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/android_emulator_unittest.py',
+ 'extra_args': [
+ '--cfg', 'android/androidarm.py',
+ '--test-suite', 'mochitest-media-2',
+ ],
+ 'blob_upload': True,
+ 'timeout': 2400,
+ 'script_maxtime': 14400,
+ },
+ ),
+]
+
for suite in ANDROID_2_3_MOZHARNESS_DICT:
if suite[0].startswith('mochitest-gl'):
continue
elif suite[0].startswith('plain-reftest'):
ANDROID_2_3_ARMV6_C3_DICT['opt_unittest_suites'].append(suite)
elif suite[0].startswith('crashtest'):
ANDROID_2_3_ARMV6_C3_DICT['opt_unittest_suites'].append(suite)
elif suite[0].startswith('jsreftest'):
@@ -3299,16 +3353,35 @@ for name, branch in items_at_least(BRANC
'opt_unittest_suites': deepcopy(ANDROID_2_3_C3_DICT['opt_unittest_suites']),
'debug_unittest_suites': []
}
BRANCHES[name]['platforms'][platform]['ubuntu64_vm_mobile'] = {
'opt_unittest_suites': deepcopy(ANDROID_2_3_AWS_DICT['opt_unittest_suites']),
'debug_unittest_suites': []
}
+# enable android 2.3 mochitest media to ride the trains (bug 1242682)
+for name, branch in items_at_least(BRANCHES, 'gecko_version', 47):
+ # Loop removes it from any branch that gets beyond here
+ for platform in branch['platforms']:
+ if not platform in PLATFORMS:
+ continue
+ if platform not in ('android-api-9'):
+ continue
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_large'] = {
+ 'opt_unittest_suites': deepcopy(ANDROID_2_3_C3_DICT['opt_unittest_suites']),
+ 'debug_unittest_suites': []
+ }
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_mobile'] = {
+ 'opt_unittest_suites': deepcopy(ANDROID_2_3_AWS_DICT['opt_unittest_suites']),
+ 'debug_unittest_suites': []
+ }
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_mobile']['opt_unittest_suites'] += ANDROID_2_3_MOCHITEST_MEDIA
+
+
# bug 1133833 enable Android 4.3 on trunk for opt only
# while disabling corresponding 4.0 tests
for name, branch in items_at_least(BRANCHES, 'gecko_version', 40):
# Loop removes it from any branch that gets beyond here
for platform in branch['platforms']:
if not platform in PLATFORMS:
continue
if platform not in ('android-api-11', 'android-api-15'):
@@ -3407,24 +3480,48 @@ for name, branch in items_at_least(BRANC
'opt_unittest_suites': deepcopy(ANDROID_4_3_C3_DICT['opt_unittest_suites']),
'debug_unittest_suites': deepcopy(ANDROID_4_3_C3_TRUNK_DICT['debug_unittest_suites'] + ANDROID_4_3_MOZHARNESS_DEBUG_TRUNK),}
BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_mobile'] = {
'opt_unittest_suites': deepcopy(ANDROID_4_3_AWS_DICT['opt_unittest_suites']),
'debug_unittest_suites': deepcopy(ANDROID_4_3_AWS_TRUNK_DICT['debug_unittest_suites']),
}
BRANCHES[name]['platforms'][platform]['panda_android']['debug_unittest_suites'] = []
+
+# bug 1242682 add mochitest-media
+for name, branch in items_at_least(BRANCHES, 'gecko_version', 47):
+ for platform in branch['platforms']:
+ if not platform in PLATFORMS:
+ continue
+ if platform not in ('android-api-11', 'android-api-15'):
+ continue
+ for slave_plat in PLATFORMS[platform]['slave_platforms']:
+ if not slave_plat in branch['platforms'][platform]:
+ continue
+ if not 'panda' in slave_plat:
+ continue
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_large'] = {
+ 'opt_unittest_suites': deepcopy(ANDROID_4_3_C3_DICT['opt_unittest_suites']),
+ 'debug_unittest_suites': deepcopy(ANDROID_4_3_C3_TRUNK_DICT['debug_unittest_suites'] + ANDROID_4_3_MOZHARNESS_DEBUG_TRUNK),}
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_mobile'] = {
+ 'opt_unittest_suites': deepcopy(ANDROID_4_3_AWS_DICT['opt_unittest_suites']),
+ 'debug_unittest_suites': deepcopy(ANDROID_4_3_AWS_TRUNK_DICT['debug_unittest_suites']),
+ }
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_large']['opt_unittest_suites'] += ANDROID_4_3_MOCHITEST_MEDIA
+ BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_large']['debug_unittest_suites'] += ANDROID_4_3_MOCHITEST_MEDIA
+ BRANCHES[name]['platforms'][platform]['panda_android']['debug_unittest_suites'] = []
+
+
def remove_suite_from_slave_platform(BRANCHES, PLATFORMS, suite_to_remove, slave_platform, branches_to_keep=[]):
"""Remove suites named like |suite_to_remove| from all branches on slave platforms named like |slave_platform|.
Updates BRANCHES in place. Consumes PLATFORMS without side
effects. Does not remove any suites from the specified
|branches_to_keep|."""
- tuples_to_delete = []
for branch in BRANCHES:
# Loop removes it from any branch that gets beyond here.
if branch in branches_to_keep:
continue
for platform in BRANCHES[branch]['platforms']:
if not platform in PLATFORMS:
continue
if not platform.startswith('android'):