# 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.

source_set("download") {
  configs += [ "//build/config/compiler:enable_arc" ]
  sources = [
    "download_manager_animation_constants.h",
    "download_manager_animation_constants.mm",
    "download_manager_consumer.h",
    "download_manager_coordinator.h",
    "download_manager_coordinator.mm",
    "download_manager_mediator.h",
    "download_manager_mediator.mm",
    "download_manager_state.h",
    "download_manager_state_view.h",
    "download_manager_state_view.mm",
    "download_manager_view_controller.h",
    "download_manager_view_controller.mm",
    "legacy_download_manager_controller.h",
    "legacy_download_manager_controller.mm",
    "pass_kit_coordinator.h",
    "pass_kit_coordinator.mm",
    "radial_progress_view.h",
    "radial_progress_view.mm",
  ]
  deps = [
    "resources:background_compact",
    "resources:background_regular",
    "resources:done_badge",
    "resources:download_manager_controller_xib",
    "resources:error_badge",
    "resources:error_icon",
    "resources:file_icon_body",
    "resources:file_icon_fold",
    "resources:file_icon_fold_complete",
    "//base",
    "//components/infobars/core",
    "//components/strings",
    "//ios/chrome/app/strings",
    "//ios/chrome/browser",
    "//ios/chrome/browser/download",
    "//ios/chrome/browser/infobars",
    "//ios/chrome/browser/store_kit",
    "//ios/chrome/browser/ui",
    "//ios/chrome/browser/ui/alert_coordinator",
    "//ios/chrome/browser/ui/colors",
    "//ios/chrome/browser/ui/coordinators:chrome_coordinators",
    "//ios/chrome/browser/ui/presenters",
    "//ios/chrome/browser/ui/util",
    "//ios/chrome/browser/web:web_internal",
    "//ios/chrome/browser/web_state_list:web_state_list",
    "//ios/public/provider/chrome/browser",
    "//ios/public/provider/chrome/browser/images",
    "//ios/third_party/material_components_ios",
    "//ios/third_party/material_roboto_font_loader_ios",
    "//ios/web",
    "//ios/web:core",
    "//net",
    "//ui/base",
    "//ui/gfx",
  ]
  libs = [ "UIKit.framework" ]
}

source_set("unit_tests") {
  configs += [ "//build/config/compiler:enable_arc" ]
  testonly = true
  sources = [
    "download_manager_coordinator_unittest.mm",
    "download_manager_mediator_unittest.mm",
    "download_manager_view_controller_unittest.mm",
    "legacy_download_manager_controller_unittest.mm",
    "pass_kit_coordinator_unittest.mm",
  ]
  deps = [
    ":download",
    "//base",
    "//base/test:test_support",
    "//ios/chrome/app/strings:ios_strings_grit",
    "//ios/chrome/browser",
    "//ios/chrome/browser/download",
    "//ios/chrome/browser/download:test_support",
    "//ios/chrome/browser/infobars",
    "//ios/chrome/browser/store_kit",
    "//ios/chrome/browser/ui:ui_util",
    "//ios/chrome/browser/web:test_support",
    "//ios/chrome/browser/web_state_list:test_support",
    "//ios/chrome/browser/web_state_list:web_state_list",
    "//ios/chrome/test:test_support",
    "//ios/chrome/test/app:test_support",
    "//ios/chrome/test/fakes",
    "//ios/web/public/test",
    "//ios/web/public/test/fakes",
    "//net:test_support",
    "//testing/gtest",
    "//third_party/ocmock:ocmock",
    "//ui/base",
  ]
}

source_set("eg_tests") {
  configs += [ "//build/config/compiler:enable_arc" ]
  testonly = true
  sources = [
    "download_manager_egtest.mm",
    "pass_kit_egtest.mm",
  ]

  deps = [
    "//base",
    "//base/test:test_support",
    "//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:ui_internal",
    "//ios/chrome/browser/ui:ui_util",
    "//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/third_party/earl_grey:earl_grey+link",
    "//ios/web/public",
    "//ui/base",
  ]
  libs = [ "XCTest.framework" ]
}
