Export of internal Abseil changes
-- 1639d4832e961761060e61196e45948e25dc2676 by Derek Mauro <dmauro@google.com>: Delete GCC 4.8 test script. GCC 4.8 is no longer supported. PiperOrigin-RevId: 264485899 -- 2a9b2182646b6c6675dce614dcce2c18174303d3 by Derek Mauro <dmauro@google.com>: Make btree_test work with exceptions both enabled and disabled PiperOrigin-RevId: 264473656 GitOrigin-RevId: 1639d4832e961761060e61196e45948e25dc2676 Change-Id: Ica58a2328fa261ecc4c4be410f68f97942074025
This commit is contained in:
parent
f0afae0d49
commit
262d74ba81
4 changed files with 8 additions and 67 deletions
|
@ -887,6 +887,7 @@ cc_test(
|
||||||
":btree_test_common",
|
":btree_test_common",
|
||||||
":counting_allocator",
|
":counting_allocator",
|
||||||
":test_instance_tracker",
|
":test_instance_tracker",
|
||||||
|
"//absl/base:core_headers",
|
||||||
"//absl/base:raw_logging_internal",
|
"//absl/base:raw_logging_internal",
|
||||||
"//absl/flags:flag",
|
"//absl/flags:flag",
|
||||||
"//absl/hash:hash_testing",
|
"//absl/hash:hash_testing",
|
||||||
|
|
|
@ -75,6 +75,7 @@ absl_cc_test(
|
||||||
absl::btree
|
absl::btree
|
||||||
absl::btree_test_common
|
absl::btree_test_common
|
||||||
absl::compare
|
absl::compare
|
||||||
|
absl::core_headers
|
||||||
absl::counting_allocator
|
absl::counting_allocator
|
||||||
absl::flags
|
absl::flags
|
||||||
absl::hash_testing
|
absl::hash_testing
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
#include "gmock/gmock.h"
|
#include "gmock/gmock.h"
|
||||||
#include "gtest/gtest.h"
|
#include "gtest/gtest.h"
|
||||||
#include "absl/base/internal/raw_logging.h"
|
#include "absl/base/internal/raw_logging.h"
|
||||||
|
#include "absl/base/macros.h"
|
||||||
#include "absl/container/btree_map.h"
|
#include "absl/container/btree_map.h"
|
||||||
#include "absl/container/btree_set.h"
|
#include "absl/container/btree_set.h"
|
||||||
#include "absl/container/internal/counting_allocator.h"
|
#include "absl/container/internal/counting_allocator.h"
|
||||||
|
@ -1537,12 +1538,11 @@ TEST(Btree, MapAt) {
|
||||||
const absl::btree_map<int, int> &const_map = map;
|
const absl::btree_map<int, int> &const_map = map;
|
||||||
EXPECT_EQ(const_map.at(1), 2);
|
EXPECT_EQ(const_map.at(1), 2);
|
||||||
EXPECT_EQ(const_map.at(2), 8);
|
EXPECT_EQ(const_map.at(2), 8);
|
||||||
try {
|
#ifdef ABSL_HAVE_EXCEPTIONS
|
||||||
map.at(3);
|
EXPECT_THROW(map.at(3), std::out_of_range);
|
||||||
FAIL() << "Exception not thrown";
|
#else
|
||||||
} catch (const std::out_of_range& e) {
|
EXPECT_DEATH(map.at(3), "absl::btree_map::at");
|
||||||
EXPECT_STREQ(e.what(), "absl::btree_map::at");
|
#endif
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(Btree, BtreeMultisetEmplace) {
|
TEST(Btree, BtreeMultisetEmplace) {
|
||||||
|
|
|
@ -1,61 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
# Copyright 2019 The Abseil Authors.
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# https://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
# TODO(absl-team): This script isn't fully hermetic because
|
|
||||||
# -DABSL_USE_GOOGLETEST_HEAD=ON means that this script isn't pinned to a fixed
|
|
||||||
# version of GoogleTest. This means that an upstream change to GoogleTest could
|
|
||||||
# break this test. Fix this by allowing this script to pin to a known-good
|
|
||||||
# version of GoogleTest.
|
|
||||||
|
|
||||||
set -euox pipefail
|
|
||||||
|
|
||||||
if [ -z ${ABSEIL_ROOT:-} ]; then
|
|
||||||
ABSEIL_ROOT="$(realpath $(dirname ${0})/..)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z ${ABSL_CMAKE_CXX_STANDARDS:-} ]; then
|
|
||||||
ABSL_CMAKE_CXX_STANDARDS="11 14"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z ${ABSL_CMAKE_BUILD_TYPES:-} ]; then
|
|
||||||
ABSL_CMAKE_BUILD_TYPES="Debug Release"
|
|
||||||
fi
|
|
||||||
|
|
||||||
for std in ${ABSL_CMAKE_CXX_STANDARDS}; do
|
|
||||||
for compilation_mode in ${ABSL_CMAKE_BUILD_TYPES}; do
|
|
||||||
echo "--------------------------------------------------------------------"
|
|
||||||
echo "Testing with CMAKE_BUILD_TYPE=${compilation_mode} and -std=c++${std}"
|
|
||||||
|
|
||||||
time docker run \
|
|
||||||
--volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
|
|
||||||
--workdir=/abseil-cpp \
|
|
||||||
--tmpfs=/buildfs:exec \
|
|
||||||
--cap-add=SYS_PTRACE \
|
|
||||||
--rm \
|
|
||||||
-e CFLAGS="-Werror" \
|
|
||||||
-e CXXFLAGS="-Werror" \
|
|
||||||
gcr.io/google.com/absl-177019/linux_gcc-4.8:20190316 \
|
|
||||||
/bin/bash -c "
|
|
||||||
cd /buildfs && \
|
|
||||||
cmake /abseil-cpp \
|
|
||||||
-DABSL_USE_GOOGLETEST_HEAD=ON \
|
|
||||||
-DABSL_RUN_TESTS=ON \
|
|
||||||
-DCMAKE_BUILD_TYPE=${compilation_mode} \
|
|
||||||
-DCMAKE_CXX_STANDARD=${std} && \
|
|
||||||
make -j$(nproc) VERBOSE=1 && \
|
|
||||||
ctest -j$(nproc) --output-on-failure"
|
|
||||||
done
|
|
||||||
done
|
|
Loading…
Reference in a new issue