저는 System.Security.Cryptography.RandomNumberGenerator를 사용하여 모의하려고합니다. 불행히도 추상 기본 클래스이며 인터페이스가 아닙니다.RhinoMocks 및 추상 기본 클래스
내가 Rhino.Mocks의 기대 설정하려고 : 나는 ABC에서 던진 예외 얻을
int iterations = 10 ;
byte[] fakeHash = {0, 1, 3, 6};
mocks.Get<HashAlgorithm>().Expect(x => x.ComputeHash(Arg<byte[]>.Is.NotNull))
.Return(fakeHash).Repeat.Times(iterations);
:
시험 방법을 Tests.Utils.FooTest.BarTest 예외가 throw되었습니다. System.ArgumentNullException : 값을 null로 설정할 수 없습니다. 파라미터 명칭 : System.Security.Cryptography.HashAlgorithm.ComputeHash (바이트 [완충액)에서 버퍼
ABC의 인수가 통과 불변 수행된다 널 아니지만 Rhino는 널 (null)을 통과한다. 이는 테스트의 일부로 호출 될 때 설정 (예상/스텁, 이 아님)이 일 때 발생합니다.
어떻게이 문제를 해결할 수 있지만 여전히 메서드가 호출 될 기대와 원하는 가짜 결과를 모두 얻을 수 있습니까? 나는 물론 자신 만의 모의 수업을 할 수는 있지만, 그렇게 할 필요가없는 방법을 찾고 싶다.
감사합니다.