Skip to content

Commit 421d428

Browse files
authored
Only insert libXCTestBundleInject.dylib for unit tests (#2530)
Fixes #2528. Stop adding libXCTestBundleInject.dylib for UI tests. Xcode only injects this dylib when running unit tests with host app. This diff was tested with Xcode 15.2 and Xcode 16 RC1. ``` bazel test //test:ios_xctestrun_runner_ui_test bazel test //test:ios_xctestrun_runner_unit_test ```
1 parent 19c7caf commit 421d428

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

apple/testing/default_runner/ios_xctestrun_runner.template.sh

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -284,12 +284,25 @@ if [[ -e "$main_thread_checker" ]]; then
284284
main_thread_checker_dyld_env="$main_thread_checker"
285285
fi
286286

287-
xctestrun_libraries="__PLATFORMS__/$test_execution_platform/Developer/usr/lib/libXCTestBundleInject.dylib"
287+
xctestrun_libraries=""
288+
if [[ "$test_type" != "XCUITEST" ]]; then
289+
xctestrun_libraries="__PLATFORMS__/$test_execution_platform/Developer/usr/lib/libXCTestBundleInject.dylib"
290+
fi
291+
288292
if [[ -n "$sanitizer_dyld_env" ]]; then
289-
xctestrun_libraries="${xctestrun_libraries}:${sanitizer_dyld_env}"
293+
if [[ -n "$xctestrun_libraries" ]]; then
294+
xctestrun_libraries="${xctestrun_libraries}:${sanitizer_dyld_env}"
295+
else
296+
xctestrun_libraries="${sanitizer_dyld_env}"
297+
fi
290298
fi
299+
291300
if [[ -n "$main_thread_checker_dyld_env" ]]; then
292-
xctestrun_libraries="${xctestrun_libraries}:${main_thread_checker_dyld_env}"
301+
if [[ -n "$xctestrun_libraries" ]]; then
302+
xctestrun_libraries="${xctestrun_libraries}:${main_thread_checker_dyld_env}"
303+
else
304+
xctestrun_libraries="${main_thread_checker_dyld_env}"
305+
fi
293306
fi
294307

295308
TEST_FILTER="%(test_filter)s"

0 commit comments

Comments
 (0)