--- a/mozilla-tests/config.py
+++ b/mozilla-tests/config.py
@@ -666,16 +666,26 @@ XPCSHELL = [
'use_mozharness': True,
'script_path': 'scripts/desktop_unittest.py',
'extra_args': ['--xpcshell-suite', 'xpcshell'],
'blob_upload': True,
'script_maxtime': 7200,
}),
]
+XPCSHELL_TWO_CHUNKS = [
+ ('xpcshell', {
+ 'use_mozharness': True,
+ 'script_path': 'scripts/desktop_unittest.py',
+ 'extra_args': ['--xpcshell-suite', 'xpcshell'],
+ 'blob_upload': True,
+ 'script_maxtime': 7200,
+ 'totalChunks': 2,
+ }),
+]
CPPUNIT = [
('cppunit', {
'use_mozharness': True,
'script_path': 'scripts/desktop_unittest.py',
'extra_args': ['--cppunittest-suite', 'cppunittest'],
'blob_upload': True,
'script_maxtime': 7200,
}),
@@ -785,34 +795,34 @@ WEB_PLATFORM_TESTS_CHUNKED_MORE = [
'blob_upload': True,
'script_maxtime': 7200,
}),
]
UNITTEST_SUITES = {
'opt_unittest_suites': MOCHITEST + REFTEST_ONE_CHUNK + REFTEST_NO_IPC + XPCSHELL + CPPUNIT + MOCHITEST_DT,
- 'debug_unittest_suites': MOCHITEST + REFTEST_ONE_CHUNK + REFTEST_NO_IPC + XPCSHELL + CPPUNIT + MARIONETTE + MOCHITEST_DT_4,
+ 'debug_unittest_suites': MOCHITEST + REFTEST_ONE_CHUNK + REFTEST_NO_IPC + CPPUNIT + MARIONETTE + MOCHITEST_DT_4,
}
# You must define opt_unittest_suites when enable_opt_unittests is True for a
# platform. Likewise debug_unittest_suites for enable_debug_unittests
PLATFORM_UNITTEST_VARS = {
'linux': {
'product_name': 'firefox',
'app_name': 'browser',
'brand_name': 'Minefield',
'builds_before_reboot': 1,
'unittest-env': {'DISPLAY': ':0'},
'enable_opt_unittests': True,
'enable_debug_unittests': True,
'ubuntu32_vm': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:] + REFTEST_NOACCEL,
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL_TWO_CHUNKS,
'suite_config': {
'mochitest': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s': {
@@ -901,17 +911,17 @@ PLATFORM_UNITTEST_VARS = {
'app_name': 'browser',
'brand_name': 'Minefield',
'builds_before_reboot': 1,
'unittest-env': {'DISPLAY': ':0'},
'enable_opt_unittests': True,
'enable_debug_unittests': True,
'ubuntu64_vm': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL_TWO_CHUNKS,
'suite_config': {
'mochitest': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s': {
@@ -994,17 +1004,17 @@ PLATFORM_UNITTEST_VARS = {
'app_name': 'browser',
'brand_name': 'Minefield',
'builds_before_reboot': 1,
'unittest-env': {'DISPLAY': ':0'},
'enable_opt_unittests': True,
'enable_debug_unittests': False,
'ubuntu64-asan_vm': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL,
'suite_config': {
'mochitest': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s': {
@@ -1084,17 +1094,17 @@ PLATFORM_UNITTEST_VARS = {
'app_name': 'browser',
'brand_name': 'Minefield',
'builds_before_reboot': 1,
'unittest-env': {'DISPLAY': ':0'},
'enable_opt_unittests': True,
'enable_debug_unittests': False,
'ubuntu64-tsan_vm': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL,
'suite_config': {
'mochitest': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/linux_unittest.py"],
},
'mochitest-e10s': {
@@ -1624,17 +1634,17 @@ PLATFORM_UNITTEST_VARS = {
'product_name': 'firefox',
'app_name': 'browser',
'brand_name': 'Minefield',
'builds_before_reboot': 1,
'enable_opt_unittests': True,
'enable_debug_unittests': True,
'snowleopard': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL,
'suite_config': {
'mochitest': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-e10s': {
@@ -1705,17 +1715,17 @@ PLATFORM_UNITTEST_VARS = {
},
'mozbase': {
'config_files': ["unittests/mac_unittest.py"],
},
},
},
'mountainlion': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL,
'suite_config': {
'mochitest': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-e10s': {
@@ -1786,17 +1796,17 @@ PLATFORM_UNITTEST_VARS = {
},
'mozbase': {
'config_files': ["unittests/mac_unittest.py"],
},
},
},
'yosemite': {
'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'][:],
- 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:],
+ 'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL,
'suite_config': {
'mochitest': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-push': {
'config_files': ["unittests/mac_unittest.py"],
},
'mochitest-e10s': {
@@ -2092,26 +2102,26 @@ BRANCHES['try']['tp5o_tests'] = (1, Fals
BRANCHES['try']['other_tests'] = (0, False, {}, ALL_TALOS_PLATFORMS)
BRANCHES['try']['other_nol64_tests'] = (1, False, {}, NO_LINUX64)
BRANCHES['try']['other_l64_tests'] = (1, False, {}, LINUX64_ONLY)
BRANCHES['try']['g1_tests'] = (1, False, TALOS_TP_NEW_OPTS, ALL_TALOS_PLATFORMS)
BRANCHES['try']['g2_tests'] = (1, False, TALOS_TP_NEW_OPTS, ALL_TALOS_PLATFORMS)
BRANCHES['try']['pgo_strategy'] = None
BRANCHES['try']['enable_try'] = True
BRANCHES['try']['platforms']['macosx64']['yosemite']['opt_unittest_suites'] = UNITTEST_SUITES['opt_unittest_suites'][:]
-BRANCHES['try']['platforms']['macosx64']['yosemite']['debug_unittest_suites'] = UNITTEST_SUITES['debug_unittest_suites'][:]
+BRANCHES['try']['platforms']['macosx64']['yosemite']['debug_unittest_suites'] = UNITTEST_SUITES['debug_unittest_suites'][:] + XPCSHELL
######## cedar
BRANCHES['cedar']['platforms']['linux64-asan']['ubuntu64-asan_vm']['opt_unittest_suites'] += MARIONETTE[:]
BRANCHES['cedar']['platforms']['win32']['xp-ix']['opt_unittest_suites'] += REFTEST_OMTC[:]
BRANCHES['cedar']['platforms']['win32']['win7-ix']['opt_unittest_suites'] += REFTEST_OMTC[:]
BRANCHES['cedar']['platforms']['win64']['win8_64']['opt_unittest_suites'] += REFTEST_OMTC[:]
-BRANCHES['cedar']['platforms']['win32']['xp-ix']['debug_unittest_suites'] += REFTEST_OMTC[:]
-BRANCHES['cedar']['platforms']['win32']['win7-ix']['debug_unittest_suites'] += REFTEST_OMTC[:]
-BRANCHES['cedar']['platforms']['win64']['win8_64']['debug_unittest_suites'] += REFTEST_OMTC[:]
+BRANCHES['cedar']['platforms']['win32']['xp-ix']['debug_unittest_suites'] += REFTEST_OMTC[:] + XPCSHELL
+BRANCHES['cedar']['platforms']['win32']['win7-ix']['debug_unittest_suites'] += REFTEST_OMTC[:] + XPCSHELL
+BRANCHES['cedar']['platforms']['win64']['win8_64']['debug_unittest_suites'] += REFTEST_OMTC[:] + XPCSHELL
loadSkipConfig(BRANCHES,"desktop")
# Filter the tests that are enabled on holly for bug 985718.
for platform in BRANCHES['holly']['platforms'].keys():
if platform not in PLATFORMS:
continue
@@ -2262,16 +2272,28 @@ for platform in PLATFORMS.keys():
if slave_platform not in ('ubuntu32_vm',):
continue
if platform in BRANCHES[name]['platforms']:
if slave_platform in BRANCHES[name]['platforms'][platform]:
debug_suites = BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites']
debug_suites = [x for x in debug_suites if x[0] and x[0] != 'mochitest-devtools-chrome']
BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites'] = debug_suites + MOCHITEST_DT_8[:]
+# Bug 1185499 - use only one chunk for linux32/linux64 debug xpcshell tests, gecko < 41
+for platform in PLATFORMS.keys():
+ for name, branch in items_before(BRANCHES, 'gecko_version', 41):
+ for slave_platform in PLATFORMS[platform]['slave_platforms']:
+ if slave_platform not in ('ubuntu32_vm', 'ubuntu64_vm'):
+ continue
+ if platform in BRANCHES[name]['platforms']:
+ if slave_platform in BRANCHES[name]['platforms'][platform]:
+ debug_suites = BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites']
+ debug_suites = [x for x in debug_suites if x[0] and x[0] != 'xpcshell']
+ BRANCHES[name]['platforms'][platform][slave_platform]['debug_unittest_suites'] = debug_suites + XPCSHELL[:]
+
# reftest is chunked x2 on opt and x4 on debug linux platforms, gecko >= 36
for platform in PLATFORMS.keys():
for name, branch in items_at_least(BRANCHES, 'gecko_version', 36):
for slave_platform in PLATFORMS[platform]['slave_platforms']:
if slave_platform not in ('ubuntu64_vm', 'ubuntu32_vm', 'ubuntu64-asan_vm'):
continue
if platform in BRANCHES[name]['platforms']:
if slave_platform in BRANCHES[name]['platforms'][platform]: