Adds the IsNull() matcher.
This commit is contained in:
@@ -621,6 +621,19 @@ GMOCK_IMPLEMENT_COMPARISON_MATCHER_(Ne, !=, "not equal to");
|
||||
|
||||
#undef GMOCK_IMPLEMENT_COMPARISON_MATCHER_
|
||||
|
||||
// Implements the polymorphic IsNull() matcher, which matches any
|
||||
// pointer that is NULL.
|
||||
class IsNullMatcher {
|
||||
public:
|
||||
template <typename T>
|
||||
bool Matches(T* p) const { return p == NULL; }
|
||||
|
||||
void DescribeTo(::std::ostream* os) const { *os << "is NULL"; }
|
||||
void DescribeNegationTo(::std::ostream* os) const {
|
||||
*os << "is not NULL";
|
||||
}
|
||||
};
|
||||
|
||||
// Implements the polymorphic NotNull() matcher, which matches any
|
||||
// pointer that is not NULL.
|
||||
class NotNullMatcher {
|
||||
@@ -2319,6 +2332,11 @@ inline internal::NeMatcher<Rhs> Ne(Rhs x) {
|
||||
return internal::NeMatcher<Rhs>(x);
|
||||
}
|
||||
|
||||
// Creates a polymorphic matcher that matches any NULL pointer.
|
||||
inline PolymorphicMatcher<internal::IsNullMatcher > IsNull() {
|
||||
return MakePolymorphicMatcher(internal::IsNullMatcher());
|
||||
}
|
||||
|
||||
// Creates a polymorphic matcher that matches any non-NULL pointer.
|
||||
// This is convenient as Not(NULL) doesn't compile (the compiler
|
||||
// thinks that that expression is comparing a pointer with an integer).
|
||||
|
||||
Reference in New Issue
Block a user