chromium/ios/chrome/browser/default_promo/ui_bundled/BUILD.gn

# Copyright 2015 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

source_set("coordinator") {
  sources = [
    "all_tabs_default_browser_promo_view_provider.h",
    "all_tabs_default_browser_promo_view_provider.mm",
    "base_default_browser_promo_view_provider.h",
    "base_default_browser_promo_view_provider.mm",
    "default_browser_instructions_view.h",
    "default_browser_instructions_view.mm",
    "default_browser_promo_non_modal_commands.h",
    "default_browser_promo_non_modal_metrics_util.h",
    "default_browser_promo_non_modal_metrics_util.mm",
    "default_promo_non_modal_presentation_delegate.h",
    "made_for_ios_default_browser_promo_view_provider.h",
    "made_for_ios_default_browser_promo_view_provider.mm",
    "stay_safe_default_browser_promo_view_provider.h",
    "stay_safe_default_browser_promo_view_provider.mm",
  ]

  deps = [
    "//components/feature_engagement/public",
    "//ios/chrome/app/strings",
    "//ios/chrome/browser/default_browser/model:utils",
    "//ios/chrome/browser/default_promo/ui_bundled/resources",
    "//ios/chrome/browser/promos_manager/model:constants",
    "//ios/chrome/browser/promos_manager/model:types",
    "//ios/chrome/browser/shared/ui/elements",
    "//ios/chrome/browser/ui/promos_manager:promos",
    "//ios/chrome/common/ui/colors",
    "//ios/chrome/common/ui/confirmation_alert",
    "//ios/chrome/common/ui/elements:popover_label_view_controller",
    "//ios/chrome/common/ui/util",
    "//ios/public/provider/chrome/browser/branded_images:branded_images_api",
    "//ios/public/provider/chrome/browser/lottie:lottie_animation_api",
    "//ui/base",
  ]
  frameworks = [ "UIKit.framework" ]
}

source_set("ui") {
  sources = [
    "default_browser_promo_non_modal_coordinator.h",
    "default_browser_promo_non_modal_coordinator.mm",
  ]
  deps = [
    ":coordinator",
    "//base",
    "//components/feature_engagement/public",
    "//ios/chrome/app/strings",
    "//ios/chrome/browser/default_browser/model:utils",
    "//ios/chrome/browser/feature_engagement/model",
    "//ios/chrome/browser/shared/coordinator/default_browser_promo",
    "//ios/chrome/browser/shared/coordinator/scene:scene_state_header",
    "//ios/chrome/browser/shared/model/browser",
    "//ios/chrome/browser/shared/public/commands",
    "//ios/chrome/browser/ui/infobars/banners",
    "//ios/chrome/browser/ui/infobars/coordinators",
    "//ios/chrome/browser/ui/main:default_browser_scene_agent",
    "//ios/public/provider/chrome/browser/branded_images:branded_images_api",
    "//ui/base",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "base_default_browser_promo_view_provider_unittest.mm",
    "default_browser_feature_engagement_unittest.mm",
    "default_browser_instructions_view_unittest.mm",
  ]
  deps = [
    ":coordinator",
    "//base/test:test_support",
    "//components/feature_engagement/public",
    "//components/feature_engagement/test:test_support",
    "//ios/chrome/browser/default_browser/model:test_support",
    "//ios/chrome/browser/default_browser/model:utils",
    "//ios/chrome/browser/feature_engagement/model",
    "//ios/chrome/browser/infobars/model",
    "//ios/chrome/browser/infobars/model/test",
    "//ios/chrome/browser/overlays/model",
    "//ios/chrome/browser/overlays/model/public/common/infobars",
    "//ios/chrome/browser/overlays/model/test",
    "//ios/chrome/browser/shared/model/browser/test:test_support",
    "//ios/chrome/common/ui/confirmation_alert:constants",
    "//ios/chrome/test:test_support",
    "//ios/public/provider/chrome/browser/lottie:lottie_animation_api",
    "//ios/web/public/test/fakes",
    "//testing/gtest",
    "//third_party/ocmock",
    "//ui/base",
  ]
  frameworks = [ "UIKit.framework" ]
}

source_set("eg2_tests") {
  configs += [ "//build/config/ios:xctest_config" ]
  testonly = true
  sources = [ "default_browser_promo_non_modal_egtest.mm" ]
  deps = [
    "//base",
    "//base/test:test_support",
    "//components/feature_engagement/public",
    "//components/metrics",
    "//components/strings",
    "//ios/chrome/app/strings",
    "//ios/chrome/browser/shared/public/features",
    "//ios/chrome/browser/signin/model:fake_system_identity",
    "//ios/chrome/browser/ui/authentication:eg_test_support+eg2",
    "//ios/chrome/browser/ui/infobars/banners:public",
    "//ios/chrome/test:eg_test_support+eg2",
    "//ios/chrome/test/earl_grey:eg_test_support+eg2",
    "//ios/testing/earl_grey:eg_test_support+eg2",
    "//net:test_support",
    "//ui/base",
  ]
  frameworks = [ "UIKit.framework" ]
}