summaryrefslogtreecommitdiffstats
path: root/googletest
diff options
context:
space:
mode:
authorGennadiy Civil <misterg@google.com>2018-03-13 20:02:05 (GMT)
committerGennadiy Civil <misterg@google.com>2018-03-13 20:02:05 (GMT)
commit2814b4b08910d62f8516cd3e4e77ef99ee7360e9 (patch)
treeccf86cb52ed04c77b6f6cb185252b800276ad093 /googletest
parenta719320a3ce448dad588f0d5506e47fe84fa9d16 (diff)
downloadgoogletest-2814b4b08910d62f8516cd3e4e77ef99ee7360e9.zip
googletest-2814b4b08910d62f8516cd3e4e77ef99ee7360e9.tar.gz
googletest-2814b4b08910d62f8516cd3e4e77ef99ee7360e9.tar.bz2
merging, merging
Diffstat (limited to 'googletest')
-rw-r--r--googletest/include/gtest/internal/gtest-port.h2
-rw-r--r--googletest/test/gtest-printers_test.cc60
2 files changed, 23 insertions, 39 deletions
diff --git a/googletest/include/gtest/internal/gtest-port.h b/googletest/include/gtest/internal/gtest-port.h
index ccbdb76..3e4f7b5 100644
--- a/googletest/include/gtest/internal/gtest-port.h
+++ b/googletest/include/gtest/internal/gtest-port.h
@@ -371,6 +371,8 @@
# define GTEST_HAS_STD_MOVE_ 1
# define GTEST_HAS_STD_UNIQUE_PTR_ 1
# define GTEST_HAS_STD_SHARED_PTR_ 1
+# define GTEST_HAS_UNORDERED_MAP_ 1
+# define GTEST_HAS_UNORDERED_SET_ 1
#endif
// C++11 specifies that <tuple> provides std::tuple.
diff --git a/googletest/test/gtest-printers_test.cc b/googletest/test/gtest-printers_test.cc
index 1584de4..cf8bcce 100644
--- a/googletest/test/gtest-printers_test.cc
+++ b/googletest/test/gtest-printers_test.cc
@@ -50,14 +50,13 @@
#include "gtest/gtest.h"
-// hash_set are available under Visual C++, or on Linux.
-#if GTEST_HAS_HASH_MAP_
-# include <hash_map> // NOLINT
-#endif // GTEST_HAS_HASH_MAP_
+#if GTEST_HAS_UNORDERED_MAP_
+# include <unordered_map> // NOLINT
+#endif // GTEST_HAS_UNORDERED_MAP_
-#if GTEST_HAS_HASH_SET_
-# include <hash_set> // NOLINT
-#endif // GTEST_HAS_HASH_SET_
+#if GTEST_HAS_UNORDERED_SET_
+# include <unordered_set> // NOLINT
+#endif // GTEST_HAS_UNORDERED_SET_
#if GTEST_HAS_STD_FORWARD_LIST_
# include <forward_list> // NOLINT
@@ -236,34 +235,6 @@ using ::testing::internal::UniversalTersePrint;
using ::testing::internal::UniversalTersePrintTupleFieldsToStrings;
#endif
-
-// The hash_* classes are not part of the C++ standard. STLport
-// defines them in namespace std. MSVC defines them in ::stdext. GCC
-// defines them in ::.
-#if GTEST_HAS_HASH_MAP_
-
-#ifdef _STLP_HASH_MAP // We got <hash_map> from STLport.
-using ::std::hash_map;
-using ::std::hash_multimap;
-#elif _MSC_VER
-using ::stdext::hash_map;
-using ::stdext::hash_multimap;
-#endif
-
-#endif
-
-#if GTEST_HAS_HASH_SET_
-
-#ifdef _STLP_HASH_MAP // We got <hash_map> from STLport.
-using ::std::hash_map;
-using ::std::hash_multimap;
-#elif _MSC_VER
-using ::stdext::hash_map;
-using ::stdext::hash_multimap;
-#endif
-
-#endif
-
// Prints a value to a string using the universal value printer. This
// is a helper for testing UniversalPrinter<T>::Print() for various types.
template <typename T>
@@ -848,7 +819,13 @@ TEST(PrintStlContainerTest, NonEmptyDeque) {
EXPECT_EQ("{ 1, 3 }", Print(non_empty));
}
-#if GTEST_HAS_HASH_MAP_
+#if GTEST_HAS_UNORDERED_MAP_
+
+template <class Key, class T>
+using hash_map = ::std::unordered_map<Key, T>;
+template <class Key, class T>
+using hash_multimap = ::std::unordered_multimap<Key, T>;
+
TEST(PrintStlContainerTest, OneElementHashMap) {
hash_map<int, char> map1;
@@ -868,9 +845,14 @@ TEST(PrintStlContainerTest, HashMultiMap) {
<< " where Print(map1) returns \"" << result << "\".";
}
-#endif // GTEST_HAS_HASH_MAP_
+#endif // GTEST_HAS_UNORDERED_MAP_
+
+#if GTEST_HAS_UNORDERED_SET_
-#if GTEST_HAS_HASH_SET_
+template <class Key>
+using hash_set = ::std::unordered_set<Key>;
+template <class Key>
+using hash_multiset = ::std::unordered_multiset<Key>;
TEST(PrintStlContainerTest, HashSet) {
hash_set<int> set1;
@@ -907,7 +889,7 @@ TEST(PrintStlContainerTest, HashMultiSet) {
EXPECT_TRUE(std::equal(a, a + kSize, numbers.begin()));
}
-#endif // GTEST_HAS_HASH_SET_
+#endif // GTEST_HAS_UNORDERED_SET_
TEST(PrintStlContainerTest, List) {
const std::string a[] = {"hello", "world"};