chromium/ash/webui/settings/public/constants/BUILD.gn

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

import("//build/config/chromeos/ui_mode.gni")
import("//mojo/public/tools/bindings/mojom.gni")

assert(is_chromeos)

# TODO(http://b/284187997): add assert(is_chromeos_ash) when all browser
# dependencies are cleaned up.  Also rename the namespace to `ash::settings`.

mojom("mojom") {
  sources = [
    "routes.mojom",
    "setting.mojom",
  ]
  webui_module_path = "/"
}

action("gen_routes") {
  script = "gen_routes.py"
  outputs = [ "$target_gen_dir/routes.h" ]
  deps = [ ":mojom" ]
  args = [
    "--gen_dir",
    rebase_path(target_gen_dir, root_build_dir),
  ]
}

component("constants") {
  output_name = "ash_webui_settings_public_constants"

  defines = [ "IS_ASH_WEBUI_SETTINGS_PUBLIC_CONSTANTS_IMPL" ]

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

  public_deps = [ ":mojom" ]

  deps = [
    ":gen_routes",
    "//base",
  ]
}

source_set("unit_tests") {
  testonly = true

  sources = [ "routes_util_unittest.cc" ]

  deps = [
    ":constants",
    "//base",
    "//content/test:test_support",
    "//testing/gtest",
  ]
}