From 0a8b274aa562456a4b63d68de509bbb15fca36ab Mon Sep 17 00:00:00 2001 From: Rohit Rao Date: Tue, 30 Jun 2020 23:30:26 +0000 Subject: [PATCH] Revert "[iOS] Remove all EG1 test targets and related GN components." This reverts commit 6a309aadfb10b9dba95141c9007cf5baa89ef61b. Reason for revert: Downstream CL needs to land first Original change's description: > [iOS] Remove all EG1 test targets and related GN components. > > Removed all test targets, EG1 specific test utils in GN files. > Removed gni files to build EG1 targets. > Removed build files in ios/third_party/earl_grey. > > Bug: 1046369 > Change-Id: Iec1d60fa40d10969c4e6e6840f2983b02c3170dc > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2275353 > Commit-Queue: Zhaoyang Li > Reviewed-by: Rohit Rao > Cr-Commit-Position: refs/heads/master@{#784204} TBR=rohitrao@chromium.org,zhaoyangli@chromium.org Change-Id: Ied75d5546cde0ff5c3d605e7c005981a8fc26c3e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1046369 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2276812 Reviewed-by: Rohit Rao Commit-Queue: Rohit Rao Cr-Commit-Position: refs/heads/master@{#784207} --- ios/DEPS | 2 +- ios/chrome/browser/autofill/BUILD.gn | 25 ++ .../browser/autofill/automation/BUILD.gn | 33 ++ ios/chrome/browser/context_menu/BUILD.gn | 24 ++ ios/chrome/browser/device_sharing/BUILD.gn | 33 ++ .../browser/feature_engagement/BUILD.gn | 49 +++ ios/chrome/browser/metrics/BUILD.gn | 95 +++++ ios/chrome/browser/net/BUILD.gn | 18 + ios/chrome/browser/ntp_tiles/BUILD.gn | 16 + ios/chrome/browser/passwords/BUILD.gn | 44 +++ ios/chrome/browser/prerender/BUILD.gn | 17 + ios/chrome/browser/translate/BUILD.gn | 61 ++++ .../browser/ui/activity_services/BUILD.gn | 21 ++ ios/chrome/browser/ui/authentication/BUILD.gn | 38 ++ .../browser/ui/authentication/signin/BUILD.gn | 38 ++ ios/chrome/browser/ui/autofill/BUILD.gn | 63 ++++ .../browser/ui/autofill/manual_fill/BUILD.gn | 44 +++ ios/chrome/browser/ui/bookmarks/BUILD.gn | 80 +++++ ios/chrome/browser/ui/browser_view/BUILD.gn | 35 ++ .../browser/ui/content_suggestions/BUILD.gn | 89 +++++ ios/chrome/browser/ui/dialogs/BUILD.gn | 33 ++ ios/chrome/browser/ui/download/BUILD.gn | 40 +++ ios/chrome/browser/ui/find_bar/BUILD.gn | 33 ++ ios/chrome/browser/ui/first_run/BUILD.gn | 52 +++ ios/chrome/browser/ui/fullscreen/BUILD.gn | 27 ++ .../browser/ui/fullscreen/test/BUILD.gn | 19 + ios/chrome/browser/ui/history/BUILD.gn | 26 ++ ios/chrome/browser/ui/infobars/BUILD.gn | 56 +++ ios/chrome/browser/ui/keyboard/BUILD.gn | 21 ++ ios/chrome/browser/ui/ntp/BUILD.gn | 22 ++ ios/chrome/browser/ui/omnibox/BUILD.gn | 55 +++ ios/chrome/browser/ui/omnibox/popup/BUILD.gn | 24 ++ ios/chrome/browser/ui/page_info/BUILD.gn | 18 + ios/chrome/browser/ui/popup_menu/BUILD.gn | 27 ++ ios/chrome/browser/ui/qr_scanner/BUILD.gn | 52 +++ ios/chrome/browser/ui/reading_list/BUILD.gn | 63 ++++ ios/chrome/browser/ui/recent_tabs/BUILD.gn | 32 ++ ios/chrome/browser/ui/sad_tab/BUILD.gn | 22 ++ ios/chrome/browser/ui/safe_mode/BUILD.gn | 35 ++ ios/chrome/browser/ui/settings/BUILD.gn | 99 ++++++ .../browser/ui/settings/autofill/BUILD.gn | 26 ++ .../ui/settings/clear_browsing_data/BUILD.gn | 15 + .../ui/settings/google_services/BUILD.gn | 44 +++ .../browser/ui/settings/language/BUILD.gn | 34 ++ .../browser/ui/settings/password/BUILD.gn | 58 ++++ ios/chrome/browser/ui/settings/sync/BUILD.gn | 17 + .../browser/ui/settings/sync/utils/BUILD.gn | 23 ++ ios/chrome/browser/ui/side_swipe/BUILD.gn | 22 ++ ios/chrome/browser/ui/tab_grid/BUILD.gn | 27 ++ ios/chrome/browser/ui/tabs/BUILD.gn | 18 + ios/chrome/browser/ui/toolbar/BUILD.gn | 56 +++ ios/chrome/browser/ui/util/BUILD.gn | 17 + ios/chrome/browser/ui/webui/BUILD.gn | 26 ++ .../browser/ui/webui/interstitials/BUILD.gn | 20 ++ ios/chrome/browser/web/BUILD.gn | 79 +++++ ios/chrome/test/BUILD.gn | 15 + ios/chrome/test/earl_grey/BUILD.gn | 325 ++++++++++++++++++ .../test/earl_grey/chrome_ios_eg_test.gni | 170 +++++++++ ios/showcase/BUILD.gn | 21 ++ ios/showcase/badges/BUILD.gn | 14 + ios/showcase/bubble/BUILD.gn | 14 + ios/showcase/content_suggestions/BUILD.gn | 20 ++ ios/showcase/core/BUILD.gn | 12 + ios/showcase/infobars/BUILD.gn | 18 + ios/showcase/test/BUILD.gn | 35 ++ ios/showcase/text_badge_view/BUILD.gn | 14 + ios/testing/earl_grey/BUILD.gn | 42 +++ ios/third_party/earl_grey/BUILD.gn | 317 +++++++++++++++++ ios/third_party/earl_grey/ios_eg_test.gni | 99 ++++++ ios/web/BUILD.gn | 28 ++ ios/web/DEPS | 3 +- ios/web/shell/test/BUILD.gn | 79 +++++ ios/web_view/shell/test/BUILD.gn | 50 ++- 73 files changed, 3335 insertions(+), 4 deletions(-) create mode 100644 ios/chrome/test/earl_grey/chrome_ios_eg_test.gni create mode 100644 ios/third_party/earl_grey/BUILD.gn create mode 100644 ios/third_party/earl_grey/ios_eg_test.gni diff --git a/ios/DEPS b/ios/DEPS index 9919cfee7c46dd..aabcd439eb78fa 100644 --- a/ios/DEPS +++ b/ios/DEPS @@ -6,7 +6,7 @@ include_rules = [ # To avoid ODR violation, direct import of these libraries is forbidden in # ios/DEPS and code should instead use import as if they were in a framework # (i.e. #import ). - # TODO(crbug.com/1101077): Disallow direct import of eg2 headers. + "-ios/third_party/earl_grey", "-ios/third_party/ochamcrest", # For unit tests. diff --git a/ios/chrome/browser/autofill/BUILD.gn b/ios/chrome/browser/autofill/BUILD.gn index cdd0ee66a8a0ac..14875dfa48d81f 100644 --- a/ios/chrome/browser/autofill/BUILD.gn +++ b/ios/chrome/browser/autofill/BUILD.gn @@ -521,6 +521,31 @@ bundle_data("unit_tests_bundle_data") { "{{source_root_relative_dir}}/{{source_file_part}}" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "form_input_egtest.mm" ] + deps = [ + ":autofill", + "//base", + "//base/test:test_support", + "//components/autofill/ios/browser:browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser/autofill:autofill_shared", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/public/deprecated", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/autofill/automation/BUILD.gn b/ios/chrome/browser/autofill/automation/BUILD.gn index 4520b1b6a6ebde..12736268036e1d 100644 --- a/ios/chrome/browser/autofill/automation/BUILD.gn +++ b/ios/chrome/browser/autofill/automation/BUILD.gn @@ -2,6 +2,39 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "automation_action.h", + "automation_action.mm", + "automation_action_egtest.mm", + "automation_app_interface.h", + "automation_app_interface.mm", + "automation_egtest.mm", + ] + deps = [ + "//base", + "//components/autofill/core/browser", + "//components/autofill/ios/browser", + "//components/autofill/ios/browser:autofill_test_bundle_data", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/infobars:constants", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/js_messaging", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server:http_server", + "//net:test_support", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/context_menu/BUILD.gn b/ios/chrome/browser/context_menu/BUILD.gn index 8a1e4dd6f269d7..a88e90aa45fb95 100644 --- a/ios/chrome/browser/context_menu/BUILD.gn +++ b/ios/chrome/browser/context_menu/BUILD.gn @@ -2,6 +2,30 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "context_menu_egtest.mm" ] + deps = [ + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/fullscreen/test:eg_test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test:element_selector", + "//net:test_support", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/device_sharing/BUILD.gn b/ios/chrome/browser/device_sharing/BUILD.gn index 48679c369c3d89..888fad27324175 100644 --- a/ios/chrome/browser/device_sharing/BUILD.gn +++ b/ios/chrome/browser/device_sharing/BUILD.gn @@ -50,6 +50,21 @@ source_set("unit_tests") { ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "handoff_manager_app_interface.h", + "handoff_manager_app_interface.mm", + ] + deps = [ + ":device_sharing", + "//components/handoff", + "//ios/chrome/test/app:test_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -79,6 +94,24 @@ source_set("eg_test_support+eg2") { sources = [ "handoff_manager_app_interface.h" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "handoff_manager_egtest.mm" ] + deps = [ + ":test_support", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//net", + "//url", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/feature_engagement/BUILD.gn b/ios/chrome/browser/feature_engagement/BUILD.gn index 17d301008584f0..e8ebee553b517c 100644 --- a/ios/chrome/browser/feature_engagement/BUILD.gn +++ b/ios/chrome/browser/feature_engagement/BUILD.gn @@ -27,6 +27,55 @@ source_set("feature_engagement") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "feature_engagement_app_interface.h", + "feature_engagement_app_interface.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/feature_engagement/public", + "//components/feature_engagement/test:test_support", + "//components/keyed_service/core", + "//components/translate/core/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/feature_engagement", + "//ios/chrome/test/app:test_support", + ] +} + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "feature_engagement_egtest.mm" ] + deps = [ + ":eg_test_support", + ":feature_engagement", + "//base", + "//base/test:test_support", + "//components/feature_engagement/public", + "//components/feature_engagement/test:test_support", + "//components/translate/core/browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view:constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + "//ui/base", + "//url", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/metrics/BUILD.gn b/ios/chrome/browser/metrics/BUILD.gn index 549a8d5a395587..3cb8c22374a32f 100644 --- a/ios/chrome/browser/metrics/BUILD.gn +++ b/ios/chrome/browser/metrics/BUILD.gn @@ -224,6 +224,62 @@ source_set("unit_tests_internal") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "demographics_egtest.mm", + "tab_usage_recorder_egtest.mm", + "ukm_egtest.mm", + ] + deps = [ + ":metrics_internal", + ":tab_usage_recorder_metrics", + ":test_support", + "//base", + "//base/test:test_support", + "//components/browser_sync", + "//components/metrics", + "//components/metrics:demographic_metrics_provider", + "//components/metrics_services_manager", + "//components/strings", + "//components/sync/base", + "//components/ukm", + "//components/ukm:test_support", + "//components/unified_consent:unified_consent", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser", + "//ios/chrome/browser/metrics", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/cells", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/settings/google_services", + "//ios/chrome/browser/ui/toolbar/buttons", + "//ios/chrome/browser/ui/toolbar/public", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net:test_support", + "//third_party/metrics_proto", + "//ui/base", + "//url", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -257,6 +313,45 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "metrics_app_interface.h", + "metrics_app_interface.mm", + ] + deps = [ + ":metrics", + "//base", + "//base/test:test_support", + "//components/metrics", + "//components/metrics:demographics_test_support", + "//components/metrics_services_manager", + "//components/network_time", + "//components/prefs", + "//components/ukm", + "//components/ukm:ukm_test_helper", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/main", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web_state_list", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + "//third_party/metrics_proto", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + import("//components/metrics/generate_expired_histograms_array.gni") generate_expired_histograms_array("expired_histograms_array") { diff --git a/ios/chrome/browser/net/BUILD.gn b/ios/chrome/browser/net/BUILD.gn index 4d2377630a8b5e..b1add75745b6c3 100644 --- a/ios/chrome/browser/net/BUILD.gn +++ b/ios/chrome/browser/net/BUILD.gn @@ -72,6 +72,24 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "cookies_egtest.mm" ] + deps = [ + "//base", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//url", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ntp_tiles/BUILD.gn b/ios/chrome/browser/ntp_tiles/BUILD.gn index 6861cb601ec775..94a65434255228 100644 --- a/ios/chrome/browser/ntp_tiles/BUILD.gn +++ b/ios/chrome/browser/ntp_tiles/BUILD.gn @@ -48,3 +48,19 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ "ntp_tiles_egtest.mm" ] + deps = [ + ":ntp_tiles", + "//base/test:test_support", + "//components/ntp_tiles:ntp_tiles", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server:http_server", + ] +} diff --git a/ios/chrome/browser/passwords/BUILD.gn b/ios/chrome/browser/passwords/BUILD.gn index 4f2927ee861a24..2445106bd86f70 100644 --- a/ios/chrome/browser/passwords/BUILD.gn +++ b/ios/chrome/browser/passwords/BUILD.gn @@ -212,6 +212,30 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "credential_manager_egtest.mm" ] + + deps = [ + ":feature_flags", + ":test_support", + "//base", + "//base/test:test_support", + "//components/password_manager/core/common", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server", + "//net:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -235,6 +259,26 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "password_manager_app_interface.h", + "password_manager_app_interface.mm", + ] + deps = [ + ":passwords", + "//base", + "//components/autofill/core/common", + "//components/keyed_service/core", + "//components/password_manager/core/browser", + "//ios/chrome/test/app:test_support", + "//ios/testing:nserror_support", + "//ios/web/public", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/prerender/BUILD.gn b/ios/chrome/browser/prerender/BUILD.gn index 48ead5ef56fceb..8bcacabea99d21 100644 --- a/ios/chrome/browser/prerender/BUILD.gn +++ b/ios/chrome/browser/prerender/BUILD.gn @@ -79,6 +79,23 @@ source_set("unit_tests") { "//testing/gtest", ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "prerender_egtest.mm" ] + deps = [ + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server", + "//net:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] diff --git a/ios/chrome/browser/translate/BUILD.gn b/ios/chrome/browser/translate/BUILD.gn index c76919619cd240..b97600a1c0fa62 100644 --- a/ios/chrome/browser/translate/BUILD.gn +++ b/ios/chrome/browser/translate/BUILD.gn @@ -108,6 +108,43 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "translate_egtest.mm" ] + deps = [ + ":eg_test_support", + ":translate", + "//base", + "//base/test:test_support", + "//components/language/ios/browser", + "//components/strings", + "//components/translate/core/browser", + "//components/translate/core/common", + "//components/translate/ios/browser", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser:chrome_url_constants", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/translate:legacy_translate_constants", + "//ios/chrome/browser/ui/translate:translate_ui_constants", + "//ios/chrome/browser/ui/util:util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/chrome/test/fakes", + "//ios/components/webui:url_constants", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//net", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -181,6 +218,30 @@ source_set("eg_app_support+eg2") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ + "//build/config/compiler:enable_arc", + "//build/config/ios:xctest_config", + ] + testonly = true + sources = [ + "translate_app_interface.h", + "translate_app_interface.mm", + ] + deps = [ + "//base:base", + "//components/translate/core/browser:browser", + "//components/translate/core/common:common", + "//components/translate/ios/browser:browser", + "//ios/chrome/browser/browser_state:browser_state", + "//ios/chrome/browser/translate:translate", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/fakes:fakes", + "//net:net", + ] +} + source_set("eg_test_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/activity_services/BUILD.gn b/ios/chrome/browser/ui/activity_services/BUILD.gn index 79813b7802c87f..da76e5964ddc61 100644 --- a/ios/chrome/browser/ui/activity_services/BUILD.gn +++ b/ios/chrome/browser/ui/activity_services/BUILD.gn @@ -88,6 +88,27 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "activity_service_controller_egtest.mm" ] + deps = [ + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/authentication/BUILD.gn b/ios/chrome/browser/ui/authentication/BUILD.gn index 9056b81733f575..9071ac4291a5ab 100644 --- a/ios/chrome/browser/ui/authentication/BUILD.gn +++ b/ios/chrome/browser/ui/authentication/BUILD.gn @@ -136,6 +136,44 @@ source_set("unit_tests") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "signin_earl_grey_ui.h", + "signin_earl_grey_ui.mm", + "signin_earlgrey_utils.h", + "signin_earlgrey_utils.mm", + "signin_earlgrey_utils_app_interface.h", + "signin_earlgrey_utils_app_interface.mm", + ] + deps = [ + ":authentication", + "unified_consent", + "//base/test:test_support", + "//components/bookmarks/browser", + "//components/signin/public/identity_manager", + "//ios/chrome/app/strings", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/authentication/cells", + "//ios/chrome/browser/ui/authentication/unified_consent:unified_consent_ui", + "//ios/chrome/browser/ui/authentication/unified_consent/identity_chooser:identity_chooser_ui", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/authentication/signin/BUILD.gn b/ios/chrome/browser/ui/authentication/signin/BUILD.gn index 6be163a358f6e1..879128262a945e 100644 --- a/ios/chrome/browser/ui/authentication/signin/BUILD.gn +++ b/ios/chrome/browser/ui/authentication/signin/BUILD.gn @@ -93,6 +93,44 @@ source_set("constants") { frameworks = [ "Foundation.framework" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "signin_coordinator_egtest.mm" ] + deps = [ + "//base", + "//base/test:test_support", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/cells", + "//ios/chrome/browser/ui/authentication/unified_consent/identity_chooser:identity_chooser_ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/recent_tabs:recent_tabs_ui_constants", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/settings/google_services:constants", + "//ios/chrome/browser/ui/table_view/cells", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web_state_list", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:constants", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/autofill/BUILD.gn b/ios/chrome/browser/ui/autofill/BUILD.gn index 2abe9b1bdfc479..7b64cc707c715b 100644 --- a/ios/chrome/browser/ui/autofill/BUILD.gn +++ b/ios/chrome/browser/ui/autofill/BUILD.gn @@ -152,6 +152,40 @@ source_set("autofill_metrics") { deps = [ "//base" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "save_card_infobar_egtest.mm", + "save_profile_egtest.mm", + ] + deps = [ + ":autofill_ui", + ":test_support", + "//components/autofill/core/browser", + "//components/autofill/ios/browser:autofill_test_bundle_data", + "//components/autofill/ios/browser:test_support", + "//components/leveldb_proto", + "//components/strings:components_strings_grit", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/metrics:test_support", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/js_messaging", + "//ios/web/public/test/http_server", + "//net:test_support", + "//services/network:test_support", + "//testing/gtest:gtest", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -182,6 +216,35 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "autofill_app_interface.h", + "autofill_app_interface.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//components/autofill/core/browser:test_support", + "//components/autofill/ios/browser", + "//components/autofill/ios/browser:test_support", + "//components/keyed_service/core", + "//components/password_manager/core/browser", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/passwords", + "//ios/chrome/test/app:test_support", + "//ios/public/provider/chrome/browser", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public:public", + "//ios/web/public/js_messaging", + "//services/network:test_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn b/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn index ae0528bb49d5bd..2fa6642482c921 100644 --- a/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn +++ b/ios/chrome/browser/ui/autofill/manual_fill/BUILD.gn @@ -208,6 +208,50 @@ source_set("requesters") { configs += [ "//build/config/compiler:enable_arc" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "address_view_controller_egtest.mm", + "card_view_controller_egtest.mm", + "fallback_coordinator_egtest.mm", + "fallback_view_controller_egtest.mm", + "keyboard_observer_egtest.mm", + "password_view_controller_egtest.mm", + ] + deps = [ + ":manual_fill", + ":manual_fill_ui", + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//components/autofill/core/browser:test_support", + "//components/autofill/core/common", + "//components/autofill/ios/browser", + "//components/keyed_service/core", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/ui/autofill:test_support", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/settings/autofill", + "//ios/chrome/browser/ui/settings/autofill:feature_flags", + "//ios/chrome/browser/ui/settings/password", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/ui/util:test_support", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net:test_support", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/bookmarks/BUILD.gn b/ios/chrome/browser/ui/bookmarks/BUILD.gn index c79b59807b2829..2e5504a91d092e 100644 --- a/ios/chrome/browser/ui/bookmarks/BUILD.gn +++ b/ios/chrome/browser/ui/bookmarks/BUILD.gn @@ -176,6 +176,86 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ + "//build/config/compiler:enable_arc", + "//build/config/ios:xctest_config", + ] + testonly = true + sources = [ + "bookmarks_accessibility_egtest.mm", + "bookmarks_egtest.mm", + "bookmarks_entries_egtest.mm", + "bookmarks_folders_egtest.mm", + "bookmarks_promo_egtest.mm", + "bookmarks_search_egtest.mm", + ] + deps = [ + ":bookmarks", + ":bookmarks_ui", + ":eg_test_support", + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/signin:constants", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/browser/ui/util:multiwindow_util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "bookmark_earl_grey.h", + "bookmark_earl_grey.mm", + "bookmark_earl_grey_app_interface.h", + "bookmark_earl_grey_app_interface.mm", + "bookmark_earl_grey_ui.h", + "bookmark_earl_grey_ui.mm", + ] + deps = [ + ":bookmarks", + ":bookmarks_ui", + "//base", + "//base/test:test_support", + "//components/bookmarks/browser", + "//components/prefs", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:nserror_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//ui/base", + "//url", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/browser_view/BUILD.gn b/ios/chrome/browser/ui/browser_view/BUILD.gn index 474ad378a8b6b9..6bffd6331ffd87 100644 --- a/ios/chrome/browser/ui/browser_view/BUILD.gn +++ b/ios/chrome/browser/ui/browser_view/BUILD.gn @@ -260,6 +260,41 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "browser_view_controller_egtest.mm" ] + deps = [ + ":browser_view", + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ntp:features", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/bookmarks:bookmarks_ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/webkit", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/content_suggestions/BUILD.gn b/ios/chrome/browser/ui/content_suggestions/BUILD.gn index 3aac644f7f0f4b..257fb51836c272 100644 --- a/ios/chrome/browser/ui/content_suggestions/BUILD.gn +++ b/ios/chrome/browser/ui/content_suggestions/BUILD.gn @@ -280,6 +280,58 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "content_suggestions_egtest.mm", + "ntp_home_egtest.mm", + ] + deps = [ + ":constants", + ":content_suggestions_constant", + ":content_suggestions_ui", + ":content_suggestions_ui_util", + ":test_support", + "//base", + "//base/test:test_support", + "//components/keyed_service/ios", + "//components/ntp_snippets", + "//components/ntp_snippets:test_support", + "//components/reading_list/core", + "//components/search_engines", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ntp_snippets", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/ui/content_suggestions/cells:cells_ui", + "//ios/chrome/browser/ui/location_bar:location_bar", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/settings:constants", + "//ios/chrome/browser/ui/toolbar/buttons", + "//ios/chrome/browser/ui/toolbar/public", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test:test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//net:test_support", + "//testing/gmock", + "//ui/strings", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + source_set("eg_test_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -335,6 +387,43 @@ source_set("eg_app_support+eg2") { ] } +source_set("test_support") { + testonly = true + defines = [ "CHROME_EARL_GREY_1" ] + sources = [ + "content_suggestions_app_interface.h", + "content_suggestions_app_interface.mm", + "ntp_home_provider_test_singleton.h", + "ntp_home_provider_test_singleton.mm", + "ntp_home_test_utils.h", + "ntp_home_test_utils.mm", + ] + deps = [ + ":constants", + ":content_suggestions_ui_util", + "//components/keyed_service/ios", + "//components/ntp_snippets", + "//components/ntp_snippets:test_support", + "//components/search_engines", + "//ios/chrome/browser", + "//ios/chrome/browser:utils", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ntp_snippets", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/ui/content_suggestions", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_ui", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/testing:block_swizzler", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web", + "//testing/gmock", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + source_set("feature_flags") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ diff --git a/ios/chrome/browser/ui/dialogs/BUILD.gn b/ios/chrome/browser/ui/dialogs/BUILD.gn index 5d8855a99d8e93..e34394288da42b 100644 --- a/ios/chrome/browser/ui/dialogs/BUILD.gn +++ b/ios/chrome/browser/ui/dialogs/BUILD.gn @@ -103,6 +103,39 @@ source_set("unit_tests_internal") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "javascript_dialog_egtest.mm" ] + deps = [ + ":constants", + "//base", + "//base/test:test_support", + "//components/strings", + "//components/url_formatter", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/download/BUILD.gn b/ios/chrome/browser/ui/download/BUILD.gn index 93d286a1f3ff50..eee6a29cc33336 100644 --- a/ios/chrome/browser/ui/download/BUILD.gn +++ b/ios/chrome/browser/ui/download/BUILD.gn @@ -114,6 +114,46 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "ar_quick_look_egtest.mm", + "download_manager_egtest.mm", + "pass_kit_egtest.mm", + ] + + deps = [ + "//base", + "//base/test:test_support", + "//components/infobars/core:feature_flags", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser:browser", + "//ios/chrome/browser/download", + "//ios/chrome/browser/download:test_support", + "//ios/chrome/browser/ui/browser_view", + "//ios/chrome/browser/ui/infobars:feature_flags", + "//ios/chrome/browser/ui/infobars/banners:public", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test:test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:embedded_test_server_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/common", + "//ios/web/public", + "//ios/web/public/test:element_selector", + "//net:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/find_bar/BUILD.gn b/ios/chrome/browser/ui/find_bar/BUILD.gn index a4c7a136a2803c..6b66f081a32e78 100644 --- a/ios/chrome/browser/ui/find_bar/BUILD.gn +++ b/ios/chrome/browser/ui/find_bar/BUILD.gn @@ -81,6 +81,39 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "find_in_page_egtest.mm" ] + deps = [ + ":constants", + ":test_support", + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/toolbar/accessory:constants", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "find_in_page_controller_app_interface.h", + "find_in_page_controller_app_interface.mm", + ] + deps = [ "//ios/chrome/browser/find_in_page" ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/first_run/BUILD.gn b/ios/chrome/browser/ui/first_run/BUILD.gn index 82b35815ce0b87..d95e7960555508 100644 --- a/ios/chrome/browser/ui/first_run/BUILD.gn +++ b/ios/chrome/browser/ui/first_run/BUILD.gn @@ -87,6 +87,37 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "first_run_egtest.mm" ] + deps = [ + ":constants", + ":eg_test_support", + "//base", + "//base/test:test_support", + "//components/metrics", + "//components/prefs", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/geolocation:geolocation_internal", + "//ios/chrome/browser/geolocation:test_support", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/signin:constants", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -113,6 +144,27 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "first_run_app_interface.h", + "first_run_app_interface.mm", + ] + deps = [ + ":first_run", + "//components/metrics", + "//components/prefs", + "//ios/chrome/app:app_internal", + "//ios/chrome/browser", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui/main:scene", + "//ios/chrome/browser/ui/main:scene_testing", + "//ios/chrome/test/app:test_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/fullscreen/BUILD.gn b/ios/chrome/browser/ui/fullscreen/BUILD.gn index 16c150f9a198d4..00c12febcd93f3 100644 --- a/ios/chrome/browser/ui/fullscreen/BUILD.gn +++ b/ios/chrome/browser/ui/fullscreen/BUILD.gn @@ -163,6 +163,33 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "fullscreen_egtest.mm" ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":fullscreen", + "//base", + "//base/test:test_support", + "//ios/chrome/browser/ui/fullscreen/test:eg_test_support", + "//ios/chrome/browser/ui/side_swipe", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web:earl_grey_test_support", + "//ios/web/common", + "//ios/web/public", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/fullscreen/test/BUILD.gn b/ios/chrome/browser/ui/fullscreen/test/BUILD.gn index 337c92a11a2618..60c66112b87fc1 100644 --- a/ios/chrome/browser/ui/fullscreen/test/BUILD.gn +++ b/ios/chrome/browser/ui/fullscreen/test/BUILD.gn @@ -29,6 +29,25 @@ source_set("test") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "fullscreen_app_interface.h", + "fullscreen_app_interface.mm", + ] + deps = [ + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/main:public", + "//ios/chrome/browser/ui/fullscreen", + "//ios/chrome/browser/ui/fullscreen:feature_flags", + "//ios/chrome/test/app:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/ios/chrome/browser/ui/history/BUILD.gn b/ios/chrome/browser/ui/history/BUILD.gn index 73093da7c37ce8..6f81c64a7dd299 100644 --- a/ios/chrome/browser/ui/history/BUILD.gn +++ b/ios/chrome/browser/ui/history/BUILD.gn @@ -143,6 +143,32 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "history_ui_egtest.mm" ] + deps = [ + ":constants", + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/settings/cells:clear_browsing_data_constants", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/browser/ui/util:multiwindow_util", + "//ios/chrome/common", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//net:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/infobars/BUILD.gn b/ios/chrome/browser/ui/infobars/BUILD.gn index fc3c2ec602c511..7c75bef469560c 100644 --- a/ios/chrome/browser/ui/infobars/BUILD.gn +++ b/ios/chrome/browser/ui/infobars/BUILD.gn @@ -184,7 +184,63 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "infobar_egtest.mm", + "translate_infobar_egtest.mm", + ] + deps = [ + ":eg_test_support", + "//base", + "//base/test:test_support", + "//components/infobars/core:feature_flags", + "//components/translate/core/browser:translate_pref_names", + "//components/translate/core/common", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser:chrome_url_constants", + "//ios/chrome/browser/translate:eg_test_support", + "//ios/chrome/browser/ui/badges:public", + "//ios/chrome/browser/ui/infobars:constants", + "//ios/chrome/browser/ui/infobars:feature_flags", + "//ios/chrome/browser/ui/infobars/banners:public", + "//ios/chrome/browser/ui/infobars/modals:public", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/test/earl_grey:test_support", + "//ios/components/webui:url_constants", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server", + "//ui/base", + "//url", + ] + libs = [ "XCTest.framework" ] +} + +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "infobar_manager_app_interface.h", + "infobar_manager_app_interface.mm", + ] + deps = [ + ":test_support", + "//base", + "//components/infobars/core", + "//ios/chrome/app:app_internal", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/main:public", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/web_state_list", + "//ios/chrome/test/app:test_support", + ] +} + source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ diff --git a/ios/chrome/browser/ui/keyboard/BUILD.gn b/ios/chrome/browser/ui/keyboard/BUILD.gn index 4bcd024323e7eb..7ec88026f038ba 100644 --- a/ios/chrome/browser/ui/keyboard/BUILD.gn +++ b/ios/chrome/browser/ui/keyboard/BUILD.gn @@ -26,6 +26,27 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "keyboard_commands_egtest.mm" ] + deps = [ + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/bookmarks:bookmarks_ui", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/ntp/BUILD.gn b/ios/chrome/browser/ui/ntp/BUILD.gn index fae8f3fb28830b..cccfe6d3201b50 100644 --- a/ios/chrome/browser/ui/ntp/BUILD.gn +++ b/ios/chrome/browser/ui/ntp/BUILD.gn @@ -196,6 +196,28 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "new_tab_page_egtest.mm" ] + deps = [ + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/omnibox/BUILD.gn b/ios/chrome/browser/ui/omnibox/BUILD.gn index b0d2fbce35b404..aea36635b44412 100644 --- a/ios/chrome/browser/ui/omnibox/BUILD.gn +++ b/ios/chrome/browser/ui/omnibox/BUILD.gn @@ -187,6 +187,30 @@ source_set("omnibox_internal") { ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "omnibox_app_interface.h", + "omnibox_app_interface.mm", + ] + deps = [ + "//base", + "//components/google/core/common", + "//components/variations:variations", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/omnibox/popup:popup_ui", + "//ios/chrome/test/app:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public", + "//ios/web/public/navigation", + "//net:test_support", + "//ui/base", + "//ui/base:test_support", + ] +} source_set("app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -245,6 +269,37 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "omnibox_egtest.mm" ] + deps = [ + ":omnibox", + ":omnibox_internal", + ":test_support", + "//base", + "//base/test:test_support", + "//components/google/core/common", + "//components/omnibox/browser", + "//components/variations", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui:feature_flags", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/omnibox/popup:popup_ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:hardware_keyboarr_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//net:test_support", + "//testing/gmock", + "//ui/base", + ] + libs = [ "XCTest.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + source_set("unit_tests") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true diff --git a/ios/chrome/browser/ui/omnibox/popup/BUILD.gn b/ios/chrome/browser/ui/omnibox/popup/BUILD.gn index e7b082df374f84..690d0a6931d968 100644 --- a/ios/chrome/browser/ui/omnibox/popup/BUILD.gn +++ b/ios/chrome/browser/ui/omnibox/popup/BUILD.gn @@ -145,6 +145,30 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + testonly = true + sources = [ "omnibox_popup_egtest.mm" ] + deps = [ + ":popup_accessibility_identifier_constants", + ":popup_internal", + ":popup_ui", + "//base", + "//base/test:test_support", + "//components/omnibox/browser", + "//ios/chrome/browser/ui:feature_flags", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//net:test_support", + "//testing/gmock", + ] + libs = [ "XCTest.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/page_info/BUILD.gn b/ios/chrome/browser/ui/page_info/BUILD.gn index a2dfabd246dc61..b1c3fe590a8ef1 100644 --- a/ios/chrome/browser/ui/page_info/BUILD.gn +++ b/ios/chrome/browser/ui/page_info/BUILD.gn @@ -116,6 +116,24 @@ source_set("coordinator") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "legacy_page_info_egtest.mm" ] + deps = [ + ":page_info", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/popup_menu/BUILD.gn b/ios/chrome/browser/ui/popup_menu/BUILD.gn index 9f33b750b995fb..bfa2714a22f8b2 100644 --- a/ios/chrome/browser/ui/popup_menu/BUILD.gn +++ b/ios/chrome/browser/ui/popup_menu/BUILD.gn @@ -182,3 +182,30 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "popup_menu_egtest.mm", + "request_desktop_mobile_site_egtest.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/strings", + "//components/version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/common:user_agent", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//ui/base", + ] +} diff --git a/ios/chrome/browser/ui/qr_scanner/BUILD.gn b/ios/chrome/browser/ui/qr_scanner/BUILD.gn index 7d3498d963533a..a4e2e3dec7f826 100644 --- a/ios/chrome/browser/ui/qr_scanner/BUILD.gn +++ b/ios/chrome/browser/ui/qr_scanner/BUILD.gn @@ -49,6 +49,30 @@ source_set("coordinator") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "qr_scanner_view_controller_egtest.mm" ] + deps = [ + ":test_support", + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/scanner:camera_state", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//net", + "//third_party/ocmock", + "//ui/base", + ] + libs = [ + "AVFoundation.framework", + "UIKit.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -76,6 +100,34 @@ source_set("eg2_tests") { ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "qr_scanner_app_interface.h", + "qr_scanner_app_interface.mm", + ] + deps = [ + ":qr_scanner", + "//base", + "//components/version_info", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser/main", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/location_bar", + "//ios/chrome/browser/ui/scanner", + "//ios/chrome/browser/ui/scanner:camera_state", + "//ios/chrome/browser/url_loading", + "//ios/chrome/test/app:test_support", + "//ios/testing:nserror_support", + "//net", + "//third_party/ocmock", + "//ui/base", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/reading_list/BUILD.gn b/ios/chrome/browser/ui/reading_list/BUILD.gn index 567ffc65fbf7e5..dbdf2a0bf2d4eb 100644 --- a/ios/chrome/browser/ui/reading_list/BUILD.gn +++ b/ios/chrome/browser/ui/reading_list/BUILD.gn @@ -164,6 +164,50 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "reading_list_egtest.mm" ] + deps = [ + ":reading_list", + ":reading_list_constants", + ":reading_list_ui", + ":test_support", + "//base", + "//base/test:test_support", + "//components/reading_list/core", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme:theme_grit", + "//ios/chrome/browser", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/table_view", + "//ios/chrome/browser/ui/table_view:constants", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/browser/ui/table_view:views", + "//ios/chrome/browser/ui/table_view/cells", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/material_components_ios", + "//ios/web", + "//ios/web/common:common", + "//ios/web/public", + "//ios/web/public/test", + "//ios/web/public/test/http_server", + "//net", + "//net:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -191,6 +235,25 @@ source_set("eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "reading_list_app_interface.h", + "reading_list_app_interface.mm", + ] + deps = [ + "//base/test:test_support", + "//base/test:test_support", + "//components/reading_list/core", + "//ios/chrome/browser/reading_list", + "//ios/chrome/test/app:test_support", + "//ios/testing:nserror_support", + "//ios/testing/earl_grey:earl_grey_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/recent_tabs/BUILD.gn b/ios/chrome/browser/ui/recent_tabs/BUILD.gn index 5ad62008b6af7c..db4a5daee6e046 100644 --- a/ios/chrome/browser/ui/recent_tabs/BUILD.gn +++ b/ios/chrome/browser/ui/recent_tabs/BUILD.gn @@ -128,6 +128,38 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "recent_tabs_egtest.mm" ] + deps = [ + ":recent_tabs_ui", + ":recent_tabs_ui_constants", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/cells:constants", + "//ios/chrome/browser/ui/history:constants", + "//ios/chrome/browser/ui/history:history_ui", + "//ios/chrome/browser/ui/list_model", + "//ios/chrome/browser/ui/table_view", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/sad_tab/BUILD.gn b/ios/chrome/browser/ui/sad_tab/BUILD.gn index c23e30f07a74cb..f223645d9ef478 100644 --- a/ios/chrome/browser/ui/sad_tab/BUILD.gn +++ b/ios/chrome/browser/ui/sad_tab/BUILD.gn @@ -79,6 +79,28 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "sad_tab_view_egtest.mm" ] + + deps = [ + ":sad_tab", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/safe_mode/BUILD.gn b/ios/chrome/browser/ui/safe_mode/BUILD.gn index 212ea8a840cbcb..c6ceece1f9f15c 100644 --- a/ios/chrome/browser/ui/safe_mode/BUILD.gn +++ b/ios/chrome/browser/ui/safe_mode/BUILD.gn @@ -28,6 +28,41 @@ source_set("safe_mode") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "safe_mode_egtest.mm" ] + deps = [ + ":safe_mode", + ":test_support", + "//base", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/main", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:block_swizzler", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + ] +} + +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "safe_mode_app_interface.h", + "safe_mode_app_interface.mm", + ] + deps = [ + ":safe_mode", + "//ios/chrome/test/app:test_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/BUILD.gn b/ios/chrome/browser/ui/settings/BUILD.gn index e396cf2b464444..5d9849468c08e2 100644 --- a/ios/chrome/browser/ui/settings/BUILD.gn +++ b/ios/chrome/browser/ui/settings/BUILD.gn @@ -204,6 +204,7 @@ source_set("constants") { } source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ @@ -324,6 +325,104 @@ source_set("unit_tests") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "block_popups_app_interface.h", + "block_popups_app_interface.mm", + "settings_app_interface.h", + "settings_app_interface.mm", + ] + deps = [ + "//base", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/metrics", + "//components/prefs", + "//components/search_engines", + "//ios/chrome/app:app_internal", + "//ios/chrome/browser", + "//ios/chrome/browser:pref_names", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/search_engines", + "//ios/chrome/test/app:test_support", + "//third_party/breakpad:client", + ] +} + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ + "//build/config/compiler:enable_arc", + "//build/config/ios:xctest_config", + ] + testonly = true + sources = [ + "block_popups_egtest.mm", + "search_engine_settings_egtest.mm", + "settings_accessibility_egtest.mm", + "settings_egtest.mm", + "signin_settings_egtest.mm", + ] + + deps = [ + ":constants", + ":eg_test_support", + "//base", + "//base/test:test_support", + "//build:branding_buildflags", + "//components/autofill/core/common", + "//components/browser_sync", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/keyed_service/core", + "//components/metrics", + "//components/password_manager/core/browser", + "//components/password_manager/core/common", + "//components/prefs", + "//components/search_engines", + "//components/strings", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browsing_data:feature_flags", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/ntp_snippets", + "//ios/chrome/browser/passwords:passwords", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui:feature_flags", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/authentication/cells", + "//ios/chrome/browser/ui/authentication/signin:constants", + "//ios/chrome/browser/ui/settings:test_support", + "//ios/chrome/browser/ui/table_view/cells", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test:test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test/http_server", + "//net", + "//net:test_support", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/ios/chrome/browser/ui/settings/autofill/BUILD.gn b/ios/chrome/browser/ui/settings/autofill/BUILD.gn index 04fe9c2706ce6b..d21536b39f7cce 100644 --- a/ios/chrome/browser/ui/settings/autofill/BUILD.gn +++ b/ios/chrome/browser/ui/settings/autofill/BUILD.gn @@ -108,6 +108,32 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "autofill_credit_card_settings_egtest.mm", + "autofill_profile_settings_egtest.mm", + ] + deps = [ + ":autofill", + ":constants", + ":feature_flags", + "//components/autofill/core/browser", + "//components/autofill/core/browser:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/ui/autofill:test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + "//ui/base", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/clear_browsing_data/BUILD.gn b/ios/chrome/browser/ui/settings/clear_browsing_data/BUILD.gn index 8347ec38a198ae..a5c6e734ce14c4 100644 --- a/ios/chrome/browser/ui/settings/clear_browsing_data/BUILD.gn +++ b/ios/chrome/browser/ui/settings/clear_browsing_data/BUILD.gn @@ -120,6 +120,21 @@ source_set("test_support") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "clear_browsing_data_egtest.mm" ] + deps = [ + "//base/test:test_support", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/settings/cells:clear_browsing_data_constants", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ui/base", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/google_services/BUILD.gn b/ios/chrome/browser/ui/settings/google_services/BUILD.gn index a71caf2cc0a6ec..ea6b65e0497391 100644 --- a/ios/chrome/browser/ui/settings/google_services/BUILD.gn +++ b/ios/chrome/browser/ui/settings/google_services/BUILD.gn @@ -92,6 +92,50 @@ source_set("constants") { deps = [] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "accounts_table_egtest.mm", + "google_services_settings_egtest.mm", + ] + deps = [ + ":constants", + ":test_support", + "//base/test:test_support", + "//components/password_manager/core/common", + "//components/safe_browsing/core:features", + "//components/safe_browsing/core/common:safe_browsing_prefs", + "//ios/chrome/app/strings", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui:feature_flags", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/browser/ui/bookmarks:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/testing/earl_grey:earl_grey_support", + "//ui/base", + ] +} + +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "google_services_settings_app_interface.h", + "google_services_settings_app_interface.mm", + ] + deps = [ + "//ios/chrome/app:app_internal", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/web_state_list", + "//ios/chrome/test/app:test_support", + "//ios/web/public/navigation", + ] +} source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/language/BUILD.gn b/ios/chrome/browser/ui/settings/language/BUILD.gn index aff719c1e91b32..c315ba3df590c8 100644 --- a/ios/chrome/browser/ui/settings/language/BUILD.gn +++ b/ios/chrome/browser/ui/settings/language/BUILD.gn @@ -93,6 +93,23 @@ source_set("unit_tests") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "language_settings_app_interface.h", + "language_settings_app_interface.mm", + ] + deps = [ + "//components/language/core/browser", + "//components/translate/core/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/translate", + "//ios/chrome/test/app:test_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc" ] @@ -149,3 +166,20 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "language_settings_egtest.mm" ] + deps = [ + ":eg_test_support", + ":language_ui_constants", + "//components/translate/core/browser:translate_pref_names", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ui/strings:ui_strings_grit", + ] +} diff --git a/ios/chrome/browser/ui/settings/password/BUILD.gn b/ios/chrome/browser/ui/settings/password/BUILD.gn index e8eb39ac25d90b..9fdc149070aed3 100644 --- a/ios/chrome/browser/ui/settings/password/BUILD.gn +++ b/ios/chrome/browser/ui/settings/password/BUILD.gn @@ -115,6 +115,64 @@ source_set("unit_tests") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "passwords_settings_app_interface.h", + "passwords_settings_app_interface.mm", + ] + deps = [ + ":password", + "//base", + "//base/test:test_support", + "//components/autofill/core/common", + "//components/keyed_service/core", + "//components/password_manager/core/browser", + "//components/password_manager/core/common", + "//components/prefs", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/passwords", + "//ios/chrome/common/ui/reauthentication", + "//ios/chrome/test/app:test_support", + "//ios/third_party/material_components_ios", + "//url", + ] +} + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "passwords_settings_egtest.mm" ] + deps = [ + ":eg_test_support", + ":password_constants", + "//base", + "//base/test:test_support", + "//components/strings", + "//components/ukm/ios:features", + "//ios/chrome/app/strings", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/ui/settings:settings_root_constants", + "//ios/chrome/browser/ui/table_view/cells", + "//ios/chrome/browser/ui/table_view/cells:cells_constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common/ui/reauthentication", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/material_components_ios", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test:element_selector", + "//ios/web/public/test:util", + "//ios/web/public/test/http_server", + "//ui/base", + "//url", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/sync/BUILD.gn b/ios/chrome/browser/ui/settings/sync/BUILD.gn index 31b6838646b700..f03a53986d8584 100644 --- a/ios/chrome/browser/ui/settings/sync/BUILD.gn +++ b/ios/chrome/browser/ui/settings/sync/BUILD.gn @@ -92,6 +92,23 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "sync_encryption_passphrase_table_view_controller_egtest.mm" ] + deps = [ + "//base/test:test_support", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/testing/earl_grey:earl_grey_support", + "//ui/base", + ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/settings/sync/utils/BUILD.gn b/ios/chrome/browser/ui/settings/sync/utils/BUILD.gn index 473207074f7fce..175db94c63c302 100644 --- a/ios/chrome/browser/ui/settings/sync/utils/BUILD.gn +++ b/ios/chrome/browser/ui/settings/sync/utils/BUILD.gn @@ -33,6 +33,29 @@ source_set("utils") { libs = [ "UIKit.framework" ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "sync_fake_server_egtest.mm" ] + deps = [ + "//base", + "//base/test:test_support", + "//components/bookmarks/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/authentication:eg_test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:fake_chrome_identity", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/side_swipe/BUILD.gn b/ios/chrome/browser/ui/side_swipe/BUILD.gn index 2d276f8f0e0e01..7e270e95d0170d 100644 --- a/ios/chrome/browser/ui/side_swipe/BUILD.gn +++ b/ios/chrome/browser/ui/side_swipe/BUILD.gn @@ -70,6 +70,28 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "side_swipe_egtest.mm" ] + + deps = [ + ":side_swipe", + "//base", + "//ios/chrome/browser", + "//ios/chrome/browser/ui/toolbar:toolbar_ui", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/test/http_server", + "//net:test_support", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/tab_grid/BUILD.gn b/ios/chrome/browser/ui/tab_grid/BUILD.gn index de38a59a6aebe9..b78e9641f0764a 100644 --- a/ios/chrome/browser/ui/tab_grid/BUILD.gn +++ b/ios/chrome/browser/ui/tab_grid/BUILD.gn @@ -151,6 +151,33 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ + "//build/config/compiler:enable_arc", + "//build/config/ios:xctest_config", + ] + testonly = true + sources = [ + "tab_grid_egtest.mm", + "tab_grid_transition_egtest.mm", + ] + + deps = [ + ":tab_grid_ui_constants", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings:ios_strings_grit", + "//ios/chrome/browser/tabs:tabs", + "//ios/chrome/browser/ui/tab_grid:tab_grid_ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/web/public/test/http_server", + "//net:test_support", + ] + libs = [ "UIKit.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/tabs/BUILD.gn b/ios/chrome/browser/ui/tabs/BUILD.gn index d3d8f3ceb2f81c..9d4a582ccd8386 100644 --- a/ios/chrome/browser/ui/tabs/BUILD.gn +++ b/ios/chrome/browser/ui/tabs/BUILD.gn @@ -114,6 +114,24 @@ source_set("unit_tests") { ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ "tab_strip_egtest.mm" ] + deps = [ + ":tabs", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/toolbar/BUILD.gn b/ios/chrome/browser/ui/toolbar/BUILD.gn index 75cd28d465557f..7a4bdd80998e84 100644 --- a/ios/chrome/browser/ui/toolbar/BUILD.gn +++ b/ios/chrome/browser/ui/toolbar/BUILD.gn @@ -157,6 +157,22 @@ source_set("unit_tests") { configs += [ "//build/config/compiler:enable_arc" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "adaptive_toolbar_app_interface.h", + "adaptive_toolbar_app_interface.mm", + ] + deps = [ + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui/infobars:test_support", + "//ios/chrome/test/app:test_support", + "//ios/testing:nserror_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -217,3 +233,43 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "adaptive_toolbar_egtest.mm", + "toolbar_egtest.mm", + ] + deps = [ + ":test_support", + ":toolbar_ui", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/infobars:test_support", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/omnibox/popup", + "//ios/chrome/browser/ui/omnibox/popup:popup_internal", + "//ios/chrome/browser/ui/omnibox/popup:popup_ui", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/toolbar/buttons", + "//ios/chrome/browser/ui/toolbar/public", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/ios/chrome/browser/ui/util/BUILD.gn b/ios/chrome/browser/ui/util/BUILD.gn index 9237ec946ecf38..6bd04e6d3ba3d4 100644 --- a/ios/chrome/browser/ui/util/BUILD.gn +++ b/ios/chrome/browser/ui/util/BUILD.gn @@ -214,6 +214,23 @@ bundle_data("terms_resources") { outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "keyboard_observer_helper_app_interface.h", + "keyboard_observer_helper_app_interface.mm", + ] + deps = [ + ":util", + "//base", + "//base/test:test_support", + "//ios/chrome/test/app:test_support", + "//ios/testing/earl_grey:earl_grey_support", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/webui/BUILD.gn b/ios/chrome/browser/ui/webui/BUILD.gn index 2b92a3a501588d..c32bedbcec97c4 100644 --- a/ios/chrome/browser/ui/webui/BUILD.gn +++ b/ios/chrome/browser/ui/webui/BUILD.gn @@ -126,6 +126,32 @@ source_set("webui_internal") { ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "inspect/inspect_ui_egtest.mm", + "web_ui_egtest.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/strings", + "//components/version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/components/webui:url_constants", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/ui/webui/interstitials/BUILD.gn b/ios/chrome/browser/ui/webui/interstitials/BUILD.gn index f050b1008fce61..91e2151558dc43 100644 --- a/ios/chrome/browser/ui/webui/interstitials/BUILD.gn +++ b/ios/chrome/browser/ui/webui/interstitials/BUILD.gn @@ -43,6 +43,26 @@ source_set("constants") { configs += [ "//build/config/compiler:enable_arc" ] } +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "interstitial_ui_egtest.mm" ] + deps = [ + ":constants", + "//base", + "//base/test:test_support", + "//ios/chrome/browser:chrome_url_constants", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/components/webui:url_constants", + "//ios/testing/earl_grey:earl_grey_support", + "//net:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/browser/web/BUILD.gn b/ios/chrome/browser/web/BUILD.gn index 8a7b03c2278856..6c9179d2a5b917 100644 --- a/ios/chrome/browser/web/BUILD.gn +++ b/ios/chrome/browser/web/BUILD.gn @@ -344,6 +344,85 @@ source_set("unit_tests_internal") { ] } +source_set("earl_grey_support") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "progress_indicator_app_interface.h", + "progress_indicator_app_interface.mm", + ] + deps = [ + "//base", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/material_components_ios", + ] +} + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "browsing_egtest.mm", + "browsing_prevent_default_egtest.mm", + "cache_egtest.mm", + "child_window_open_by_dom_egtest.mm", + "content_mode_egtest.mm", + "error_page_egtest.mm", + "forms_egtest.mm", + "http_auth_egtest.mm", + "js_print_egtest.mm", + "navigation_egtest.mm", + "progress_indicator_egtest.mm", + "push_and_replace_state_navigation_egtest.mm", + "restore_egtest.mm", + "ssl_egtest.mm", + "stop_loading_egtest.mm", + "tab_order_egtest.mm", + "visible_url_egtest.mm", + "window_open_by_dom_egtest.mm", + ] + deps = [ + ":earl_grey_support", + "//base", + "//base/test:test_support", + "//components/content_settings/core/common", + "//components/strings", + "//components/url_formatter", + "//components/version_info:version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/util", + "//ios/chrome/test:eg_test_support", + "//ios/chrome/test:test_support", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/net:test_support", + "//ios/testing:embedded_test_server_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/material_components_ios", + "//ios/web:earl_grey_test_support", + "//ios/web/common", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net", + "//net:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + source_set("eg_test_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/test/BUILD.gn b/ios/chrome/test/BUILD.gn index 95ce6658f7b552..ce102d9c3c8335 100644 --- a/ios/chrome/test/BUILD.gn +++ b/ios/chrome/test/BUILD.gn @@ -69,6 +69,21 @@ source_set("test_support") { ] } +source_set("eg_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "scoped_eg_synchronization_disabler.h", + "scoped_eg_synchronization_disabler.mm", + ] + deps = [ + "//base", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + ] +} + source_set("eg_test_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/chrome/test/earl_grey/BUILD.gn b/ios/chrome/test/earl_grey/BUILD.gn index 9467e119612f97..2dfe1d59e6e8a6 100644 --- a/ios/chrome/test/earl_grey/BUILD.gn +++ b/ios/chrome/test/earl_grey/BUILD.gn @@ -2,6 +2,186 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//ios/chrome/test/earl_grey/chrome_ios_eg_test.gni") + +group("all_tests") { + testonly = true + deps = [ + ":ios_chrome_autofill_automation_egtests", + ":ios_chrome_bookmarks_egtests", + ":ios_chrome_device_check_egtests", + ":ios_chrome_flaky_egtests", + ":ios_chrome_integration_egtests", + ":ios_chrome_multitasking_egtests", + ":ios_chrome_perf_egtests", + ":ios_chrome_reading_list_egtests", + ":ios_chrome_settings_egtests", + ":ios_chrome_signin_egtests", + ":ios_chrome_smoke_egtests", + ":ios_chrome_translate_egtests", + ":ios_chrome_ui_egtests", + ":ios_chrome_web_egtests", + ] +} + +chrome_ios_eg_test("ios_chrome_integration_egtests") { + deps = [ + "//ios/chrome/browser/autofill:eg_tests", + "//ios/chrome/browser/context_menu:eg_tests", + "//ios/chrome/browser/device_sharing:eg_tests", + "//ios/chrome/browser/feature_engagement:eg_tests", + "//ios/chrome/browser/metrics:eg_tests", + "//ios/chrome/browser/net:eg_tests", + "//ios/chrome/browser/ntp_tiles:eg_tests", + "//ios/chrome/browser/passwords:eg_tests", + "//ios/chrome/browser/prerender:eg_tests", + "//ios/chrome/browser/ui/autofill:eg_tests", + "//ios/chrome/browser/ui/autofill/manual_fill:eg_tests", + "//ios/chrome/browser/ui/content_suggestions:eg_tests", + ] + + xctest = false +} + +chrome_ios_eg_test("ios_chrome_autofill_automation_egtests") { + deps = [ "//ios/chrome/browser/autofill/automation:eg_tests" ] +} + +chrome_ios_eg_test("ios_chrome_reading_list_egtests") { + deps = [ + ":test_support", + "//ios/chrome/browser/ui/reading_list:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_bookmarks_egtests") { + deps = [ "//ios/chrome/browser/ui/bookmarks:eg_tests" ] + + shards = 3 +} + +chrome_ios_eg_test("ios_chrome_signin_egtests") { + deps = [ "//ios/chrome/browser/ui/authentication/signin:eg_tests" ] +} + +chrome_ios_eg_test("ios_chrome_settings_egtests") { + deps = [ + "//ios/chrome/browser/ui/settings:eg_tests", + "//ios/chrome/browser/ui/settings/autofill:eg_tests", + "//ios/chrome/browser/ui/settings/clear_browsing_data:eg_tests", + "//ios/chrome/browser/ui/settings/google_services:eg_tests", + "//ios/chrome/browser/ui/settings/language:eg_tests", + "//ios/chrome/browser/ui/settings/password:eg_tests", + "//ios/chrome/browser/ui/settings/sync:eg_tests", + ] + xctest = false +} + +chrome_ios_eg_test("ios_chrome_ui_egtests") { + deps = [ + "//ios/chrome/browser/ui/activity_services:eg_tests", + "//ios/chrome/browser/ui/browser_view:eg_tests", + "//ios/chrome/browser/ui/dialogs:eg_tests", + "//ios/chrome/browser/ui/download:eg_tests", + "//ios/chrome/browser/ui/find_bar:eg_tests", + "//ios/chrome/browser/ui/first_run:eg_tests", + "//ios/chrome/browser/ui/fullscreen:eg_tests", + "//ios/chrome/browser/ui/history:eg_tests", + "//ios/chrome/browser/ui/infobars:eg_tests", + "//ios/chrome/browser/ui/keyboard:eg_tests", + "//ios/chrome/browser/ui/ntp:eg_tests", + "//ios/chrome/browser/ui/omnibox:eg_tests", + "//ios/chrome/browser/ui/omnibox/popup:eg_tests", + "//ios/chrome/browser/ui/page_info:eg_tests", + "//ios/chrome/browser/ui/popup_menu:eg_tests", + "//ios/chrome/browser/ui/qr_scanner:eg_tests", + "//ios/chrome/browser/ui/recent_tabs:eg_tests", + "//ios/chrome/browser/ui/sad_tab:eg_tests", + "//ios/chrome/browser/ui/safe_mode:eg_tests", + "//ios/chrome/browser/ui/settings/sync/utils:eg_tests", + "//ios/chrome/browser/ui/side_swipe:eg_tests", + "//ios/chrome/browser/ui/tab_grid:eg_tests", + "//ios/chrome/browser/ui/tabs:eg_tests", + "//ios/chrome/browser/ui/toolbar:eg_tests", + "//ios/chrome/browser/ui/webui:eg_tests", + "//ios/chrome/browser/ui/webui/interstitials:eg_tests", + ] + + shards = 2 + xctest = false +} + +chrome_ios_eg_test("ios_chrome_web_egtests") { + deps = [ "//ios/chrome/browser/web:eg_tests" ] +} + +chrome_ios_eg_test("ios_chrome_multitasking_egtests") { + deps = [ + ":test_support", + "//base", + "//ios/chrome/app:app_internal", + "//ios/chrome/app:multitasking_test_app_delegate", + "//ios/chrome/app/application_delegate:application_delegate_internal", + + # Depends on all EarlGrey test suites to create multitasking tests suite. + ":ios_chrome_bookmarks_egtests_deps_group", + ":ios_chrome_integration_egtests_deps_group", + ":ios_chrome_settings_egtests_deps_group", + ":ios_chrome_signin_egtests_deps_group", + ":ios_chrome_ui_egtests_deps_group", + ":ios_chrome_web_egtests_deps_group", + ] + + eg_main_application_delegate = "MultitaskingTestApplicationDelegate" +} + +chrome_ios_eg_test("ios_chrome_perf_egtests") { + deps = [ "//ios/chrome/test/perf:eg_tests" ] +} + +chrome_ios_eg_test("ios_chrome_device_check_egtests") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ "device_check_egtest.mm" ] + deps = [ + ":test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//url", + ] +} + +chrome_ios_eg_test("ios_chrome_flaky_egtests") { + deps = [ + ":test_support", + "//base", + + # Depends on all EarlGrey test suites to run all the FLAKY_ tests found. + # When adding a new test application, please follow the same pattern. + ":ios_chrome_bookmarks_egtests_deps_group", + ":ios_chrome_integration_egtests_deps_group", + ":ios_chrome_settings_egtests_deps_group", + ":ios_chrome_signin_egtests_deps_group", + ":ios_chrome_ui_egtests_deps_group", + ":ios_chrome_web_egtests_deps_group", + ] +} + +chrome_ios_eg_test("ios_chrome_smoke_egtests") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ "smoke_egtest.mm" ] + deps = [ + ":test_support", + "//ios/chrome/test/app:test_support", + "//ios/third_party/earl_grey:earl_grey+link", + ] + libs = [ "XCTest.framework" ] +} + +chrome_ios_eg_test("ios_chrome_translate_egtests") { + deps = [ "//ios/chrome/browser/translate:eg_tests" ] +} + # This target is only used in routinely device checks. Thus, the target name is # different from other EG2 tests. source_set("device_check_eg2_tests") { @@ -21,6 +201,151 @@ source_set("device_check_eg2_tests") { libs = [ "UIKit.framework" ] } +source_set("test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "accessibility_util.h", + "accessibility_util.mm", + "chrome_actions.h", + "chrome_actions.mm", + "chrome_actions_app_interface.h", + "chrome_actions_app_interface.mm", + "chrome_earl_grey.h", + "chrome_earl_grey.mm", + "chrome_earl_grey_app_interface.h", + "chrome_earl_grey_app_interface.mm", + "chrome_earl_grey_ui.h", + "chrome_earl_grey_ui.mm", + "chrome_matchers.h", + "chrome_matchers.mm", + "chrome_matchers_app_interface.h", + "chrome_matchers_app_interface.mm", + "chrome_test_case.h", + "chrome_test_case.mm", + "chrome_test_case_app_interface.h", + "chrome_test_case_app_interface.mm", + "earl_grey_scoped_block_swizzler.h", + "earl_grey_scoped_block_swizzler.mm", + "earl_grey_scoped_block_swizzler_app_interface.h", + "earl_grey_scoped_block_swizzler_app_interface.mm", + "scoped_block_popups_pref.h", + "scoped_block_popups_pref.mm", + ] + + deps = [ + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/metrics:demographic_metrics_provider", + "//components/prefs", + "//components/strings", + "//components/sync/base", + "//components/translate/core/browser", + "//components/ukm/ios:features", + "//components/unified_consent", + "//components/variations", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/content_settings:content_settings", + "//ios/chrome/browser/ntp:features", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/passwords:test_support", + "//ios/chrome/browser/ui:feature_flags", + "//ios/chrome/browser/ui/authentication:authentication", + "//ios/chrome/browser/ui/authentication/cells", + "//ios/chrome/browser/ui/authentication/signin/advanced_settings_signin:constants", + "//ios/chrome/browser/ui/autofill:autofill_ui", + "//ios/chrome/browser/ui/autofill/manual_fill", + "//ios/chrome/browser/ui/autofill/manual_fill:manual_fill_ui", + "//ios/chrome/browser/ui/bookmarks:bookmarks_ui", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/commands:commands", + "//ios/chrome/browser/ui/content_suggestions:constants", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_constant", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_ui", + "//ios/chrome/browser/ui/history:constants", + "//ios/chrome/browser/ui/history:history_ui", + "//ios/chrome/browser/ui/location_bar:location_bar", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/omnibox/keyboard_assist", + "//ios/chrome/browser/ui/popup_menu:constants", + "//ios/chrome/browser/ui/qr_scanner:test_support", + "//ios/chrome/browser/ui/recent_tabs:recent_tabs_ui_constants", + "//ios/chrome/browser/ui/safe_mode", + "//ios/chrome/browser/ui/safe_mode:test_support", + "//ios/chrome/browser/ui/settings:constants", + "//ios/chrome/browser/ui/settings:settings", + "//ios/chrome/browser/ui/settings:settings_root", + "//ios/chrome/browser/ui/settings:settings_root_constants", + "//ios/chrome/browser/ui/settings/autofill", + "//ios/chrome/browser/ui/settings/autofill:constants", + "//ios/chrome/browser/ui/settings/autofill:feature_flags", + "//ios/chrome/browser/ui/settings/cells", + "//ios/chrome/browser/ui/settings/clear_browsing_data", + "//ios/chrome/browser/ui/settings/credit_card_scanner", + "//ios/chrome/browser/ui/settings/google_services:constants", + "//ios/chrome/browser/ui/settings/password:eg_test_support", + "//ios/chrome/browser/ui/settings/password:password_constants", + "//ios/chrome/browser/ui/settings/privacy:privacy_ui", + "//ios/chrome/browser/ui/settings/sync", + "//ios/chrome/browser/ui/tab_grid:tab_grid_ui_constants", + "//ios/chrome/browser/ui/tab_grid/grid:grid_ui_constants", + "//ios/chrome/browser/ui/table_view:feature_flags", + "//ios/chrome/browser/ui/table_view/cells", + "//ios/chrome/browser/ui/toolbar:test_support", + "//ios/chrome/browser/ui/toolbar:toolbar_ui", + "//ios/chrome/browser/ui/toolbar/buttons", + "//ios/chrome/browser/ui/toolbar/public", + "//ios/chrome/browser/ui/toolbar/public:feature_flags", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web:tab_id_tab_helper", + "//ios/chrome/test/app:test_support", + "//ios/testing:block_swizzler", + "//ios/testing:hardware_keyboarr_support", + "//ios/testing:verify_custom_webkit", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/material_components_ios", + "//ios/third_party/webkit", + "//ios/web", + "//ios/web:earl_grey_test_support", + "//ios/web/common", + "//ios/web/public/deprecated", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/http_server", + "//net:test_support", + "//services/metrics/public/cpp:metrics_cpp", + "//third_party/metrics_proto", + "//ui/base", + "//ui/base:test_support", + "//url", + ] + + public_deps = [ + "//build/config/ios:xctest", + "//ios/testing:nserror_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/gtx:gtx+link", + "//ios/web/public/test", + "//ios/web/public/test/fakes", + ] + + libs = [ + "OCHamcrest.framework", + "XCTest.framework", + "IOKit.framework", + ] + + all_dependent_configs = [ "//third_party/protobuf:protobuf_config" ] +} + source_set("hooks") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true diff --git a/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni b/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni new file mode 100644 index 00000000000000..638beaca2b0481 --- /dev/null +++ b/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni @@ -0,0 +1,170 @@ +# Copyright 2016 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import("//build/apple/tweak_info_plist.gni") +import("//build/config/ios/ios_sdk.gni") +import("//ios/build/chrome_build.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") + +# Template wrapping ios_eg_test, setting default values for EarlGrey test +# based on //ios/chrome/app:chrome. +# +# Arguments: +# +# info_plist: +# (optional) string, path to the Info.plist file that will be used for +# the bundle. +# +# info_plist_target: +# (optional) string, if the info_plist is generated from an action, +# rather than a regular source file, specify the target name in lieu +# of info_plist. The two arguments are mutually exclusive. +# +# extra_info_plists: +# (optional) string array, extra list of plist files that will be merged +# and tweaked; ignored if either info_plist or info_plist_target is set. +# +# entitlements_path: +# (optional) path to the template to use to generate the application +# entitlements by performing variable substitutions, defaults to +# //build/config/ios/entitlements.plist. +# +# entitlements_target: +# (optional) label of the target generating the application +# entitlements (must generate a single file as output); cannot be +# defined if entitlements_path is set. +# +# deps +# list of labels to depends on. +# +# hooks_target +# (optional) label of the target defining the hooks used in tests. +# Defaults to //ios/chrome/test/earl_grey:hooks if undefined. +# +# This template defines two targets, one named "${target_name}" is the EarlGrey +# test application, and the other named "${target_name}_deps_group" is a group +# target that depends on the template "deps" property (used to implement the +# test suite running the FLAKY_ tests). +# +template("chrome_ios_eg_test") { + if (!defined(entitlements_path) && !defined(entitlements_target)) { + _target_name = target_name + _tweak_entitlements = target_name + "_tweak_entitlements" + compile_entitlements(_tweak_entitlements) { + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/$_target_name.entitlements" + entitlements_templates = + [ "//ios/chrome/test/earl_grey/resources/Chrome.entitlements" ] + if (ios_egtests_entitlements_additions != []) { + entitlements_templates += ios_egtests_entitlements_additions + } + } + } + + if (!defined(info_plist) && !defined(info_plist_target)) { + _tweak_info_plist = target_name + "_tweak_info_plist" + tweak_info_plist(_tweak_info_plist) { + info_plists = [ + "//ios/chrome/app/resources/Info.plist", + "//ios/chrome/app/resources/EarlGreyAddition+Info.plist", + ] + if (ios_chrome_info_plist_additions != []) { + info_plists += ios_chrome_info_plist_additions + } + if (ios_chrome_info_plist_addition_targets != []) { + if (!defined(deps)) { + deps = [] + } + deps += ios_chrome_info_plist_addition_targets + } + if (defined(invoker.extra_info_plists)) { + info_plists += invoker.extra_info_plists + } + args = [ + "--breakpad=$breakpad_enabled_as_int", + "--branding=$chromium_short_name", + "--version-overrides=MINOR=9999", + ] + } + } + + _deps_group_name = target_name + "_deps_group" + group(_deps_group_name) { + testonly = true + public_deps = invoker.deps + if (defined(invoker.public_deps)) { + public_deps += invoker.public_deps + } + } + + ios_eg_test(target_name) { + forward_variables_from(invoker, + "*", + [ + "deps", + "entitlements_path", + "entitlements_target", + "eg_main_application_delegate", + "hooks_target", + "info_plist", + "info_plist_target", + "public_deps", + ]) + + if (!defined(entitlements_path) && !defined(entitlements_target)) { + entitlements_target = ":$_tweak_entitlements" + } + + if (!defined(info_plist) && !defined(info_plist_target)) { + info_plist_target = ":$_tweak_info_plist" + } + + _eg_main_application_delegate = "MainApplicationDelegate" + if (defined(invoker.eg_main_application_delegate)) { + _eg_main_application_delegate = invoker.eg_main_application_delegate + } + + deps = [ + ":$_deps_group_name", + "//ios/chrome/app:main", + "//ios/testing:http_server_bundle_data", + ] + if (defined(invoker.hooks_target)) { + assert(invoker.hooks_target != "", + "hooks_target must be non-empty if defined") + deps += [ invoker.hooks_target ] + } else { + deps += [ "//ios/chrome/test/earl_grey:hooks" ] + } + if (!defined(bundle_deps)) { + bundle_deps = [] + } + bundle_deps += [ + "//ios/chrome/app/resources", + ios_application_icons_target, + ] + xcode_product_bundle_id = "gtest.$target_name" + + if (!defined(extra_substitutions)) { + extra_substitutions = [] + } + extra_substitutions += [ + "CHROMIUM_HANDOFF_ID=$chromium_handoff_id", + "CHROMIUM_SHORT_NAME=$target_name", + "CHROMIUM_URL_SCHEME_1=$url_unsecure_scheme", + "CHROMIUM_URL_SCHEME_2=$url_secure_scheme", + "CHROMIUM_URL_SCHEME_3=$url_x_callback_scheme", + "CHROMIUM_URL_CHANNEL_SCHEME=$url_channel_scheme", + "EG_MAIN_APPLICATION_DELEGATE=$_eg_main_application_delegate", + "SSOAUTH_URL_SCHEME=$url_ssoauth_scheme", + "CONTENT_WIDGET_EXTENSION_BUNDLE_ID=$chromium_bundle_id.ContentTodayExtension", + "CHROMIUM_BUNDLE_ID=gtest.$target_name", + ] + } +} + +set_defaults("chrome_ios_eg_test") { + configs = default_executable_configs +} diff --git a/ios/showcase/BUILD.gn b/ios/showcase/BUILD.gn index 47324dab3c08ae..7a0ea0a5e36d90 100644 --- a/ios/showcase/BUILD.gn +++ b/ios/showcase/BUILD.gn @@ -5,6 +5,7 @@ import("//build/config/ios/rules.gni") import("//ios/build/chrome_build.gni") import("//ios/build/config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") import("//ios/third_party/earl_grey2/ios_eg2_test.gni") ios_app_bundle("showcase") { @@ -80,3 +81,23 @@ ios_eg2_test("ios_showcase_eg2tests_module") { bundle_deps = [ "//ios/showcase/core/resources" ] data_deps = [ ":ios_showcase_eg2tests" ] } + +ios_eg_test("ios_showcase_egtests") { + info_plist = "core/Info.plist" + extra_substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + deps = [ + ":features", + "//ios/showcase/core:main", + + # Add all eg_tests targets below. + "//ios/showcase/badges:eg_tests", + "//ios/showcase/bubble:eg_tests", + "//ios/showcase/content_suggestions:eg_tests", + "//ios/showcase/core:eg_tests", + "//ios/showcase/infobars:eg_tests", + "//ios/showcase/text_badge_view:eg_tests", + ] + + bundle_deps = [ "//ios/showcase/core/resources" ] + assert_no_deps = ios_assert_no_deps +} diff --git a/ios/showcase/badges/BUILD.gn b/ios/showcase/badges/BUILD.gn index 00ea1f5f88f6e3..70abb83575f7f2 100644 --- a/ios/showcase/badges/BUILD.gn +++ b/ios/showcase/badges/BUILD.gn @@ -47,3 +47,17 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "sc_badge_egtest.mm" ] + deps = [ + ":badges_constants", + "//ios/chrome/browser/infobars:badge", + "//ios/chrome/browser/ui/badges:public", + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/showcase/bubble/BUILD.gn b/ios/showcase/bubble/BUILD.gn index f4ea0fad8c8ded..5fff2f0d675970 100644 --- a/ios/showcase/bubble/BUILD.gn +++ b/ios/showcase/bubble/BUILD.gn @@ -30,3 +30,17 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + testonly = true + defines = [ "CHROME_EARL_GREY_1" ] + sources = [ "sc_bubble_egtest.mm" ] + deps = [ + "//ios/chrome/browser/ui/bubble", + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/showcase/content_suggestions/BUILD.gn b/ios/showcase/content_suggestions/BUILD.gn index bc3de182245457..fef57a285b7d8c 100644 --- a/ios/showcase/content_suggestions/BUILD.gn +++ b/ios/showcase/content_suggestions/BUILD.gn @@ -50,3 +50,23 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "sc_content_suggestions_egtest.mm" ] + deps = [ + ":content_suggestions", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/content_suggestions:constants", + "//ios/chrome/browser/ui/content_suggestions:content_suggestions_ui", + "//ios/chrome/browser/ui/content_suggestions/cells:cells_ui", + "//ios/chrome/browser/ui/util", + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/showcase/core/BUILD.gn b/ios/showcase/core/BUILD.gn index ef583480096a28..91d9f067df275c 100644 --- a/ios/showcase/core/BUILD.gn +++ b/ios/showcase/core/BUILD.gn @@ -61,6 +61,18 @@ source_set("main") { configs += [ "//build/config/compiler:enable_arc" ] } +source_set("eg_tests") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ "showcase_egtest.mm" ] + deps = [ + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + source_set("eg2_tests") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ diff --git a/ios/showcase/infobars/BUILD.gn b/ios/showcase/infobars/BUILD.gn index be6ee64255cb94..0831c8819efee8 100644 --- a/ios/showcase/infobars/BUILD.gn +++ b/ios/showcase/infobars/BUILD.gn @@ -59,3 +59,21 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + testonly = true + defines = [ "CHROME_EARL_GREY_1" ] + sources = [ + "sc_infobar_banner_coordinator_egtest.mm", + "sc_infobar_banner_no_modal_coordinator_egtest.mm", + ] + deps = [ + ":constants", + "//ios/chrome/browser/ui/infobars/banners:public", + "//ios/chrome/browser/ui/infobars/modals:public", + "//ios/showcase/infobars", + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/showcase/test/BUILD.gn b/ios/showcase/test/BUILD.gn index e325c5d8841968..5b8bae00db173e 100644 --- a/ios/showcase/test/BUILD.gn +++ b/ios/showcase/test/BUILD.gn @@ -2,6 +2,27 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +source_set("test") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + sources = [ + "showcase_eg_utils.h", + "showcase_eg_utils.mm", + "showcase_test_case.h", + "showcase_test_case.mm", + ] + deps = [ + ":test_support", + "//base", + "//ios/showcase/core", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//testing/gtest", + ] + public_deps = [ "//build/config/ios:xctest" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + source_set("eg2_test") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ @@ -59,3 +80,17 @@ source_set("eg_app_support+eg2") { "//ios/showcase/core", ] } + +source_set("test_support") { + testonly = true + defines = [ "CHROME_EARL_GREY_1" ] + sources = [ + "showcase_test_case_app_interface.h", + "showcase_test_case_app_interface.mm", + ] + deps = [ + "//base", + "//ios/showcase/core", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/showcase/text_badge_view/BUILD.gn b/ios/showcase/text_badge_view/BUILD.gn index c5556bd3b49d8d..bbc36102e3d37a 100644 --- a/ios/showcase/text_badge_view/BUILD.gn +++ b/ios/showcase/text_badge_view/BUILD.gn @@ -23,3 +23,17 @@ source_set("eg2_tests") { ] libs = [ "UIKit.framework" ] } + +source_set("eg_tests") { + testonly = true + defines = [ "CHROME_EARL_GREY_1" ] + sources = [ "sc_text_badge_view_egtest.mm" ] + deps = [ + "//ios/chrome/browser/ui/reading_list:reading_list_ui", + "//ios/showcase/test", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/ios/testing/earl_grey/BUILD.gn b/ios/testing/earl_grey/BUILD.gn index 7d427c66641942..8917452b22969f 100644 --- a/ios/testing/earl_grey/BUILD.gn +++ b/ios/testing/earl_grey/BUILD.gn @@ -2,6 +2,48 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +source_set("earl_grey_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + + deps = [ + "//base/test:test_support", + "//build/config/ios:xctest", + "//components/variations", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/edo", + "//ios/web/common", + "//testing/gtest:gtest", + ] + + sources = [ + "app_launch_configuration.h", + "app_launch_configuration.mm", + "app_launch_manager.h", + "app_launch_manager.mm", + "app_launch_manager_app_interface.h", + "app_launch_manager_app_interface.mm", + "base_earl_grey_test_case.h", + "base_earl_grey_test_case.mm", + "base_earl_grey_test_case_app_interface.h", + "base_earl_grey_test_case_app_interface.mm", + "base_eg_test_helper_impl.h", + "base_eg_test_helper_impl.mm", + "coverage_utils.h", + "coverage_utils.mm", + "disabled_test_macros.h", + "earl_grey_app.h", + "earl_grey_app.mm", + "earl_grey_test.h", + "earl_grey_test.mm", + "keyboard_app_interface.h", + "keyboard_app_interface.mm", + "matchers.h", + "matchers.mm", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/ios/third_party/earl_grey/BUILD.gn b/ios/third_party/earl_grey/BUILD.gn new file mode 100644 index 00000000000000..7834deb59cedae --- /dev/null +++ b/ios/third_party/earl_grey/BUILD.gn @@ -0,0 +1,317 @@ +# Copyright 2016 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import("//build/config/ios/ios_sdk.gni") +import("//build/config/ios/rules.gni") + +config("config") { + include_dirs = [ "src/EarlGrey" ] +} + +ios_framework_bundle("earl_grey") { + output_name = "EarlGrey" + info_plist = "Info.plist" + + testonly = true + sources = [ + "src/EarlGrey/Action/GREYAction.h", + "src/EarlGrey/Action/GREYActionBlock.h", + "src/EarlGrey/Action/GREYActionBlock.m", + "src/EarlGrey/Action/GREYActions+Internal.h", + "src/EarlGrey/Action/GREYActions.h", + "src/EarlGrey/Action/GREYActions.m", + "src/EarlGrey/Action/GREYBaseAction.h", + "src/EarlGrey/Action/GREYBaseAction.m", + "src/EarlGrey/Action/GREYChangeStepperAction.h", + "src/EarlGrey/Action/GREYChangeStepperAction.m", + "src/EarlGrey/Action/GREYMultiFingerSwipeAction.h", + "src/EarlGrey/Action/GREYMultiFingerSwipeAction.m", + "src/EarlGrey/Action/GREYPathGestureUtils.h", + "src/EarlGrey/Action/GREYPathGestureUtils.m", + "src/EarlGrey/Action/GREYPickerAction.h", + "src/EarlGrey/Action/GREYPickerAction.m", + "src/EarlGrey/Action/GREYPinchAction.h", + "src/EarlGrey/Action/GREYPinchAction.m", + "src/EarlGrey/Action/GREYScrollAction.h", + "src/EarlGrey/Action/GREYScrollAction.m", + "src/EarlGrey/Action/GREYScrollActionError.h", + "src/EarlGrey/Action/GREYScrollActionError.m", + "src/EarlGrey/Action/GREYScrollToContentEdgeAction.h", + "src/EarlGrey/Action/GREYScrollToContentEdgeAction.m", + "src/EarlGrey/Action/GREYSlideAction.h", + "src/EarlGrey/Action/GREYSlideAction.m", + "src/EarlGrey/Action/GREYSwipeAction.h", + "src/EarlGrey/Action/GREYSwipeAction.m", + "src/EarlGrey/Action/GREYTapAction.h", + "src/EarlGrey/Action/GREYTapAction.m", + "src/EarlGrey/Action/GREYTapper.h", + "src/EarlGrey/Action/GREYTapper.m", + "src/EarlGrey/Additions/CAAnimation+GREYAdditions.h", + "src/EarlGrey/Additions/CAAnimation+GREYAdditions.m", + "src/EarlGrey/Additions/CALayer+GREYAdditions.h", + "src/EarlGrey/Additions/CALayer+GREYAdditions.m", + "src/EarlGrey/Additions/CGGeometry+GREYAdditions.h", + "src/EarlGrey/Additions/CGGeometry+GREYAdditions.m", + "src/EarlGrey/Additions/NSError+GREYAdditions.h", + "src/EarlGrey/Additions/NSError+GREYAdditions.m", + "src/EarlGrey/Additions/NSObject+GREYAdditions.h", + "src/EarlGrey/Additions/NSObject+GREYAdditions.m", + "src/EarlGrey/Additions/NSRunLoop+GREYAdditions.h", + "src/EarlGrey/Additions/NSRunLoop+GREYAdditions.m", + "src/EarlGrey/Additions/NSString+GREYAdditions.h", + "src/EarlGrey/Additions/NSString+GREYAdditions.m", + "src/EarlGrey/Additions/NSTimer+GREYAdditions.h", + "src/EarlGrey/Additions/NSTimer+GREYAdditions.m", + "src/EarlGrey/Additions/NSURL+GREYAdditions.h", + "src/EarlGrey/Additions/NSURL+GREYAdditions.m", + "src/EarlGrey/Additions/NSURLConnection+GREYAdditions.h", + "src/EarlGrey/Additions/NSURLConnection+GREYAdditions.m", + "src/EarlGrey/Additions/NSURLSession+GREYAdditions.h", + "src/EarlGrey/Additions/NSURLSession+GREYAdditions.m", + "src/EarlGrey/Additions/UIAnimation+GREYAdditions.h", + "src/EarlGrey/Additions/UIAnimation+GREYAdditions.m", + "src/EarlGrey/Additions/UIApplication+GREYAdditions.h", + "src/EarlGrey/Additions/UIApplication+GREYAdditions.m", + "src/EarlGrey/Additions/UIGestureRecognizer+GREYAdditions.h", + "src/EarlGrey/Additions/UIGestureRecognizer+GREYAdditions.m", + "src/EarlGrey/Additions/UIScrollView+GREYAdditions.h", + "src/EarlGrey/Additions/UIScrollView+GREYAdditions.m", + "src/EarlGrey/Additions/UISwitch+GREYAdditions.h", + "src/EarlGrey/Additions/UISwitch+GREYAdditions.m", + "src/EarlGrey/Additions/UITouch+GREYAdditions.h", + "src/EarlGrey/Additions/UITouch+GREYAdditions.m", + "src/EarlGrey/Additions/UIView+GREYAdditions.h", + "src/EarlGrey/Additions/UIView+GREYAdditions.m", + "src/EarlGrey/Additions/UIViewController+GREYAdditions.h", + "src/EarlGrey/Additions/UIViewController+GREYAdditions.m", + "src/EarlGrey/Additions/UIWebView+GREYAdditions.h", + "src/EarlGrey/Additions/UIWebView+GREYAdditions.m", + "src/EarlGrey/Additions/UIWindow+GREYAdditions.h", + "src/EarlGrey/Additions/UIWindow+GREYAdditions.m", + "src/EarlGrey/Additions/XCTestCase+GREYAdditions.h", + "src/EarlGrey/Additions/XCTestCase+GREYAdditions.m", + "src/EarlGrey/Additions/_UIModalItemsPresentingViewController_GREYAdditions.h", + "src/EarlGrey/Additions/_UIModalItemsPresentingViewController_GREYAdditions.m", + "src/EarlGrey/Additions/__NSCFLocalDataTask_GREYAdditions.h", + "src/EarlGrey/Additions/__NSCFLocalDataTask_GREYAdditions.m", + "src/EarlGrey/AppSupport/GREYIdlingResource.h", + "src/EarlGrey/Assertion/GREYAssertion.h", + "src/EarlGrey/Assertion/GREYAssertionBlock.h", + "src/EarlGrey/Assertion/GREYAssertionBlock.m", + "src/EarlGrey/Assertion/GREYAssertionDefines.h", + "src/EarlGrey/Assertion/GREYAssertions+Internal.h", + "src/EarlGrey/Assertion/GREYAssertions.h", + "src/EarlGrey/Assertion/GREYAssertions.m", + "src/EarlGrey/Common/GREYAnalytics.h", + "src/EarlGrey/Common/GREYAnalytics.m", + "src/EarlGrey/Common/GREYAnalyticsDelegate.h", + "src/EarlGrey/Common/GREYAppleInternals.h", + "src/EarlGrey/Common/GREYConfiguration.h", + "src/EarlGrey/Common/GREYConfiguration.m", + "src/EarlGrey/Common/GREYConstants.h", + "src/EarlGrey/Common/GREYConstants.m", + "src/EarlGrey/Common/GREYDefines.h", + "src/EarlGrey/Common/GREYElementHierarchy.h", + "src/EarlGrey/Common/GREYElementHierarchy.m", + "src/EarlGrey/Common/GREYError+Internal.h", + "src/EarlGrey/Common/GREYError.h", + "src/EarlGrey/Common/GREYError.m", + "src/EarlGrey/Common/GREYErrorConstants.h", + "src/EarlGrey/Common/GREYErrorConstants.m", + "src/EarlGrey/Common/GREYFailureFormatter.h", + "src/EarlGrey/Common/GREYFailureFormatter.m", + "src/EarlGrey/Common/GREYFailureScreenshotter.h", + "src/EarlGrey/Common/GREYFailureScreenshotter.m", + "src/EarlGrey/Common/GREYFatalAsserts.h", + "src/EarlGrey/Common/GREYLogger.h", + "src/EarlGrey/Common/GREYLogger.m", + "src/EarlGrey/Common/GREYObjcRuntime.h", + "src/EarlGrey/Common/GREYObjcRuntime.m", + "src/EarlGrey/Common/GREYObjectFormatter.h", + "src/EarlGrey/Common/GREYObjectFormatter.m", + "src/EarlGrey/Common/GREYScreenshotUtil+Internal.h", + "src/EarlGrey/Common/GREYScreenshotUtil.h", + "src/EarlGrey/Common/GREYScreenshotUtil.m", + "src/EarlGrey/Common/GREYStopwatch.h", + "src/EarlGrey/Common/GREYStopwatch.m", + "src/EarlGrey/Common/GREYSwizzler.h", + "src/EarlGrey/Common/GREYSwizzler.m", + "src/EarlGrey/Common/GREYTestCaseInvocation.h", + "src/EarlGrey/Common/GREYTestCaseInvocation.m", + "src/EarlGrey/Common/GREYTestHelper.h", + "src/EarlGrey/Common/GREYTestHelper.m", + "src/EarlGrey/Common/GREYThrowDefines.h", + "src/EarlGrey/Common/GREYVisibilityChecker.h", + "src/EarlGrey/Common/GREYVisibilityChecker.m", + "src/EarlGrey/Core/EarlGreyImpl.h", + "src/EarlGrey/Core/EarlGreyImpl.m", + "src/EarlGrey/Core/GREYAutomationSetup.h", + "src/EarlGrey/Core/GREYAutomationSetup.m", + "src/EarlGrey/Core/GREYElementFinder.h", + "src/EarlGrey/Core/GREYElementFinder.m", + "src/EarlGrey/Core/GREYElementInteraction+Internal.h", + "src/EarlGrey/Core/GREYElementInteraction.h", + "src/EarlGrey/Core/GREYElementInteraction.m", + "src/EarlGrey/Core/GREYInteraction.h", + "src/EarlGrey/Core/GREYInteractionDataSource.h", + "src/EarlGrey/Core/GREYKeyboard.h", + "src/EarlGrey/Core/GREYKeyboard.m", + "src/EarlGrey/Delegate/GREYCAAnimationDelegate.h", + "src/EarlGrey/Delegate/GREYCAAnimationDelegate.m", + "src/EarlGrey/Delegate/GREYNSURLConnectionDelegate.h", + "src/EarlGrey/Delegate/GREYNSURLConnectionDelegate.m", + "src/EarlGrey/Delegate/GREYSurrogateDelegate.h", + "src/EarlGrey/Delegate/GREYSurrogateDelegate.m", + "src/EarlGrey/Delegate/GREYUIWebViewDelegate.h", + "src/EarlGrey/Delegate/GREYUIWebViewDelegate.m", + "src/EarlGrey/EarlGrey.h", + "src/EarlGrey/Event/GREYSyntheticEvents.h", + "src/EarlGrey/Event/GREYSyntheticEvents.m", + "src/EarlGrey/Event/GREYTouchInfo.h", + "src/EarlGrey/Event/GREYTouchInfo.m", + "src/EarlGrey/Event/GREYTouchInjector.h", + "src/EarlGrey/Event/GREYTouchInjector.m", + "src/EarlGrey/Event/GREYZeroToleranceTimer.h", + "src/EarlGrey/Event/GREYZeroToleranceTimer.m", + "src/EarlGrey/Exception/GREYDefaultFailureHandler.h", + "src/EarlGrey/Exception/GREYDefaultFailureHandler.m", + "src/EarlGrey/Exception/GREYFailureHandler.h", + "src/EarlGrey/Exception/GREYFrameworkException.h", + "src/EarlGrey/Exception/GREYFrameworkException.m", + "src/EarlGrey/Matcher/GREYAllOf.h", + "src/EarlGrey/Matcher/GREYAllOf.m", + "src/EarlGrey/Matcher/GREYAnyOf.h", + "src/EarlGrey/Matcher/GREYAnyOf.m", + "src/EarlGrey/Matcher/GREYBaseMatcher.h", + "src/EarlGrey/Matcher/GREYBaseMatcher.m", + "src/EarlGrey/Matcher/GREYDescription.h", + "src/EarlGrey/Matcher/GREYElementMatcherBlock.h", + "src/EarlGrey/Matcher/GREYElementMatcherBlock.m", + "src/EarlGrey/Matcher/GREYHCMatcher.h", + "src/EarlGrey/Matcher/GREYHCMatcher.m", + "src/EarlGrey/Matcher/GREYLayoutConstraint.h", + "src/EarlGrey/Matcher/GREYLayoutConstraint.m", + "src/EarlGrey/Matcher/GREYMatcher.h", + "src/EarlGrey/Matcher/GREYMatchers.h", + "src/EarlGrey/Matcher/GREYMatchers.m", + "src/EarlGrey/Matcher/GREYNot.h", + "src/EarlGrey/Matcher/GREYNot.m", + "src/EarlGrey/Matcher/GREYStringDescription.h", + "src/EarlGrey/Matcher/GREYStringDescription.m", + "src/EarlGrey/Provider/GREYDataEnumerator.h", + "src/EarlGrey/Provider/GREYDataEnumerator.m", + "src/EarlGrey/Provider/GREYElementProvider.h", + "src/EarlGrey/Provider/GREYElementProvider.m", + "src/EarlGrey/Provider/GREYProvider.h", + "src/EarlGrey/Provider/GREYUIWindowProvider.h", + "src/EarlGrey/Provider/GREYUIWindowProvider.m", + "src/EarlGrey/Synchronization/GREYAppStateTracker.h", + "src/EarlGrey/Synchronization/GREYAppStateTracker.m", + "src/EarlGrey/Synchronization/GREYAppStateTrackerObject.h", + "src/EarlGrey/Synchronization/GREYAppStateTrackerObject.m", + "src/EarlGrey/Synchronization/GREYCondition.h", + "src/EarlGrey/Synchronization/GREYCondition.m", + "src/EarlGrey/Synchronization/GREYDispatchQueueIdlingResource.h", + "src/EarlGrey/Synchronization/GREYDispatchQueueIdlingResource.m", + "src/EarlGrey/Synchronization/GREYDispatchQueueTracker.h", + "src/EarlGrey/Synchronization/GREYDispatchQueueTracker.m", + "src/EarlGrey/Synchronization/GREYManagedObjectContextIdlingResource.h", + "src/EarlGrey/Synchronization/GREYManagedObjectContextIdlingResource.m", + "src/EarlGrey/Synchronization/GREYNSTimerIdlingResource.h", + "src/EarlGrey/Synchronization/GREYNSTimerIdlingResource.m", + "src/EarlGrey/Synchronization/GREYObjectDeallocationTracker.h", + "src/EarlGrey/Synchronization/GREYObjectDeallocationTracker.m", + "src/EarlGrey/Synchronization/GREYOperationQueueIdlingResource.h", + "src/EarlGrey/Synchronization/GREYOperationQueueIdlingResource.m", + "src/EarlGrey/Synchronization/GREYRunLoopSpinner.h", + "src/EarlGrey/Synchronization/GREYRunLoopSpinner.m", + "src/EarlGrey/Synchronization/GREYSyncAPI.h", + "src/EarlGrey/Synchronization/GREYSyncAPI.m", + "src/EarlGrey/Synchronization/GREYTimedIdlingResource.h", + "src/EarlGrey/Synchronization/GREYTimedIdlingResource.m", + "src/EarlGrey/Synchronization/GREYUIThreadExecutor+Internal.h", + "src/EarlGrey/Synchronization/GREYUIThreadExecutor.h", + "src/EarlGrey/Synchronization/GREYUIThreadExecutor.m", + "src/EarlGrey/Synchronization/GREYUIWebViewIdlingResource.h", + "src/EarlGrey/Synchronization/GREYUIWebViewIdlingResource.m", + "src/EarlGrey/Traversal/GREYTraversal.h", + "src/EarlGrey/Traversal/GREYTraversal.m", + "src/EarlGrey/Traversal/GREYTraversalBFS.h", + "src/EarlGrey/Traversal/GREYTraversalBFS.m", + "src/EarlGrey/Traversal/GREYTraversalDFS.h", + "src/EarlGrey/Traversal/GREYTraversalDFS.m", + ] + public_headers = [ + "src/EarlGrey/Action/GREYAction.h", + "src/EarlGrey/Action/GREYActionBlock.h", + "src/EarlGrey/Action/GREYActions.h", + "src/EarlGrey/Action/GREYBaseAction.h", + "src/EarlGrey/Action/GREYScrollActionError.h", + "src/EarlGrey/AppSupport/GREYIdlingResource.h", + "src/EarlGrey/Assertion/GREYAssertion.h", + "src/EarlGrey/Assertion/GREYAssertionBlock.h", + "src/EarlGrey/Assertion/GREYAssertionDefines.h", + "src/EarlGrey/Assertion/GREYAssertions.h", + "src/EarlGrey/Common/GREYAppleInternals.h", + "src/EarlGrey/Common/GREYConfiguration.h", + "src/EarlGrey/Common/GREYConstants.h", + "src/EarlGrey/Common/GREYDefines.h", + "src/EarlGrey/Common/GREYElementHierarchy.h", + "src/EarlGrey/Common/GREYScreenshotUtil.h", + "src/EarlGrey/Common/GREYTestHelper.h", + "src/EarlGrey/Core/EarlGreyImpl.h", + "src/EarlGrey/Core/GREYElementFinder.h", + "src/EarlGrey/Core/GREYElementInteraction.h", + "src/EarlGrey/Core/GREYInteraction.h", + "src/EarlGrey/Core/GREYKeyboard.h", + "src/EarlGrey/EarlGrey.h", + "src/EarlGrey/Exception/GREYFailureHandler.h", + "src/EarlGrey/Exception/GREYFrameworkException.h", + "src/EarlGrey/Matcher/GREYAllOf.h", + "src/EarlGrey/Matcher/GREYAnyOf.h", + "src/EarlGrey/Matcher/GREYBaseMatcher.h", + "src/EarlGrey/Matcher/GREYDescription.h", + "src/EarlGrey/Matcher/GREYElementMatcherBlock.h", + "src/EarlGrey/Matcher/GREYLayoutConstraint.h", + "src/EarlGrey/Matcher/GREYMatcher.h", + "src/EarlGrey/Matcher/GREYMatchers.h", + "src/EarlGrey/Matcher/GREYNot.h", + "src/EarlGrey/Provider/GREYDataEnumerator.h", + "src/EarlGrey/Provider/GREYProvider.h", + "src/EarlGrey/Synchronization/GREYCondition.h", + "src/EarlGrey/Synchronization/GREYDispatchQueueIdlingResource.h", + "src/EarlGrey/Synchronization/GREYManagedObjectContextIdlingResource.h", + "src/EarlGrey/Synchronization/GREYNSTimerIdlingResource.h", + "src/EarlGrey/Synchronization/GREYOperationQueueIdlingResource.h", + "src/EarlGrey/Synchronization/GREYSyncAPI.h", + "src/EarlGrey/Synchronization/GREYUIThreadExecutor.h", + ] + deps = [ + "//build/config/ios:xctest", + "//ios/third_party/fishhook", + "//ios/third_party/webkit", + ] + public_deps = [ "//ios/third_party/ochamcrest:ochamcrest+link" ] + + frameworks = [ + "CoreData.framework", + "CoreGraphics.framework", + "Foundation.framework", + "IOKit.framework", + "QuartzCore.framework", + "UIKit.framework", + "XCTest.framework", + ] + + configs -= [ + "//build/config/gcc:symbol_visibility_hidden", + "//build/config/compiler:chromium_code", + ] + configs += [ + ":config", + "//build/config/compiler:no_chromium_code", + "//build/config/compiler:enable_arc", + "//build/config/gcc:symbol_visibility_default", + ] +} diff --git a/ios/third_party/earl_grey/ios_eg_test.gni b/ios/third_party/earl_grey/ios_eg_test.gni new file mode 100644 index 00000000000000..108d8046a7a213 --- /dev/null +++ b/ios/third_party/earl_grey/ios_eg_test.gni @@ -0,0 +1,99 @@ +# Copyright 2016 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import("//build/config/ios/ios_test_runner_wrapper.gni") +import("//build/config/ios/rules.gni") +import("//ios/build/chrome_build.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") + +# EarlGrey tests are just XCTests that also depends on EarlGrey. +template("ios_eg_test") { + _target_name = target_name + _test_target = "${target_name}_test" + ios_xctest_test(_test_target) { + forward_variables_from(invoker, + "*", + [ + "executable_args", + "retries", + "shards", + "xctest", + "xcode_parallelization", + ]) + if (!defined(bundle_deps)) { + bundle_deps = [] + } + if (!defined(include_provider_resources)) { + include_provider_resources = true + } + bundle_deps += [ + "//ios/third_party/earl_grey:earl_grey+bundle", + "//ios/third_party/gtx:gtx+bundle", + "//ios/third_party/ochamcrest:ochamcrest+bundle", + ] + if (include_provider_resources) { + bundle_deps += ios_providers_resources_targets + } + if (!defined(deps)) { + deps = [] + } + deps += [ + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/third_party/ochamcrest:ochamcrest+link", + ] + + # TODO(crbug.com/1056328) Because we change the target name, the subnodes + # are going to append with the _test in the naming, which won't be backwards + # compatible during migration from iOS recipe to Chromium. + output_name = "${_target_name}" + } + + ios_test_runner_wrapper(target_name) { + forward_variables_from(invoker, + [ + "data", + "data_deps", + "deps", + "executable_args", + "retries", + "shards", + "xctest", + "xcode_parallelization", + ]) + + _root_build_dir = rebase_path("${root_build_dir}", root_build_dir) + + # include the test target above as data_deps + if (!defined(data_deps)) { + data_deps = [] + } + data_deps += [ ":${_test_target}" ] + + if (!defined(executable_args)) { + executable_args = [] + } + + # EG test apps are *.app format. No host, but required xctest and may need + # xcode-parallelization + executable_args += [ + "--app", + "@WrappedPath(${_root_build_dir}/${target_name}.app)", + ] + + # Default xctest to true for EG tests. If set, only set arg if value = true + if (!defined(xctest) || (defined(xctest) && xctest)) { + executable_args += [ "--xctest" ] + } + + # Default xcode_parallelization to true for EG tests. + if (!defined(xcode_parallelization) || + (defined(xcode_parallelization) && xcode_parallelization)) { + executable_args += [ "--xcode-parallelization" ] + } + } +} + +set_defaults("ios_eg_test") { + configs = default_executable_configs +} diff --git a/ios/web/BUILD.gn b/ios/web/BUILD.gn index 88bb0962e486c1..a0d0d298f4cd59 100644 --- a/ios/web/BUILD.gn +++ b/ios/web/BUILD.gn @@ -100,6 +100,34 @@ source_set("core") { ] } +source_set("earl_grey_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + + deps = [ + ":web", + "//base", + "//base/test:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web/public/deprecated", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/security", + "//net", + ] + + sources = [ + "public/test/earl_grey/js_test_util.h", + "public/test/earl_grey/js_test_util.mm", + "public/test/earl_grey/web_view_actions.h", + "public/test/earl_grey/web_view_actions.mm", + "public/test/earl_grey/web_view_matchers.h", + "public/test/earl_grey/web_view_matchers.mm", + ] +} + source_set("eg_app_support+eg2") { defines = [ "CHROME_EARL_GREY_2" ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/ios/web/DEPS b/ios/web/DEPS index c7a16a614e6e26..e424d9c92d539a 100644 --- a/ios/web/DEPS +++ b/ios/web/DEPS @@ -15,8 +15,7 @@ include_rules = [ # For tests. "+components/crash/core/common/objc_zombie.h", "+ios/testing", - - # TODO(crbug.com/1101077): Disallow direct import of eg2 headers. + "+ios/third_party/earl_grey/src", "+ios/third_party/earl_grey2/src/CommonLib", "+ios/third_party/earl_grey2/src/TestLib", "+mojo/core/embedder/embedder.h", diff --git a/ios/web/shell/test/BUILD.gn b/ios/web/shell/test/BUILD.gn index c9dc1c205fcf97..bc89e7f700ce73 100644 --- a/ios/web/shell/test/BUILD.gn +++ b/ios/web/shell/test/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. import("//ios/build/config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") import("//ios/third_party/earl_grey2/ios_eg2_test.gni") group("all_tests") { @@ -13,6 +14,84 @@ group("all_tests") { ] } +ios_eg_test("ios_web_shell_egtests") { + defines = [ "CHROME_EARL_GREY_1" ] + info_plist = "//ios/web/shell/Info.plist" + sources = [ + "context_menu_egtest.mm", + "page_state_egtest.mm", + ] + + deps = [ + ":earl_grey_test_support", + "//base", + "//base/test:test_support", + "//ios/testing:http_server_bundle_data", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/webkit", + "//ios/web", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/public/test/fakes", + "//ios/web/shell", + "//net:test_support", + "//url", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + assert_no_deps = ios_assert_no_deps +} + +source_set("earl_grey_test_support") { + defines = [ "CHROME_EARL_GREY_1" ] + testonly = true + + deps = [ + "//base", + "//base/test:test_support", + "//ios/testing:nserror_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey:earl_grey+link", + "//ios/web", + "//ios/web:earl_grey_test_support", + "//ios/web/public/test", + "//ios/web/public/test:element_selector", + "//ios/web/shell", + "//ios/web/shell:shell_interfaces", + "//testing/gtest:gtest", + "//url", + ] + + public_deps = [ "//build/config/ios:xctest" ] + + sources = [ + "app/navigation_test_util.h", + "app/navigation_test_util.mm", + "app/web_shell_test_util.h", + "app/web_shell_test_util.mm", + "app/web_view_interaction_test_util.h", + "app/web_view_interaction_test_util.mm", + "earl_grey/shell_actions.h", + "earl_grey/shell_actions.mm", + "earl_grey/shell_actions_app_interface.h", + "earl_grey/shell_actions_app_interface.mm", + "earl_grey/shell_earl_grey.h", + "earl_grey/shell_earl_grey.mm", + "earl_grey/shell_earl_grey_app_interface.h", + "earl_grey/shell_earl_grey_app_interface.mm", + "earl_grey/shell_matchers.h", + "earl_grey/shell_matchers.mm", + "earl_grey/shell_matchers_app_interface.h", + "earl_grey/shell_matchers_app_interface.mm", + "earl_grey/web_shell_test_case.h", + "earl_grey/web_shell_test_case.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + ################################ # EG2 targets. diff --git a/ios/web_view/shell/test/BUILD.gn b/ios/web_view/shell/test/BUILD.gn index edb0d80cc8f91f..b717678567fedc 100644 --- a/ios/web_view/shell/test/BUILD.gn +++ b/ios/web_view/shell/test/BUILD.gn @@ -3,8 +3,56 @@ # found in the LICENSE file. import("//ios/build/config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") -# TODO(crbug.com/698657): Create EarlGrey 2 test target if needed. +# TODO(crbug.com/698657): Remove these EarlGrey tests or convert to EarlGrey 2. group("all_tests") { testonly = true + deps = [ ":ios_web_view_shell_egtests" ] +} + +ios_eg_test("ios_web_view_shell_egtests") { + info_plist = "//ios/web_view/shell/Info.plist" + sources = [ "shell_egtest.mm" ] + include_provider_resources = false + + deps = [ + ":earl_grey_test_support", + "//ios/testing:http_server_bundle_data", + "//ios/third_party/material_components_ios:material_components_ios+bundle", + "//ios/third_party/material_components_ios:material_components_ios+link", + "//ios/web_view:web_view+link", + "//ios/web_view/shell:shell", + "//ios/web_view/test:test_support", + "//net:test_support", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + assert_no_deps = ios_assert_no_deps +} + +source_set("earl_grey_test_support") { + testonly = true + + deps = [ + "//base", + "//base/test:test_support", + "//ios/third_party/webkit", + "//ios/web_view/shell", + ] + + public_deps = [ + "//build/config/ios:xctest", + "//ios/third_party/earl_grey:earl_grey+link", + ] + + libs = [ "XCTest.framework" ] + + sources = [ + "earl_grey/web_view_shell_matchers.h", + "earl_grey/web_view_shell_matchers.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] }