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

group("unit_tests") {
  testonly = true

  if (!is_ios) {
    deps = [
      "//components/download/content/internal:unit_tests",
      "//components/download/content/public:unit_tests",
      "//components/download/database:unit_tests",
      "//components/download/internal/background_service:unit_tests",
      "//components/download/internal/common:unit_tests",
      "//components/download/public/common:unit_tests",
      "//components/download/public/task:unit_tests",
    ]
  }

  data_deps = [
    ":components_unittests_gtest_filter",
  ]
}

source_set("components_unittests_gtest_filter") {
  testonly = true

  data = [
    "components_unittests.filter",
  ]
}
