From 08574aeb4454e66093bae69dbf3d4b4e5c1cb695 Mon Sep 17 00:00:00 2001 From: Mirko Bonadei Date: Wed, 16 Sep 2020 07:22:57 +0000 Subject: [PATCH] Revert "Reland "Switch from "rtc_ios_xctest_test" to "rtc_test"."" This reverts commit 60c25a303fac85dccb2ccdd9e8d6d71be13b7541. Reason for revert: Breaks downstream iOS testers. From an offline discussion, the GN argument is not needed and only the 3 xctest needs the behavior of that argument. So I am reverting this one and preparing 2 CLs to properly fix. Original change's description: > Reland "Switch from "rtc_ios_xctest_test" to "rtc_test"." > > This is a reland of 7a73c772e21983857e46cb4fcedc6cfa3f42c03e > > The change to fix the downstream issue is just the switch from > "test" to "rtc_test" which is a GN template that expands to > "test". > > Original change's description: > > Switch from "rtc_ios_xctest_test" to "test". > > > > Using the "test" GN template instead of the "ios_xctest_test" one we > > will get iOS support for isolates via MB and GN for free, making it > > easier to migrate the iOS recipe and fix bugs.webrtc.org/11604. > > > > Bug: webrtc:11881 > > Change-Id: I72b90f8494c473fa567e6296caf7a771e4caba92 > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182680 > > Reviewed-by: Dirk Pranke > > Commit-Queue: Mirko Bonadei > > Cr-Commit-Position: refs/heads/master@{#32064} > > Bug: webrtc:11881 > Change-Id: Ia5338859f4e893b9f19bcca6b26b8cf66d5984e8 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183766 > Commit-Queue: Mirko Bonadei > Reviewed-by: Dirk Pranke > Cr-Commit-Position: refs/heads/master@{#32075} TBR=mbonadei@webrtc.org,dpranke@google.com,jeffyoon@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: webrtc:11881, webrtc:11937 Change-Id: Ie6eea6b2a8ba5c46af40b115c6db4fd0a38a25b0 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/184340 Commit-Queue: Mirko Bonadei Reviewed-by: Mirko Bonadei Cr-Commit-Position: refs/heads/master@{#32112} --- examples/BUILD.gn | 2 +- sdk/BUILD.gn | 9 +++------ tools_webrtc/mb/gn_isolate_map.pyl | 6 +++--- tools_webrtc/mb/mb_config.pyl | 24 ++++++++---------------- webrtc.gni | 29 +++++++++++++++++++++++++++++ 5 files changed, 44 insertions(+), 26 deletions(-) diff --git a/examples/BUILD.gn b/examples/BUILD.gn index 43d961c5f3..557e31fce5 100644 --- a/examples/BUILD.gn +++ b/examples/BUILD.gn @@ -632,7 +632,7 @@ if (is_ios || (is_mac && target_cpu != "x86")) { ] } - rtc_test("apprtcmobile_tests") { + rtc_ios_xctest_test("apprtcmobile_tests") { info_plist = "objc/AppRTCMobile/ios/Info.plist" sources = [ "objc/AppRTCMobile/tests/main.mm" ] deps = [ diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn index 40a78943ae..c87dcbe421 100644 --- a/sdk/BUILD.gn +++ b/sdk/BUILD.gn @@ -6,9 +6,7 @@ # in the file PATENTS. All contributing project authors may # be found in the AUTHORS file in the root of the source tree. -import("//testing/test.gni") import("../webrtc.gni") - if (is_ios) { import("//build/config/ios/ios_sdk.gni") import("//build/config/ios/rules.gni") @@ -1167,7 +1165,7 @@ if (is_ios || is_mac) { } # These tests use static linking. - rtc_test("sdk_unittests") { + rtc_ios_xctest_test("sdk_unittests") { info_plist = "//test/ios/Info.plist" sources = [ "objc/unittests/main.mm" ] @@ -1183,9 +1181,8 @@ if (is_ios || is_mac) { } # These tests link to the framework. - rtc_test("sdk_framework_unittests") { + rtc_ios_xctest_test("sdk_framework_unittests") { info_plist = "//test/ios/Info.plist" - cflags_objc = [ "-Wno-objc-property-no-attribute" ] sources = [ "objc/unittests/RTCDoNotPutCPlusPlusInFrameworkHeaders_xctest.m", "objc/unittests/main.mm", @@ -1672,8 +1669,8 @@ if (is_ios || is_mac) { rtc_library("video_toolbox_cc") { visibility = [ - ":sdk_unittests_sources", ":videotoolbox_objc", + ":sdk_unittests_sources", ] sources = [ "objc/components/video_codec/helpers.cc", diff --git a/tools_webrtc/mb/gn_isolate_map.pyl b/tools_webrtc/mb/gn_isolate_map.pyl index fcef85b992..dba0d97571 100644 --- a/tools_webrtc/mb/gn_isolate_map.pyl +++ b/tools_webrtc/mb/gn_isolate_map.pyl @@ -37,7 +37,7 @@ }, "apprtcmobile_tests": { "label": "//examples:apprtcmobile_tests", - "type": "console_test_launcher", + "type": "raw", }, "audio_decoder_unittests": { "label": "//modules/audio_coding:audio_decoder_unittests", @@ -108,11 +108,11 @@ }, "sdk_framework_unittests": { "label": "//sdk:sdk_framework_unittests", - "type": "console_test_launcher", + "type": "raw", }, "sdk_unittests": { "label": "//sdk:sdk_unittests", - "type": "console_test_launcher", + "type": "raw", }, "slow_tests": { "label": "//:slow_tests", diff --git a/tools_webrtc/mb/mb_config.pyl b/tools_webrtc/mb/mb_config.pyl index b30f9d771a..20755df9ee 100644 --- a/tools_webrtc/mb/mb_config.pyl +++ b/tools_webrtc/mb/mb_config.pyl @@ -392,35 +392,31 @@ # iOS 'ios_debug_bot_arm': [ - 'ios', 'debug_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe', - 'xctest', + 'ios', 'debug_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe' ], 'ios_release_bot_arm': [ - 'ios', 'release_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe', - 'xctest', + 'ios', 'release_bot', 'arm', 'no_ios_code_signing', 'ios_use_goma_rbe' ], 'ios_debug_bot_arm64': [ - 'ios', 'debug_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe', - 'xctest', + 'ios', 'debug_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe' ], 'ios_release_bot_arm64': [ - 'ios', 'release_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe', - 'xctest', + 'ios', 'release_bot', 'arm64', 'no_ios_code_signing', 'ios_use_goma_rbe' ], 'ios_internal_debug_bot_arm64': [ 'ios', 'debug_bot', 'arm64', 'ios_use_goma_rbe', - 'ios_code_signing_identity_description', 'xctest', + 'ios_code_signing_identity_description', ], 'ios_internal_release_bot_arm64': [ 'ios', 'release_bot', 'arm64', 'ios_use_goma_rbe', - 'ios_code_signing_identity_description', 'xctest', + 'ios_code_signing_identity_description', ], 'ios_internal_pure_release_bot_arm64': [ 'ios', 'pure_release_bot', 'arm64', 'ios_use_goma_rbe', - 'ios_code_signing_identity_description', 'xctest', + 'ios_code_signing_identity_description', ], 'ios_debug_bot_x64': [ - 'ios', 'debug_bot', 'x64', 'ios_use_goma_rbe', 'xctest', + 'ios', 'debug_bot', 'x64', 'ios_use_goma_rbe' ], # More configs @@ -636,9 +632,5 @@ 'win_undef_unicode': { 'gn_args': 'rtc_win_undef_unicode=true', }, - - 'xctest': { - 'gn_args': 'enable_run_ios_unittests_with_xctest=true', - }, }, } diff --git a/webrtc.gni b/webrtc.gni index a465f4901c..3081618cbf 100644 --- a/webrtc.gni +++ b/webrtc.gni @@ -878,6 +878,35 @@ template("rtc_shared_library") { } if (is_ios) { + set_defaults("rtc_ios_xctest_test") { + configs = rtc_add_configs + suppressed_configs = [] + } + + template("rtc_ios_xctest_test") { + ios_xctest_test(target_name) { + forward_variables_from(invoker, + "*", + [ + "configs", + "public_configs", + "suppressed_configs", + "visibility", + ]) + forward_variables_from(invoker, [ "visibility" ]) + if (!defined(visibility)) { + visibility = webrtc_default_visibility + } + configs += invoker.configs + configs -= rtc_remove_configs + configs -= invoker.suppressed_configs + public_configs = [ rtc_common_inherited_config ] + if (defined(invoker.public_configs)) { + public_configs += invoker.public_configs + } + } + } + # TODO: Generate module.modulemap file to enable use in Swift # projects. See "mac_framework_bundle_with_umbrella_header". template("ios_framework_bundle_with_umbrella_header") {