chromium/ios/chrome/browser/shared/model/web_state_list/BUILD.gn

# Copyright 2017 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("web_state_list") {
  sources = [
    "active_web_state_observation_forwarder.h",
    "active_web_state_observation_forwarder.mm",
    "all_web_state_observation_forwarder.h",
    "all_web_state_observation_forwarder.mm",
    "order_controller.h",
    "order_controller.mm",
    "order_controller_source.h",
    "order_controller_source_from_web_state_list.h",
    "order_controller_source_from_web_state_list.mm",
    "removing_indexes.h",
    "removing_indexes.mm",
    "tab_group.h",
    "tab_group.mm",
    "tab_group_range.h",
    "web_state_list.h",
    "web_state_list.mm",
    "web_state_list_delegate.h",
    "web_state_list_observer.h",
    "web_state_list_observer.mm",
    "web_state_list_observer_bridge.h",
    "web_state_list_observer_bridge.mm",
    "web_state_opener.h",
    "web_state_opener.mm",
  ]
  deps = [
    "//base",
    "//components/tab_groups",
    "//ios/chrome/app/strings",
    "//ios/chrome/common/ui/colors",
    "//ios/web/public",
    "//ios/web/public:web_state_observer",
    "//ios/web/public/navigation",
    "//url",
  ]
  frameworks = [ "Foundation.framework" ]
}

source_set("utils") {
  sources = [
    "browser_util.h",
    "browser_util.mm",
    "tab_group_utils.h",
    "tab_group_utils.mm",
    "tab_utils.h",
    "tab_utils.mm",
  ]
  deps = [
    ":web_state_list",
    "//ios/chrome/browser/shared/model/browser",
    "//ios/chrome/browser/shared/model/browser_state",
    "//ios/chrome/browser/shared/model/profile",
    "//ios/chrome/browser/shared/public/features",
    "//ios/chrome/browser/snapshots/model",
    "//ios/web/public",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "active_web_state_observation_forwarder_unittest.mm",
    "all_web_state_observation_forwarder_unittest.mm",
    "browser_util_unittest.mm",
    "order_controller_source_from_web_state_list_unittest.mm",
    "order_controller_unittest.mm",
    "removing_indexes_unittest.mm",
    "tab_group_range_unittest.mm",
    "tab_group_unittest.mm",
    "tab_group_utils_unittest.mm",
    "tab_utils_unittest.mm",
    "web_state_list_unittest.mm",
    "web_state_opener_unittest.mm",
  ]
  deps = [
    ":utils",
    ":web_state_list",
    "test:unit_tests",
    "//base",
    "//base/test:test_support",
    "//components/favicon/core",
    "//components/favicon/ios",
    "//components/keyed_service/core",
    "//components/tab_groups",
    "//ios/chrome/app/strings",
    "//ios/chrome/browser/favicon/model",
    "//ios/chrome/browser/history/model",
    "//ios/chrome/browser/sessions/model",
    "//ios/chrome/browser/sessions/model:fake",
    "//ios/chrome/browser/shared/model/browser",
    "//ios/chrome/browser/shared/model/browser/test:test_support",
    "//ios/chrome/browser/shared/model/profile",
    "//ios/chrome/browser/shared/model/profile/test",
    "//ios/chrome/browser/shared/model/web_state_list/test:test_support",
    "//ios/chrome/browser/shared/public/features",
    "//ios/chrome/browser/snapshots/model",
    "//ios/chrome/browser/snapshots/model:model_common",
    "//ios/chrome/browser/ui/tab_switcher:utils",
    "//ios/web/public:web_state_observer",
    "//ios/web/public/test",
    "//ios/web/public/test/fakes",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/base:test_support",
    "//url",
  ]
}