Skip to content

Commit

Permalink
Upgrade GoogleTest version from 1.12.1 to 1.13.0
Browse files Browse the repository at this point in the history
  • Loading branch information
cngzhnp committed Apr 23, 2023
1 parent 22d0448 commit 4d0420e
Show file tree
Hide file tree
Showing 9 changed files with 66 additions and 34 deletions.
6 changes: 4 additions & 2 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,11 @@ jobs:
path: /home/runner/.cache/bazel
key: bazel_benchmark
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: Run benchmark
id: run_benchmarks
run: |
Expand Down
53 changes: 34 additions & 19 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ jobs:
env:
CC: /usr/bin/gcc-10
CXX: /usr/bin/g++-10
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
Expand All @@ -40,7 +41,7 @@ jobs:
env:
CC: /usr/bin/gcc-12
CXX: /usr/bin/g++-12
GOOGLETEST_VERSION: 1.12.1
GOOGLETEST_VERSION: 1.13.0
PROTOBUF_VERSION: 21.12
run: |
sudo -E ./ci/setup_cmake.sh
Expand Down Expand Up @@ -74,7 +75,7 @@ jobs:
env:
CC: /usr/bin/gcc-12
CXX: /usr/bin/g++-12
GOOGLETEST_VERSION: 1.12.1
GOOGLETEST_VERSION: 1.13.0
PROTOBUF_VERSION: 21.12
run: |
sudo -E ./ci/setup_cmake.sh
Expand Down Expand Up @@ -108,7 +109,7 @@ jobs:
env:
CC: /usr/bin/clang-14
CXX: /usr/bin/clang++-14
GOOGLETEST_VERSION: 1.12.1
GOOGLETEST_VERSION: 1.13.0
PROTOBUF_VERSION: 21.12
run: |
sudo -E ./ci/setup_cmake.sh
Expand Down Expand Up @@ -142,7 +143,7 @@ jobs:
env:
CC: /usr/bin/clang-14
CXX: /usr/bin/clang++-14
GOOGLETEST_VERSION: 1.12.1
GOOGLETEST_VERSION: 1.13.0
PROTOBUF_VERSION: 21.12
run: |
sudo -E ./ci/setup_cmake.sh
Expand Down Expand Up @@ -190,6 +191,7 @@ jobs:
env:
CC: /usr/bin/gcc-10
CXX: /usr/bin/g++-10
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
Expand All @@ -209,9 +211,11 @@ jobs:
with:
submodules: 'recursive'
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: run cmake tests (enable abseil-cpp)
run: |
sudo ./ci/install_abseil.sh
Expand All @@ -225,9 +229,11 @@ jobs:
with:
submodules: 'recursive'
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: run cmake tests (enable opentracing-shim)
run: ./ci/do_ci.sh cmake.opentracing_shim.test

