Blame | Last modification | View Log | Download
# Copyright 2017 Google Inc.# All Rights Reserved.### Redistribution and use in source and binary forms, with or without# modification, are permitted provided that the following conditions are# met:## * Redistributions of source code must retain the above copyright# notice, this list of conditions and the following disclaimer.# * Redistributions in binary form must reproduce the above# copyright notice, this list of conditions and the following disclaimer# in the documentation and/or other materials provided with the# distribution.# * Neither the name of Google Inc. nor the names of its# contributors may be used to endorse or promote products derived from# this software without specific prior written permission.## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.## Author: misterg@google.com (Gennadiy Civil)## Bazel Build for Google C++ Testing Framework(Google Test)package(default_visibility = ["//visibility:public"])licenses(["notice"])config_setting(name = "windows",values = {"cpu": "x64_windows"},)config_setting(name = "windows_msvc",values = {"cpu": "x64_windows_msvc"},)config_setting(name = "has_absl",values = {"define": "absl=1"},)# Google Test including Google Mockcc_library(name = "gtest",srcs = glob(include = ["googletest/src/*.cc","googletest/src/*.h","googletest/include/gtest/**/*.h","googlemock/src/*.cc","googlemock/include/gmock/**/*.h",],exclude = ["googletest/src/gtest-all.cc","googletest/src/gtest_main.cc","googlemock/src/gmock-all.cc","googlemock/src/gmock_main.cc",],),hdrs = glob(["googletest/include/gtest/*.h","googlemock/include/gmock/*.h",]),copts = select({":windows": [],":windows_msvc": [],"//conditions:default": ["-pthread"],},),defines = select({":has_absl": ["GTEST_HAS_ABSL=1",],"//conditions:default": [],},),includes = ["googlemock","googlemock/include","googletest","googletest/include",],linkopts = select({":windows": [],":windows_msvc": [],"//conditions:default": ["-pthread",],}),deps = select({":has_absl": ["@com_google_absl//absl/debugging:failure_signal_handler","@com_google_absl//absl/debugging:stacktrace","@com_google_absl//absl/debugging:symbolize","@com_google_absl//absl/strings","@com_google_absl//absl/types:optional","@com_google_absl//absl/types:variant",],"//conditions:default": [],},),)cc_library(name = "gtest_main",srcs = ["googlemock/src/gmock_main.cc",],deps = [":gtest"],)# The following rules build samples of how to use gTest.cc_library(name = "gtest_sample_lib",srcs = ["googletest/samples/sample1.cc","googletest/samples/sample2.cc","googletest/samples/sample4.cc",],hdrs = ["googletest/samples/prime_tables.h","googletest/samples/sample1.h","googletest/samples/sample2.h","googletest/samples/sample3-inl.h","googletest/samples/sample4.h",],)cc_test(name = "gtest_samples",size = "small",#All Samples except:#sample9 ( main )#sample10 (main and takes a command line option and needs to be separate)srcs = ["googletest/samples/sample1_unittest.cc","googletest/samples/sample2_unittest.cc","googletest/samples/sample3_unittest.cc","googletest/samples/sample4_unittest.cc","googletest/samples/sample5_unittest.cc","googletest/samples/sample6_unittest.cc","googletest/samples/sample7_unittest.cc","googletest/samples/sample8_unittest.cc",],deps = ["gtest_sample_lib",":gtest_main",],)cc_test(name = "sample9_unittest",size = "small",srcs = ["googletest/samples/sample9_unittest.cc"],deps = [":gtest"],)cc_test(name = "sample10_unittest",size = "small",srcs = ["googletest/samples/sample10_unittest.cc"],deps = [":gtest",],)