| # Copyright 2014 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/features.gni") |
| import("//mojo/features.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| static_library("test_support") { |
| testonly = true |
| sources = [ |
| "mojo_test_base.cc", |
| "mojo_test_base.h", |
| "mojo_test_suite_base.cc", |
| "mojo_test_suite_base.h", |
| "scoped_mojo_support.cc", |
| "scoped_mojo_support.h", |
| "test_switches.cc", |
| "test_switches.h", |
| "test_utils.h", |
| ] |
| |
| if (mojo_support_legacy_core) { |
| sources += [ |
| "mock_node_channel_delegate.cc", |
| "mock_node_channel_delegate.h", |
| ] |
| } |
| |
| if (use_blink) { |
| sources += [ |
| "multiprocess_test_helper.cc", |
| "multiprocess_test_helper.h", |
| ] |
| } |
| |
| if (is_win) { |
| sources += [ "test_utils_win.cc" ] |
| } |
| |
| if (is_fuchsia || is_posix) { |
| sources += [ "test_utils.cc" ] |
| } |
| |
| public_deps = [ |
| "//base", |
| "//base/test:test_support", |
| "//mojo/core:embedder_internal", |
| "//mojo/core/embedder", |
| "//mojo/public/cpp/system", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| |
| deps = [ |
| ":test_support_impl", |
| "//build:blink_buildflags", |
| "//mojo/public/c/test_support", |
| ] |
| |
| # TODO(crbug.com/40031409): Fix code that adds exit-time destructors and |
| # enable the diagnostic by removing this line. |
| configs += [ "//build/config/compiler:no_exit_time_destructors" ] |
| } |
| |
| source_set("run_all_unittests") { |
| testonly = true |
| sources = [ "run_all_unittests.cc" ] |
| |
| deps = [ |
| ":test_support", |
| ":test_support_impl", |
| "//base", |
| "//base/test:test_support", |
| "//mojo/core/embedder", |
| "//mojo/public/c/test_support", |
| "//testing/gtest", |
| ] |
| |
| if ((is_linux || is_chromeos) && !is_component_build) { |
| public_configs = [ "//build/config/gcc:rpath_for_built_shared_libraries" ] |
| } |
| } |
| |
| source_set("run_all_perftests") { |
| testonly = true |
| deps = [ |
| ":test_support_impl", |
| "//base", |
| "//base/test:test_support", |
| "//mojo/core/embedder", |
| "//mojo/core/test:test_support", |
| "//mojo/public/c/test_support", |
| ] |
| |
| sources = [ "run_all_perftests.cc" ] |
| |
| if ((is_linux || is_chromeos) && !is_component_build) { |
| public_configs = [ "//build/config/gcc:rpath_for_built_shared_libraries" ] |
| } |
| } |
| |
| static_library("test_support_impl") { |
| testonly = true |
| deps = [ |
| "//base", |
| "//base/test:test_support", |
| "//mojo/public/c/test_support", |
| "//mojo/public/cpp/system", |
| ] |
| |
| sources = [ |
| "test_support_impl.cc", |
| "test_support_impl.h", |
| ] |
| } |
| |
| if (is_mac) { |
| proto_library("channel_mac_proto") { |
| proto_in_dir = "//" |
| sources = [ "data/channel_mac/channel_mac.proto" ] |
| deps = [ "//testing/libfuzzer/fuzzers/mach:proto" ] |
| } |
| } |