문제

나는 nunit mocks를 사용하고 있으며 전화를 기대할 것을 명시하고 싶지만 논쟁이 무엇인지 말하지 않고 다음과 같습니다.

mock.ExpectAndReturn("Equals", true, ANY_ARGUMENT);

분명히 any_argument 대신 올바른 구문을 채우십시오.

이것을 할 방법이 있습니까?

인수를 지정하지 않으면 0 인수가 0 인 인수를 예상했지만 1을 받았기 때문에 테스트에 실패합니다.

도움이 되었습니까?

해결책

반사경에서 nunit.mocks.dll의 버전 2.5.2를 살펴보면 원하는 것을 수행하는 방법이 나타나지 않습니다. Nunit은 오픈 소스이므로 한 가지 옵션은 코드를 가져 와서 기능을 추가하는 것입니다.

다른 팁

그렇습니다. Nunit Mocks에는 그러한 기능이 있습니다.

repostandreturn 대신 SetReturnValue를 사용합니다. 첫 번째 함수는 이름을 말하면 입력 객체 및 리턴 객체를 지정합니다. 마지막 함수 특정 함수에 대한 리턴 객체 만 지정합니다.

사용: interfaceMock.SetReturnValue("SomeRetrunFunction", someReturnFunction);

시도 했습니까?

mock.SetReturnValue(true);
mock.Expect("Equals");

모든 것을 받아들이고 테스트에서 매개 변수로 사용하는 새로운 Iresolveconstraint 인스턴스를 구현할 수 있습니다. Nunit은 issert.areequal 대신 올바른 것을 확인하기 위해 assert.areequal을 사용하여 다른 객체와 다른 객체와 다르게 iresolveconstraint의 인스턴스를 다르게 취급합니다.

예를 들어.

mymock.expectandreturn ( "mockedmethod", argument1, new acceptsanythingconstraint ())

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top