114#ifndef GOOGLEMOCK_TEST_GMOCK_LINK_TEST_H_
115#define GOOGLEMOCK_TEST_GMOCK_LINK_TEST_H_
119#ifndef GTEST_OS_WINDOWS_MOBILE
135using testing::ContainerEq;
138using testing::DoubleEq;
139using testing::ElementsAre;
140using testing::ElementsAreArray;
141using testing::EndsWith;
144using testing::FloatEq;
147using testing::HasSubstr;
152using testing::IsNull;
153using testing::IsSubsetOf;
154using testing::IsSupersetOf;
158using testing::MatcherCast;
159using testing::NanSensitiveDoubleEq;
160using testing::NanSensitiveFloatEq;
163using testing::NotNull;
164using testing::Pointee;
165using testing::Property;
167using testing::ResultOf;
173using testing::StartsWith;
174using testing::StrCaseEq;
175using testing::StrCaseNe;
179using testing::TypedEq;
184#ifndef GTEST_OS_WINDOWS_MOBILE
188#if GTEST_HAS_EXCEPTIONS
192using testing::ContainsRegex;
193using testing::MatchesRegex;
225 Mock& operator=(
const Mock&) =
delete;
250 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Return());
259 EXPECT_CALL(mock, StringFromString(_)).WillOnce(Return(&
ch));
267 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Return());
276 EXPECT_CALL(mock, IntRefFromString(_)).WillOnce(ReturnRef(n));
285 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Assign(&
ch,
'y'));
294 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(SetArgPointee<0>(
'y'));
305 .WillOnce(SetArrayArgument<0>(&ch2, &ch2 + 1));
309#ifndef GTEST_OS_WINDOWS_MOBILE
315 int saved_errno = errno;
316 EXPECT_CALL(mock, IntFromString(_)).WillOnce(SetErrnoAndReturn(1, -1));
353 EXPECT_CALL(mock, VoidFromFunc(_)).WillOnce(InvokeArgument<0>(&
ch));
379 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(WithoutArgs(Return()));
389 .WillOnce(DoAll(SetArgPointee<0>(
'y'), Return()));
398 ON_CALL(mock, VoidFromString(_)).WillByDefault(Return());
399 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(DoDefault());
407 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(IgnoreResult(Return(42)));
411#if GTEST_HAS_EXCEPTIONS
416 EXPECT_CALL(mock, VoidFromString(_)).WillOnce(Throw(42));
430ACTION(Return1) {
return 1; }
436 EXPECT_CALL(mock, IntFromString(_)).WillOnce(Return1());
442ACTION_P(ReturnArgument, ret_value) {
return ret_value; }
448 EXPECT_CALL(mock, IntFromString(_)).WillOnce(ReturnArgument(42));
454ACTION_P2(ReturnEqualsEitherOf, first, second) {
455 return arg0 == first || arg0 == second;
466 .WillOnce(ReturnEqualsEitherOf(
"one",
"two"));
474 ON_CALL(mock, VoidFromString(_)).WillByDefault(Return());
481 ON_CALL(mock, VoidFromString(A<char*>())).WillByDefault(Return());
489 ON_CALL(mock, VoidFromString(Eq(
p))).WillByDefault(Return());
490 ON_CALL(mock, VoidFromString(
const_cast<char*
>(
"y"))).WillByDefault(Return());
497 ON_CALL(mock, VoidFromFloat(Lt(1.0f))).WillByDefault(Return());
498 ON_CALL(mock, VoidFromFloat(Gt(1.0f))).WillByDefault(Return());
499 ON_CALL(mock, VoidFromFloat(Le(1.0f))).WillByDefault(Return());
500 ON_CALL(mock, VoidFromFloat(Ge(1.0f))).WillByDefault(Return());
501 ON_CALL(mock, VoidFromFloat(Ne(1.0f))).WillByDefault(Return());
508 ON_CALL(mock, VoidFromString(NotNull())).WillByDefault(Return());
515 ON_CALL(mock, VoidFromString(IsNull())).WillByDefault(Return());
523 ON_CALL(mock, VoidFromIntRef(Ref(a))).WillByDefault(Return());
531 ON_CALL(mock, VoidFromIntRef(TypedEq<int&>(a))).WillByDefault(Return());
540 ON_CALL(mock, VoidFromFloat(FloatEq(a))).WillByDefault(Return());
541 ON_CALL(mock, VoidFromDouble(DoubleEq(a))).WillByDefault(Return());
542 ON_CALL(mock, VoidFromFloat(NanSensitiveFloatEq(a))).WillByDefault(Return());
543 ON_CALL(mock, VoidFromDouble(NanSensitiveDoubleEq(a)))
544 .WillByDefault(Return());
551 ON_CALL(mock, VoidFromString(ContainsRegex(
".*"))).WillByDefault(Return());
558 ON_CALL(mock, VoidFromString(MatchesRegex(
".*"))).WillByDefault(Return());
565 ON_CALL(mock, VoidFromString(StartsWith(
"a"))).WillByDefault(Return());
566 ON_CALL(mock, VoidFromString(EndsWith(
"c"))).WillByDefault(Return());
567 ON_CALL(mock, VoidFromString(HasSubstr(
"b"))).WillByDefault(Return());
573 ON_CALL(mock, VoidFromString(StrEq(
"a"))).WillByDefault(Return());
574 ON_CALL(mock, VoidFromString(StrNe(
"a"))).WillByDefault(Return());
575 ON_CALL(mock, VoidFromString(StrCaseEq(
"a"))).WillByDefault(Return());
576 ON_CALL(mock, VoidFromString(StrCaseNe(
"a"))).WillByDefault(Return());
583 ON_CALL(mock, VoidFromVector(ElementsAre(
'a', _))).WillByDefault(Return());
589 char arr[] = {
'a',
'b'};
591 ON_CALL(mock, VoidFromVector(ElementsAreArray(arr))).WillByDefault(Return());
597 char arr[] = {
'a',
'b'};
599 ON_CALL(mock, VoidFromVector(IsSubsetOf(arr))).WillByDefault(Return());
605 char arr[] = {
'a',
'b'};
607 ON_CALL(mock, VoidFromVector(IsSupersetOf(arr))).WillByDefault(Return());
615 ON_CALL(mock, VoidFromVector(ContainerEq(v))).WillByDefault(Return());
Definition gmock_link_test.h:238
FieldHelper(int a_field)
Definition gmock_link_test.h:240
int field_
Definition gmock_link_test.h:242
int field() const
Definition gmock_link_test.h:241
Definition gmock_link_test.h:195
virtual void VoidFromString(char *str)=0
virtual ~Interface()=default
virtual void VoidFromFunc(void(*func)(char *str))=0
virtual int & IntRefFromString(char *str)=0
virtual void VoidFromIntRef(int &n)=0
virtual void VoidFromDouble(double n)=0
virtual char * StringFromString(char *str)=0
virtual int IntFromString(char *str)=0
virtual void VoidFromFloat(float n)=0
virtual void VoidFromVector(const std::vector< int > &v)=0
Definition gmock_link_test.h:228
static int StaticIntFromString(char *)
Definition gmock_link_test.h:234
static void StaticVoidFromString(char *)
Definition gmock_link_test.h:232
void VoidFromVoid()
Definition gmock_link_test.h:231
void VoidFromString(char *)
Definition gmock_link_test.h:233
static void StaticVoidFromVoid()
Definition gmock_link_test.h:230
static bool StaticBoolFromString(const char *)
Definition gmock_link_test.h:235
Definition gmock-nice-strict_test.cc:41
MOCK_METHOD1(IntRefFromString, int &(char *str))
MOCK_METHOD1(StringFromString, char *(char *str))
MOCK_METHOD1(VoidFromFloat, void(float n))
MOCK_METHOD1(VoidFromVector, void(const std::vector< int > &v))
MOCK_METHOD1(VoidFromDouble, void(double n))
MOCK_METHOD1(VoidFromFunc, void(void(*func)(char *str)))
MOCK_METHOD1(VoidFromString, void(char *str))
MOCK_METHOD1(VoidFromIntRef, void(int &n))
MOCK_METHOD1(IntFromString, int(char *str))
Definition gmock-actions.h:717
Definition gmock-internal-utils.h:55
#define ACTION(name)
Definition gmock-actions.h:2238
#define ACTION_P2(name,...)
Definition gmock-actions.h:2266
#define ACTION_P(name,...)
Definition gmock-actions.h:2263
const char * p
Definition gmock-matchers-containers_test.cc:379
char ch
Definition gmock-matchers-containers_test.cc:384
#define EXPECT_CALL(obj, call)
Definition gmock-spec-builders.h:2145
#define ON_CALL(obj, call)
Definition gmock-spec-builders.h:2142
#define LinkTest
Definition gmock_link2_test.cc:36
#define GTEST_DISABLE_MSC_WARNINGS_PUSH_(warnings)
Definition gtest-port.h:360
#define GTEST_DISABLE_MSC_WARNINGS_POP_()
Definition gtest-port.h:361
#define EXPECT_THROW(statement, expected_exception)
Definition gtest.h:1775
#define TEST(test_suite_name, test_name)
Definition gtest.h:2176
#define EXPECT_TRUE(condition)
Definition gtest.h:1807
#define EXPECT_FALSE(condition)
Definition gtest.h:1811
internal::WithArgsAction< typename std::decay< InnerAction >::type > WithoutArgs(InnerAction &&action)
Definition gmock-actions.h:1815
internal::IgnoreResultAction< A > IgnoreResult(const A &an_action)
Definition gmock-actions.h:1979
internal::SetArrayArgumentAction< k, I1, I2 > SetArrayArgument(I1 first, I2 last)
Definition gmock-actions.h:2041
internal::DoAllAction< typename std::decay< Action >::type... > DoAll(Action &&... action)
Definition gmock-actions.h:1783
PolymorphicAction< internal::ReturnVoidAction > Return()
Definition gmock-actions.h:1855
internal::WithArgsAction< typename std::decay< InnerAction >::type, k, ks... > WithArgs(InnerAction &&action)
Definition gmock-actions.h:1806
PolymorphicAction< internal::AssignAction< T1, T2 > > Assign(T1 *ptr, T2 val)
Definition gmock-actions.h:1925
internal::SetArgumentPointeeAction< N, T > SetArgPointee(T value)
Definition gmock-actions.h:1913
PolymorphicAction< internal::SetErrnoAndReturnAction< T > > SetErrnoAndReturn(int errval, T result)
Definition gmock-actions.h:1933
internal::InvokeArgumentAction< index, typename std::decay< Params >::type... > InvokeArgument(Params &&...params)
Definition gmock-more-actions.h:649
internal::InvokeWithoutArgsAction< typename std::decay< FunctionImpl >::type > InvokeWithoutArgs(FunctionImpl function_impl)
Definition gmock-actions.h:1963
internal::WithArgsAction< typename std::decay< InnerAction >::type, k > WithArg(InnerAction &&action)
Definition gmock-actions.h:1795
internal::ReturnRefAction< R > ReturnRef(R &x)
Definition gmock-actions.h:1861
internal::DoDefaultAction DoDefault()
Definition gmock-actions.h:1906
PolymorphicAction< internal::ReturnNullAction > ReturnNull()
Definition gmock-actions.h:1850
std::decay< FunctionImpl >::type Invoke(FunctionImpl &&function_impl)
Definition gmock-actions.h:1948