Source release 17.1.0
This commit is contained in:
@@ -26,8 +26,7 @@
|
||||
// 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.
|
||||
//
|
||||
// Author: vladl@google.com (Vlad Losev)
|
||||
|
||||
|
||||
// Google Mock - a framework for writing C++ mock classes.
|
||||
//
|
||||
@@ -90,8 +89,10 @@
|
||||
// Field
|
||||
// Property
|
||||
// ResultOf(function)
|
||||
// ResultOf(callback)
|
||||
// Pointee
|
||||
// Truly(predicate)
|
||||
// AddressSatisfies
|
||||
// AllOf
|
||||
// AnyOf
|
||||
// Not
|
||||
@@ -111,8 +112,8 @@
|
||||
// is defined as LinkTest1 in gmock_link_test.cc and as LinkTest2 in
|
||||
// gmock_link2_test.cc to avoid producing linker errors.
|
||||
|
||||
#ifndef GMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
#define GMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
#ifndef GOOGLEMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
#define GOOGLEMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
|
||||
#include "gmock/gmock.h"
|
||||
|
||||
@@ -120,13 +121,15 @@
|
||||
# include <errno.h>
|
||||
#endif
|
||||
|
||||
#include "gmock/internal/gmock-port.h"
|
||||
#include "gtest/gtest.h"
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
#include "gtest/internal/gtest-port.h"
|
||||
|
||||
using testing::_;
|
||||
using testing::A;
|
||||
using testing::Action;
|
||||
using testing::AllOf;
|
||||
using testing::AnyOf;
|
||||
using testing::Assign;
|
||||
@@ -148,6 +151,8 @@ using testing::Invoke;
|
||||
using testing::InvokeArgument;
|
||||
using testing::InvokeWithoutArgs;
|
||||
using testing::IsNull;
|
||||
using testing::IsSubsetOf;
|
||||
using testing::IsSupersetOf;
|
||||
using testing::Le;
|
||||
using testing::Lt;
|
||||
using testing::Matcher;
|
||||
@@ -243,7 +248,7 @@ TEST(LinkTest, TestReturnVoid) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Return());
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the Return action.
|
||||
@@ -252,7 +257,7 @@ TEST(LinkTest, TestReturn) {
|
||||
char ch = 'x';
|
||||
|
||||
EXPECT_CALL(mock, StringFromString(_)).WillOnce(Return(&ch));
|
||||
mock.StringFromString(NULL);
|
||||
mock.StringFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the ReturnNull action.
|
||||
@@ -260,7 +265,7 @@ TEST(LinkTest, TestReturnNull) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Return());
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the ReturnRef action.
|
||||
@@ -269,7 +274,7 @@ TEST(LinkTest, TestReturnRef) {
|
||||
int n = 42;
|
||||
|
||||
EXPECT_CALL(mock, IntRefFromString(_)).WillOnce(ReturnRef(n));
|
||||
mock.IntRefFromString(NULL);
|
||||
mock.IntRefFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the Assign action.
|
||||
@@ -278,7 +283,7 @@ TEST(LinkTest, TestAssign) {
|
||||
char ch = 'x';
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Assign(&ch, 'y'));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the SetArgPointee action.
|
||||
@@ -309,7 +314,7 @@ TEST(LinkTest, TestSetErrnoAndReturn) {
|
||||
|
||||
int saved_errno = errno;
|
||||
EXPECT_CALL(mock, IntFromString(_)).WillOnce(SetErrnoAndReturn(1, -1));
|
||||
mock.IntFromString(NULL);
|
||||
mock.IntFromString(nullptr);
|
||||
errno = saved_errno;
|
||||
}
|
||||
|
||||
@@ -323,8 +328,8 @@ TEST(LinkTest, TestInvoke) {
|
||||
EXPECT_CALL(mock, VoidFromString(_))
|
||||
.WillOnce(Invoke(&InvokeHelper::StaticVoidFromString))
|
||||
.WillOnce(Invoke(&test_invoke_helper, &InvokeHelper::VoidFromString));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the InvokeWithoutArgs action.
|
||||
@@ -336,8 +341,8 @@ TEST(LinkTest, TestInvokeWithoutArgs) {
|
||||
.WillOnce(InvokeWithoutArgs(&InvokeHelper::StaticVoidFromVoid))
|
||||
.WillOnce(InvokeWithoutArgs(&test_invoke_helper,
|
||||
&InvokeHelper::VoidFromVoid));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the InvokeArgument action.
|
||||
@@ -355,7 +360,7 @@ TEST(LinkTest, TestWithArg) {
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_))
|
||||
.WillOnce(WithArg<0>(Invoke(&InvokeHelper::StaticVoidFromString)));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the WithArgs action.
|
||||
@@ -364,7 +369,7 @@ TEST(LinkTest, TestWithArgs) {
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_))
|
||||
.WillOnce(WithArgs<0>(Invoke(&InvokeHelper::StaticVoidFromString)));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the WithoutArgs action.
|
||||
@@ -372,7 +377,7 @@ TEST(LinkTest, TestWithoutArgs) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(WithoutArgs(Return()));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of the DoAll action.
|
||||
@@ -400,7 +405,7 @@ TEST(LinkTest, TestIgnoreResult) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(IgnoreResult(Return(42)));
|
||||
mock.VoidFromString(NULL);
|
||||
mock.VoidFromString(nullptr);
|
||||
}
|
||||
|
||||
#if GTEST_HAS_EXCEPTIONS
|
||||
@@ -409,7 +414,7 @@ TEST(LinkTest, TestThrow) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Throw(42));
|
||||
EXPECT_THROW(mock.VoidFromString(NULL), int);
|
||||
EXPECT_THROW(mock.VoidFromString(nullptr), int);
|
||||
}
|
||||
#endif // GTEST_HAS_EXCEPTIONS
|
||||
|
||||
@@ -432,7 +437,7 @@ TEST(LinkTest, TestActionMacro) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, IntFromString(_)).WillOnce(Return1());
|
||||
mock.IntFromString(NULL);
|
||||
mock.IntFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of actions created using ACTION_P macro.
|
||||
@@ -444,7 +449,7 @@ TEST(LinkTest, TestActionPMacro) {
|
||||
Mock mock;
|
||||
|
||||
EXPECT_CALL(mock, IntFromString(_)).WillOnce(ReturnArgument(42));
|
||||
mock.IntFromString(NULL);
|
||||
mock.IntFromString(nullptr);
|
||||
}
|
||||
|
||||
// Tests the linkage of actions created using ACTION_P2 macro.
|
||||
@@ -592,6 +597,22 @@ TEST(LinkTest, TestMatcherElementsAreArray) {
|
||||
ON_CALL(mock, VoidFromVector(ElementsAreArray(arr))).WillByDefault(Return());
|
||||
}
|
||||
|
||||
// Tests the linkage of the IsSubsetOf matcher.
|
||||
TEST(LinkTest, TestMatcherIsSubsetOf) {
|
||||
Mock mock;
|
||||
char arr[] = {'a', 'b'};
|
||||
|
||||
ON_CALL(mock, VoidFromVector(IsSubsetOf(arr))).WillByDefault(Return());
|
||||
}
|
||||
|
||||
// Tests the linkage of the IsSupersetOf matcher.
|
||||
TEST(LinkTest, TestMatcherIsSupersetOf) {
|
||||
Mock mock;
|
||||
char arr[] = {'a', 'b'};
|
||||
|
||||
ON_CALL(mock, VoidFromVector(IsSupersetOf(arr))).WillByDefault(Return());
|
||||
}
|
||||
|
||||
// Tests the linkage of the ContainerEq matcher.
|
||||
TEST(LinkTest, TestMatcherContainerEq) {
|
||||
Mock mock;
|
||||
@@ -625,7 +646,7 @@ TEST(LinkTest, TestMatcherProperty) {
|
||||
// Tests the linkage of the ResultOf matcher.
|
||||
TEST(LinkTest, TestMatcherResultOf) {
|
||||
Matcher<char*> m = ResultOf(&InvokeHelper::StaticIntFromString, Eq(1));
|
||||
EXPECT_TRUE(m.Matches(NULL));
|
||||
EXPECT_TRUE(m.Matches(nullptr));
|
||||
}
|
||||
|
||||
// Tests the linkage of the ResultOf matcher.
|
||||
@@ -639,7 +660,7 @@ TEST(LinkTest, TestMatcherPointee) {
|
||||
// Tests the linkage of the Truly matcher.
|
||||
TEST(LinkTest, TestMatcherTruly) {
|
||||
Matcher<const char*> m = Truly(&InvokeHelper::StaticBoolFromString);
|
||||
EXPECT_TRUE(m.Matches(NULL));
|
||||
EXPECT_TRUE(m.Matches(nullptr));
|
||||
}
|
||||
|
||||
// Tests the linkage of the AllOf matcher.
|
||||
@@ -663,7 +684,7 @@ TEST(LinkTest, TestMatcherNot) {
|
||||
// Tests the linkage of the MatcherCast<T>() function.
|
||||
TEST(LinkTest, TestMatcherCast) {
|
||||
Matcher<const char*> m = MatcherCast<const char*>(_);
|
||||
EXPECT_TRUE(m.Matches(NULL));
|
||||
EXPECT_TRUE(m.Matches(nullptr));
|
||||
}
|
||||
|
||||
#endif // GMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
#endif // GOOGLEMOCK_TEST_GMOCK_LINK_TEST_H_
|
||||
|
||||
Reference in New Issue
Block a user