From ae90305ed586b733cf6df07620b4655d210017ae Mon Sep 17 00:00:00 2001 From: MakersF Date: Sun, 5 Dec 2021 16:50:37 +0000 Subject: [PATCH] Add test for tuples with different reference categories Currently there is no test which checks that tuple with various reference categories can successfully be printed. Tuples like that can happen when mocking a function which takes refererences --- googletest/test/googletest-printers-test.cc | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/googletest/test/googletest-printers-test.cc b/googletest/test/googletest-printers-test.cc index 0058917a2..f708e9088 100644 --- a/googletest/test/googletest-printers-test.cc +++ b/googletest/test/googletest-printers-test.cc @@ -1247,6 +1247,22 @@ TEST(PrintStdTupleTest, VariousSizes) { Print(t10)); } +// Tuple with various qualifiers +TEST(PrintStdTupleTest, VariousQualifiers) { + ::std::tuple t0{1, 2}; + EXPECT_EQ("(1, 2)", Print(t0)); + int i1 = 3; + int i2 = 4; + ::std::tuple t1{i1, i2}; + EXPECT_EQ("(@" + PrintPointer(&i1) + " 3, @" + PrintPointer(&i2) + " 4)", + Print(t1)); + int i3 = 5; + int i4 = 6; + ::std::tuple t2{static_cast(i3), + static_cast(i4)}; + EXPECT_EQ("(5, 6)", Print(t2)); +} + // Nested tuples. TEST(PrintStdTupleTest, NestedTuple) { ::std::tuple< ::std::tuple, char> nested(