chromium/components/performance_manager/test_support/BUILD.gn

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

# Expose the graph implementation, test fixtures and test support through
# these test only targets.

source_set("test_support_common") {
  testonly = true

  sources = [
    "decorators_utils.h",
    "graph_impl.h",
    "page_aggregator.cc",
    "page_aggregator.h",
    "resource_attribution/gtest_util.h",
    "run_in_graph.cc",
    "run_in_graph.h",
    "test_browser_child_process.cc",
    "test_browser_child_process.h",
    "test_harness_helper.cc",
    "test_harness_helper.h",
    "voting.h",
  ]

  # The site data database isn't supported on Android.
  if (!is_android) {
    sources += [
      "persistence/test_site_data_reader.cc",
      "persistence/test_site_data_reader.h",
      "persistence/unittest_utils.cc",
      "persistence/unittest_utils.h",
    ]
  }

  deps = [
    "//base/test:test_support",
    "//components/performance_manager",
    "//testing/gmock",
    "//testing/gtest",
  ]
}

source_set("test_support") {
  testonly = true

  sources = [
    "graph_test_harness.cc",
    "graph_test_harness.h",
    "mock_graphs.cc",
    "mock_graphs.h",
    "performance_manager_test_harness.cc",
    "performance_manager_test_harness.h",
    "resource_attribution/measurement_delegates.cc",
    "resource_attribution/measurement_delegates.h",
    "test_worker_node_factory.cc",
    "test_worker_node_factory.h",
  ]

  deps = [
    ":test_support_common",
    "//base/test:test_support",
    "//components/performance_manager",
    "//content/test:test_support",
    "//testing/gmock",
    "//testing/gtest",
  ]
}

source_set("browsertest_support") {
  testonly = true

  sources = [
    "performance_manager_browsertest_harness.cc",
    "performance_manager_browsertest_harness.h",
  ]

  deps = [
    ":test_support_common",
    "//base/test:test_support",
    "//components/performance_manager",
    "//content/shell:content_shell_lib",
    "//content/test:browsertest_support",
    "//content/test:test_support",
    "//net:test_support",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/base",
  ]
}