2017-11-02 2 views
0

Hippomocks를 사용하는 동안 byref 인수가 함수에 전달 될 것으로 예상하여 어려움을 겪고 있습니다.HippoMocks : ExpectCall하는 방법 인수가 참조로 전달 되었습니까?

class A 
{ 
public: 
    virtual ~A(); 
    virtual void foo(IBar& callback, const unsigned x); 
}; 

IBar가 인터페이스입니다. 그때 호출하는 함수가

:

TEST_FIXTURE(PigScalesServiceTest, test_something) 
{ 
    A* aMock = mockRepository.Mock<A>(); 
    IBar* callback = mockRepository.Mock<IBar>(); 
    Service service(*amock, *callback); 

    mockRepository.ExpectCall(aMock, A::foo).With(*callback, 1); 
    service.baz(); 
} 

나에게 다음과 같은 오류를 줄 것이다 테스트 실행 :

Function A::foo(???,1) called with mismatching expectation! 
Expections set: 
Expectation for A::foo(???,1) on the mock at 0x0x10969908 was not satisfied. 

감사에게 많은 여기

void Service::baz() 
{a.foo(callback, 1);} 

테스트입니다 !

+0

는 완벽하게 작동한다. 우리는 hippomocks를 사용하여 함수에 참조가 전달되는 호출을 기대하는 코드 예제를 발견하지 못했습니다. – Lee

답변