Reviewers: jarin,
Message:
PTAL
Description:
Don't use internal gmock helper classes.
BUG=v8:3835
LOG=n
Please review this at https://codereview.chromium.org/881653003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+6, -23 lines):
M testing/gmock-support.h
Index: testing/gmock-support.h
diff --git a/testing/gmock-support.h b/testing/gmock-support.h
index
012775b5cbffbf6b33de4fb3bb67c6ae04583ef3..d00468e083ccfbe0e78e76ce87518129d24bfb2c
100644
--- a/testing/gmock-support.h
+++ b/testing/gmock-support.h
@@ -7,6 +7,7 @@
#include <cmath>
#include <cstring>
+#include <string>
#include "testing/gmock/include/gmock/gmock.h"
@@ -34,25 +35,6 @@ class Capture {
namespace internal {
-struct AnyBitEq {
- template <typename A, typename B>
- bool operator()(A const& a, B const& b) const {
- if (sizeof(A) != sizeof(B)) return false;
- return std::memcmp(&a, &b, sizeof(A)) == 0;
- }
-};
-
-
-template <typename Rhs>
-class BitEqMatcher : public ComparisonBase<BitEqMatcher<Rhs>, Rhs,
AnyBitEq> {
- public:
- explicit BitEqMatcher(Rhs const& rhs)
- : ComparisonBase<BitEqMatcher<Rhs>, Rhs, AnyBitEq>(rhs) {}
- static const char* Desc() { return "is bitwise equal to"; }
- static const char* NegatedDesc() { return "isn't bitwise equal to"; }
-};
-
-
template <typename T>
class CaptureEqMatcher : public MatcherInterface<T> {
public:
@@ -83,10 +65,11 @@ class CaptureEqMatcher : public MatcherInterface<T> {
// Creates a polymorphic matcher that matches anything whose bit
representation
-// is equal to that of x.
-template <typename T>
-inline internal::BitEqMatcher<T> BitEq(T const& x) {
- return internal::BitEqMatcher<T>(x);
+// is equal to that of {x}.
+MATCHER_P(BitEq, x, std::string(negation ? "isn't" : "is") +
+ " bitwise equal to " + PrintToString(x)) {
+ static_assert(sizeof(x) == sizeof(arg), "Size mismatch");
+ return std::memcmp(&arg, &x, sizeof(x)) == 0;
}
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.