aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--googletest/include/gtest/gtest-printers.h7
-rw-r--r--googletest/test/googletest-overload-addressof-operator-test.cc91
-rw-r--r--googletest/test/googletest-printers-test.cc59
3 files changed, 63 insertions, 94 deletions
diff --git a/googletest/include/gtest/gtest-printers.h b/googletest/include/gtest/gtest-printers.h
index 5a3ca821..56a05450 100644
--- a/googletest/include/gtest/gtest-printers.h
+++ b/googletest/include/gtest/gtest-printers.h
@@ -151,9 +151,10 @@ class TypeWithoutFormatter {
public:
// This default version is called when kTypeKind is kOtherType.
static void PrintValue(const T& value, ::std::ostream* os) {
- PrintBytesInObjectTo(static_cast<const unsigned char*>(
- reinterpret_cast<const void*>(
- std::addressof(value))), sizeof(value), os);
+ PrintBytesInObjectTo(
+ static_cast<const unsigned char*>(
+ reinterpret_cast<const void*>(std::addressof(value))),
+ sizeof(value), os);
}
};
diff --git a/googletest/test/googletest-overload-addressof-operator-test.cc b/googletest/test/googletest-overload-addressof-operator-test.cc
deleted file mode 100644
index e8355e57..00000000
--- a/googletest/test/googletest-overload-addressof-operator-test.cc
+++ /dev/null
@@ -1,91 +0,0 @@
-// Copyright 2008, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//
-// This file tests EXPECT_EQ works when used with type that has overloaded &
-// operator.
-
-#include <gtest/gtest.h>
-#include <string>
-
-class string_ref;
-
-/**
- * This is a synthetic pointer to a fixed size string.
- */
-class string_ptr {
- public:
- string_ptr(const char *data, size_t size) : data_(data), size_(size) {}
-
- string_ptr &operator++() noexcept {
- data_ += size_;
- return *this;
- }
-
- string_ref operator*() const noexcept;
-
- private:
- const char *data_;
- size_t size_;
-};
-
-/**
- * This is a synthetic reference of a fixed size string.
- */
-class string_ref {
- public:
- string_ref(const char *data, size_t size) : data_(data), size_(size) {}
-
- string_ptr operator&() const noexcept { return {data_, size_}; }
-
- bool operator==(const char *s) const noexcept {
- if (size_ > 0 && data_[size_ - 1] != 0) {
- return std::string(data_, size_) == std::string(s);
- } else {
- return std::string(data_) == std::string(s);
- }
- }
-
- private:
- const char *data_;
- size_t size_;
-};
-
-string_ref string_ptr::operator*() const noexcept { return {data_, size_}; }
-
-TEST(string_ref, compare) {
- const char *s = "alex\0davidjohn\0";
- string_ptr ptr(s, 5);
- EXPECT_EQ(*ptr, "alex");
- EXPECT_TRUE(*ptr == "alex");
- ++ptr;
- EXPECT_EQ(*ptr, "david");
- EXPECT_TRUE(*ptr == "david");
- ++ptr;
- EXPECT_EQ(*ptr, "john");
-}
diff --git a/googletest/test/googletest-printers-test.cc b/googletest/test/googletest-printers-test.cc
index d896c241..4bdc9add 100644
--- a/googletest/test/googletest-printers-test.cc
+++ b/googletest/test/googletest-printers-test.cc
@@ -1556,6 +1556,65 @@ TEST(PrintOneofTest, Basic) {
PrintToString(Type(NonPrintable{})));
}
#endif // GTEST_HAS_ABSL
+namespace {
+class string_ref;
+
+/**
+ * This is a synthetic pointer to a fixed size string.
+ */
+class string_ptr {
+ public:
+ string_ptr(const char* data, size_t size) : data_(data), size_(size) {}
+
+ string_ptr& operator++() noexcept {
+ data_ += size_;
+ return *this;
+ }
+
+ string_ref operator*() const noexcept;
+
+ private:
+ const char* data_;
+ size_t size_;
+};
+
+/**
+ * This is a synthetic reference of a fixed size string.
+ */
+class string_ref {
+ public:
+ string_ref(const char* data, size_t size) : data_(data), size_(size) {}
+
+ string_ptr operator&() const noexcept { return {data_, size_}; } // NOLINT
+
+ bool operator==(const char* s) const noexcept {
+ if (size_ > 0 && data_[size_ - 1] != 0) {
+ return std::string(data_, size_) == std::string(s);
+ } else {
+ return std::string(data_) == std::string(s);
+ }
+ }
+
+ private:
+ const char* data_;
+ size_t size_;
+};
+
+string_ref string_ptr::operator*() const noexcept { return {data_, size_}; }
+
+TEST(string_ref, compare) {
+ const char* s = "alex\0davidjohn\0";
+ string_ptr ptr(s, 5);
+ EXPECT_EQ(*ptr, "alex");
+ EXPECT_TRUE(*ptr == "alex");
+ ++ptr;
+ EXPECT_EQ(*ptr, "david");
+ EXPECT_TRUE(*ptr == "david");
+ ++ptr;
+ EXPECT_EQ(*ptr, "john");
+}
+
+} // namespace
} // namespace gtest_printers_test
} // namespace testing