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

# Keep in sync with targets in remoting/remoting_client.gypi.

import("//build/config/features.gni")
import("//remoting/webapp/build_template.gni")
import("//remoting/webapp/files.gni")

action("credits") {
  about_credits_file = "$target_gen_dir/credits.html"
  script = "//tools/licenses.py"

  inputs = [
    "base/html/credits.tmpl",
    "base/html/credits_entry.tmpl",
  ]

  outputs = [
    about_credits_file,
  ]

  args = [
    "credits",
    rebase_path(about_credits_file, root_build_dir),
    "--file-template",
    rebase_path("base/html/credits.tmpl", root_build_dir),
    "--entry-template",
    rebase_path("base/html/credits_entry.tmpl", root_build_dir),
  ]
}

desktop_remoting_webapp("webapp") {
  output_dir = "$root_build_dir/remoting/remoting-webapp.v2"
  zip_path = "$root_build_dir/remoting-webapp.v2.zip"
  extra_files = [ "crd/remoting_client_pnacl.nmf.jinja2" ]
}

copy("browser_test_resources") {
  sources = remoting_webapp_browsertest_main_html_extra_files
  outputs = [
    "$root_out_dir/remoting/browser_test_resources/{{source_file_part}}",
  ]
}

remoting_unit_test_out_dir = "$root_out_dir/remoting/unittests"

group("unit_tests") {
  data_deps = [
    ":blanketjs",
    ":unittest_html",
    ":js_files",
    ":qunit",
    ":sinonjs",
  ]
}

copy("js_files") {
  sources = webapp_js_files + remoting_webapp_unittests_all_files
  outputs = [
    "$remoting_unit_test_out_dir/{{source_file_part}}",
  ]
}

copy("blanketjs") {
  sources = [
    "//third_party/blanketjs/src/blanket.js",
    "//third_party/blanketjs/src/qunit_adapter.js",
  ]
  outputs = [
    "$remoting_unit_test_out_dir/blanketjs/{{source_file_part}}",
  ]
}

copy("sinonjs") {
  sources = [
    "//third_party/sinonjs/src/sinon-qunit.js",
    "//third_party/sinonjs/src/sinon.js",
  ]
  outputs = [
    "$remoting_unit_test_out_dir/sinonjs/{{source_file_part}}",
  ]
}

copy("qunit") {
  sources = [
    "//third_party/qunit/src/browser_test_harness.js",
    "//third_party/qunit/src/qunit.css",
    "//third_party/qunit/src/qunit.js",
  ]
  outputs = [
    "$remoting_unit_test_out_dir/qunit/{{source_file_part}}",
  ]
}

build_webapp_html("unittest_html") {
  html_template_file = remoting_webapp_unittests_template_main
  html_template_include_files = []
  js_files = remoting_webapp_unittests_all_js_files
  html_output = "$remoting_unit_test_out_dir/unittests.html"
  exclude_js = remoting_webapp_unittests_exclude_js_files
  instrument_js = webapp_js_files
}