Expand All @@ -250,8 +256,8 @@ jobs:
env:
CC: /usr/bin/gcc-4.8
CXX: /usr/bin/g++-4.8
GOOGLETEST_VERSION: "1.10.0"
run: sudo -E ./ci/setup_cmake.sh
run: |
sudo -E ./ci/setup_cmake.sh
- name: run tests
env:
CC: /usr/bin/gcc-4.8
Expand All @@ -277,7 +283,6 @@ jobs:
env:
CC: /usr/bin/gcc-4.8
CXX: /usr/bin/g++-4.8
GOOGLETEST_VERSION: "1.10.0"
run: |
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_grpc.sh -v 4.8
Expand All @@ -296,7 +301,8 @@ jobs:
submodules: 'recursive'
- name: setup
env:
CMAKE_VERSION: "3.20.6"
CMAKE_VERSION: 3.20.6
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
Expand All @@ -317,7 +323,8 @@ jobs:
CC: /usr/bin/clang
CXX: /usr/bin/clang++
CXXFLAGS: "-stdlib=libc++"
CMAKE_VERSION: "3.20.6"
CMAKE_VERSION: 3.20.6
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
Expand All @@ -342,9 +349,11 @@ jobs:
with:
submodules: 'recursive'
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: run otlp exporter tests
run: |
sudo ./ci/setup_grpc.sh
Expand All @@ -358,9 +367,11 @@ jobs:
with:
submodules: 'recursive'
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: run otlp exporter tests
run: |
sudo ./ci/setup_grpc.sh
Expand All @@ -374,9 +385,11 @@ jobs:
with:
submodules: 'recursive'
- name: setup
env:
GOOGLETEST_VERSION: 1.13.0
run: |
sudo ./ci/setup_cmake.sh
sudo ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: run otlp exporter tests
run: |
sudo ./ci/setup_grpc.sh -T
Expand All @@ -393,6 +406,7 @@ jobs:
env:
CC: /usr/bin/gcc-10
CXX: /usr/bin/g++-10
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
Expand Down Expand Up @@ -731,6 +745,7 @@ jobs:
env:
CC: /usr/bin/gcc-10
CXX: /usr/bin/g++-10
GOOGLETEST_VERSION: 1.13.0
run: |
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,13 @@ jobs:
run: |
rm -rf third_party
- name: Setup
env:
CC: /usr/bin/gcc-10
CXX: /usr/bin/g++-10
GOOGLETEST_VERSION: 1.13.0
run: |
sudo CC=/usr/bin/gcc-10 CXX=/usr/bin/g++-10 ./ci/setup_cmake.sh
sudo CC=/usr/bin/gcc-10 CXX=/usr/bin/g++-10 ./ci/setup_ci_environment.sh
sudo -E ./ci/setup_cmake.sh
sudo -E ./ci/setup_ci_environment.sh
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
Expand Down
5 changes: 3 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -209,8 +209,8 @@ set(OTELCPP_PROTO_PATH
if(WIN32)
if(BUILD_TESTING)
if(MSVC)
# GTest bug: https://github.com/google/googletest/issues/860
add_compile_options(/wd4275)
# Warning as error: warning STL4036: <ciso646> is removed in C++20
add_compile_options(/wd4996)
endif()
endif()
option(WITH_ETW "Whether to include the ETW Exporter in the SDK" ON)
Expand Down Expand Up @@ -535,6 +535,7 @@ list(APPEND CMAKE_PREFIX_PATH "${CMAKE_BINARY_DIR}")

include(CTest)
if(BUILD_TESTING)
set(CMAKE_CXX_STANDARD 20)
add_definitions(-DENABLE_TEST)
if(EXISTS ${CMAKE_BINARY_DIR}/lib/libgtest.a)
# Prefer GTest from build tree. GTest is not always working with
Expand Down
6 changes: 3 additions & 3 deletions bazel/repository.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,10 @@ def opentelemetry_cpp_deps():
maybe(
http_archive,
name = "com_google_googletest",
sha256 = "81964fe578e9bd7c94dfdb09c8e4d6e6759e19967e397dbea48d1c10e45d0df2",
strip_prefix = "googletest-release-1.12.1",
sha256 = "ad7fdba11ea011c1d925b3289cf4af2c66a352e18d4c7264392fead75e919363",
strip_prefix = "googletest-1.13.0",
urls = [
"https://github.com/google/googletest/archive/release-1.12.1.tar.gz",
"https://github.com/google/googletest/archive/v1.13.0.tar.gz",
],
)

Expand Down
1 change: 1 addition & 0 deletions ci/do_ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ elif [[ "$1" == "cmake.c++20.stl.test" ]]; then
-DWITH_LOGS_PREVIEW=ON \
-DCMAKE_CXX_FLAGS="-Werror $CXXFLAGS" \
-DWITH_ASYNC_EXPORT_PREVIEW=ON \
-DCMAKE_CXX_STANDARD=20 \
-DWITH_STL=ON \
"${SRC_DIR}"
make -j $(nproc)
Expand Down
17 changes: 13 additions & 4 deletions ci/setup_cmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,24 @@

set -e

GOOGLETEST_VERSION_PATH=""

export DEBIAN_FRONTEND=noninteractive
apt-get update

if [ "x$CMAKE_VERSION" = "x" ]; then
export CMAKE_VERSION=3.15.2
fi

# This variable not set for legacy environment(GCC 4.8) due to GoogleTest version.
# With 1.13.0 version, C++14 must be set which does not supported by legacy environment anymore.
if [ "x$GOOGLETEST_VERSION" = "x" ]; then
export GOOGLETEST_VERSION=1.12.1
export GOOGLETEST_VERSION=1.10.0
GOOGLETEST_VERSION_PATH="release-${GOOGLETEST_VERSION}"
GOOGLETEST_FOLDER_PATH="googletest-release-${GOOGLETEST_VERSION}"
else
GOOGLETEST_VERSION_PATH="v${GOOGLETEST_VERSION}"
GOOGLETEST_FOLDER_PATH="googletest-${GOOGLETEST_VERSION}"
fi

cmake_install() {
Expand All @@ -31,9 +40,9 @@ googletest_install() {
# https://gist.github.com/dlime/313f74fd23e4267c4a915086b84c7d3d
tmp_dir=$(mktemp -d)
pushd $tmp_dir
wget https://github.com/google/googletest/archive/release-${GOOGLETEST_VERSION}.tar.gz
tar -xf release-${GOOGLETEST_VERSION}.tar.gz
cd googletest-release-${GOOGLETEST_VERSION}/
wget https://github.com/google/googletest/archive/${GOOGLETEST_VERSION_PATH}.tar.gz
tar -xf ${GOOGLETEST_VERSION_PATH}.tar.gz
cd ${GOOGLETEST_FOLDER_PATH}/
mkdir build && cd build
cmake .. -DBUILD_SHARED_LIBS=ON -DINSTALL_GTEST=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr
make -j $(nproc)
Expand Down
2 changes: 1 addition & 1 deletion third_party/googletest
Submodule googletest updated 77 files
+0 −43 .github/ISSUE_TEMPLATE/00-bug_report.md
+53 −0 .github/ISSUE_TEMPLATE/00-bug_report.yml
+0 −24 .github/ISSUE_TEMPLATE/10-feature_request.md
+33 −0 .github/ISSUE_TEMPLATE/10-feature_request.yml
+4 −0 .github/ISSUE_TEMPLATE/config.yml
+10 −7 .github/workflows/gtest-ci.yml
+6 −1 CMakeLists.txt
+2 −2 CONTRIBUTING.md
+12 −36 README.md
+20 −19 WORKSPACE
+6 −2 ci/linux-presubmit.sh
+4 −2 ci/macos-presubmit.sh
+56 −0 ci/windows-presubmit.bat
+1 −1 docs/_layouts/default.html
+17 −8 docs/advanced.md
+1 −1 docs/faq.md
+1 −1 docs/gmock_cheat_sheet.md
+15 −14 docs/gmock_cook_book.md
+1 −0 docs/primer.md
+8 −9 docs/quickstart-bazel.md
+6 −6 docs/quickstart-cmake.md
+1 −1 docs/reference/testing.md
+1 −1 docs/samples.md
+9 −5 googlemock/include/gmock/gmock-actions.h
+8 −5 googlemock/include/gmock/gmock-function-mocker.h
+34 −24 googlemock/include/gmock/gmock-matchers.h
+38 −7 googlemock/include/gmock/gmock-more-matchers.h
+31 −3 googlemock/include/gmock/gmock-spec-builders.h
+25 −11 googlemock/include/gmock/internal/gmock-internal-utils.h
+5 −4 googlemock/src/gmock-internal-utils.cc
+17 −0 googlemock/src/gmock-matchers.cc
+18 −4 googlemock/src/gmock-spec-builders.cc
+4 −4 googlemock/test/gmock-actions_test.cc
+15 −0 googlemock/test/gmock-function-mocker_test.cc
+41 −0 googlemock/test/gmock-matchers-comparisons_test.cc
+2 −2 googlemock/test/gmock-matchers-containers_test.cc
+15 −1 googlemock/test/gmock-matchers-misc_test.cc
+12 −9 googlemock/test/gmock-spec-builders_test.cc
+3 −0 googlemock/test/gmock_output_test.py
+4 −4 googlemock/test/gmock_output_test_golden.txt
+16 −0 googletest/CMakeLists.txt
+7 −7 googletest/README.md
+19 −5 googletest/cmake/internal_utils.cmake
+1 −1 googletest/include/gtest/gtest-matchers.h
+2 −0 googletest/include/gtest/gtest-message.h
+41 −6 googletest/include/gtest/gtest-param-test.h
+85 −2 googletest/include/gtest/gtest-printers.h
+2 −0 googletest/include/gtest/gtest-spi.h
+2 −0 googletest/include/gtest/gtest-test-part.h
+31 −10 googletest/include/gtest/gtest.h
+2 −1 googletest/include/gtest/internal/gtest-death-test-internal.h
+17 −0 googletest/include/gtest/internal/gtest-filepath.h
+5 −4 googletest/include/gtest/internal/gtest-internal.h
+75 −0 googletest/include/gtest/internal/gtest-param-util.h
+2 −0 googletest/include/gtest/internal/gtest-port-arch.h
+146 −99 googletest/include/gtest/internal/gtest-port.h
+1 −0 googletest/include/gtest/internal/gtest-string.h
+4 −0 googletest/include/gtest/internal/gtest-type-util.h
+2 −2 googletest/src/gtest-death-test.cc
+63 −20 googletest/src/gtest-filepath.cc
+9 −4 googletest/src/gtest-internal-inl.h
+1 −1 googletest/src/gtest-printers.cc
+121 −72 googletest/src/gtest.cc
+12 −0 googletest/src/gtest_main.cc
+1 −0 googletest/test/googletest-color-test.py
+20 −0 googletest/test/googletest-filepath-test.cc
+3 −0 googletest/test/googletest-message-test.cc
+2 −0 googletest/test/googletest-options-test.cc
+71 −11 googletest/test/googletest-param-test-test.cc
+1 −0 googletest/test/googletest-port-test.cc
+32 −1 googletest/test/googletest-printers-test.cc
+1 −0 googletest/test/gtest-typed-test_test.cc
+2 −2 googletest/test/gtest-unittest-api_test.cc
+97 −0 googletest/test/gtest_dirs_test.cc
+1 −0 googletest/test/gtest_pred_impl_unittest.cc
+7 −3 googletest/test/gtest_unittest.cc
+3 −1 googletest/test/gtest_xml_outfile2_test_.cc
2 changes: 1 addition & 1 deletion third_party_release
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ gRPC=v1.49.2
thrift=0.14.1
abseil=20220623.1
benchmark=v1.5.3
googletest=release-1.12.1
googletest=release-1.13.0
ms-gsl=v3.1.0-67-g6f45293
nlohmann-json=v3.10.5
opentelemetry-proto=v0.19.0
Expand Down

0 comments on commit 4d0420e

Please sign in to comment.