From 1b5e41604ce149b51a0b6990a339f748acda22a6 Mon Sep 17 00:00:00 2001 From: nod_ Date: Tue, 26 Nov 2024 11:53:13 +0100 Subject: [PATCH] Issue #3487816 by catch, berdir, smustgrave, quietone: Ensure tests don't run twice --- core/scripts/run-tests.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/core/scripts/run-tests.sh b/core/scripts/run-tests.sh index 71c4b1045e9..bbaa1f38678 100755 --- a/core/scripts/run-tests.sh +++ b/core/scripts/run-tests.sh @@ -946,16 +946,16 @@ function simpletest_script_get_test_list() { foreach ($groups as $group => $tests) { $not_slow_tests = array_merge($not_slow_tests, array_keys($tests)); } - // Filter slow tests out of the not slow tests since they may appear in more - // than one group. - $not_slow_tests = array_diff($not_slow_tests, $slow_tests); + // Filter slow tests out of the not slow tests and ensure a unique list + // since tests may appear in more than one group. + $not_slow_tests = array_unique(array_diff($not_slow_tests, $slow_tests)); // If the tests are not being run in parallel, then ensure slow tests run // all together first. if ((int) $args['ci-parallel-node-total'] <= 1 ) { sort_tests_by_type_and_methods($slow_tests); sort_tests_by_type_and_methods($not_slow_tests); - $test_list = array_unique(array_merge($slow_tests, $not_slow_tests)); + $test_list = array_merge($slow_tests, $not_slow_tests); } else { // Sort all tests by the number of public methods on the test class. @@ -976,7 +976,7 @@ function simpletest_script_get_test_list() { // And the same for the rest of the tests. $binned_other_tests = place_tests_into_bins($not_slow_tests, $bin_count); $other_tests_for_job = $binned_other_tests[$args['ci-parallel-node-index'] - 1]; - $test_list = array_unique(array_merge($slow_tests_for_job, $other_tests_for_job)); + $test_list = array_merge($slow_tests_for_job, $other_tests_for_job); } } else {