2009-06-26 5 views
1

저는 NUnit 및 ReSharper를 사용하여 TDD 및 AAA 관점에서 개발 한 RhinoMock 사용자입니다. 저는 일자리를 바꾸고 있습니다. TypeMock을 사용하기 위해 움직이고있는 팀에서 달리기를 원하고 있습니다. 문제가 발생했습니다. mock 객체에서 호출 된 메소드에 대한 인수를 얻으려면 어떻게해야합니까? RhinoMocks를 사용할 때 다음을 사용합니다 :호출 된 Typemock 조롱 된 메서드의 인수 받기

mockObject.GetArgumentsForCallsMadeOn(x => x.MethodIWantToGetParametersFrom(null)) 

어떤 타입의 객체 배열의 IList를 반환합니다. 큰! 나는 가서 원하는 것을 얻고 그것을 어떻게 처리 할까. 이제 TypeMock의 AAA 구문을 사용하여이 작업을 수행하는 방법을 찾지 못했습니다 ... 누구든지이 부분을 좀 밝힐 수 있습니까? 내가 다르게해야 할까?

감사합니다. 귀하의 답변을 기다리겠습니다.

아담

답변

1

당신은 DoInstead()를 사용할 수 있습니다

Isolate.WhenCalled(()=>x.MethodIWantToGetParametersFrom).DoInstead(context => Console.WriteLine(context.Parameters[0].ToString()) 

당신은 PARAM 값을 포함하는 Context 객체를 얻는다.

당신은 또한 당신 자신의 클래스에 같은 이름의 메소드를 구현 할 수 있으며, 스왑은 그 방법에 가짜 객체에서 호출 우수

class MyOwnClass 
    { 
    void MethodIWantTOGetParametersFrom(string s){ 
Console.WriteLine(s); 
} //this is NOT the real method 
    } 

    //in test: 
    MyOwnClass own = new MyOwnClass(); 
    Isolate.Swap.CallsOn(realClassInstance).WithCallsTo(own); //only methods that are implemented in the OwnCalss will be redirected. others will be called on the original instance. 
+0

합니다. 고맙습니다. – Adam