aboutsummaryrefslogtreecommitdiffstats
path: root/test/gmock-printers_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/gmock-printers_test.cc')
-rw-r--r--test/gmock-printers_test.cc61
1 files changed, 52 insertions, 9 deletions
diff --git a/test/gmock-printers_test.cc b/test/gmock-printers_test.cc
index 8ce2b739..e5e3ff12 100644
--- a/test/gmock-printers_test.cc
+++ b/test/gmock-printers_test.cc
@@ -47,6 +47,7 @@
#include <string>
#include <utility>
#include <vector>
+#include <gmock/gmock-generated-matchers.h>
#include <gmock/gmock-matchers.h>
#include <gmock/internal/gmock-port.h>
#include <gtest/gtest.h>
@@ -151,8 +152,11 @@ using ::std::set;
using ::std::tr1::make_tuple;
using ::std::tr1::tuple;
using ::std::vector;
+using ::testing::ElementsAre;
using ::testing::StartsWith;
-using ::testing::internal::UniversalPrint;
+using ::testing::internal::Strings;
+using ::testing::internal::UniversalTersePrint;
+using ::testing::internal::UniversalTersePrintTupleFieldsToStrings;
using ::testing::internal::UniversalPrinter;
using ::testing::internal::string;
@@ -981,28 +985,67 @@ TEST(PrintReferenceTest, HandlesMemberVariablePointer) {
+ " " + Print(sizeof(p)) + "-byte object "));
}
-TEST(PrintAsStringTest, WorksForNonReference) {
- EXPECT_EQ("123", UniversalPrinter<int>::PrintAsString(123));
+TEST(PrintToStringTest, WorksForNonReference) {
+ EXPECT_EQ("123", UniversalPrinter<int>::PrintToString(123));
}
-TEST(PrintAsStringTest, WorksForReference) {
+TEST(PrintToStringTest, WorksForReference) {
int n = 123;
EXPECT_EQ("@" + PrintPointer(&n) + " 123",
- UniversalPrinter<const int&>::PrintAsString(n));
+ UniversalPrinter<const int&>::PrintToString(n));
}
-TEST(UniversalPrintTest, WorksForNonReference) {
+TEST(UniversalTersePrintTest, WorksForNonReference) {
::std::stringstream ss;
- UniversalPrint(123, &ss);
+ UniversalTersePrint(123, &ss);
EXPECT_EQ("123", ss.str());
}
-TEST(UniversalPrintTest, WorksForReference) {
+TEST(UniversalTersePrintTest, WorksForReference) {
const int& n = 123;
::std::stringstream ss;
- UniversalPrint(n, &ss);
+ UniversalTersePrint(n, &ss);
EXPECT_EQ("123", ss.str());
}
+TEST(UniversalTersePrintTest, WorksForCString) {
+ const char* s1 = "abc";
+ ::std::stringstream ss1;
+ UniversalTersePrint(s1, &ss1);
+ EXPECT_EQ("\"abc\"", ss1.str());
+
+ char* s2 = const_cast<char*>(s1);
+ ::std::stringstream ss2;
+ UniversalTersePrint(s2, &ss2);
+ EXPECT_EQ("\"abc\"", ss2.str());
+
+ const char* s3 = NULL;
+ ::std::stringstream ss3;
+ UniversalTersePrint(s3, &ss3);
+ EXPECT_EQ("NULL", ss3.str());
+}
+
+TEST(UniversalTersePrintTupleFieldsToStringsTest, PrintsEmptyTuple) {
+ EXPECT_THAT(UniversalTersePrintTupleFieldsToStrings(make_tuple()),
+ ElementsAre());
+}
+
+TEST(UniversalTersePrintTupleFieldsToStringsTest, PrintsOneTuple) {
+ EXPECT_THAT(UniversalTersePrintTupleFieldsToStrings(make_tuple(1)),
+ ElementsAre("1"));
+}
+
+TEST(UniversalTersePrintTupleFieldsToStringsTest, PrintsTwoTuple) {
+ EXPECT_THAT(UniversalTersePrintTupleFieldsToStrings(make_tuple(1, 'a')),
+ ElementsAre("1", "'a' (97)"));
+}
+
+TEST(UniversalTersePrintTupleFieldsToStringsTest, PrintsTersely) {
+ const int n = 1;
+ EXPECT_THAT(UniversalTersePrintTupleFieldsToStrings(
+ tuple<const int&, const char*>(n, "a")),
+ ElementsAre("1", "\"a\""));
+}
+
} // namespace gmock_printers_test
} // namespace testing