부분 스텁에 대해서는 this question을 보았습니다. 그러나 내가 알아야 할 것이 무엇인지 말해주지 않았습니다.부분 스텁을 사용하는 동안 Moles의 스텁 클래스 메서드에 할당
는내가 (DataService
를 들어, 내가 SDataService
을 사용하고,의 말을하자) 클래스에 대한 두더지 스텁을 사용하고 있다면, 나는 그래서 true
에 CallBase
속성을 설정할 수 있습니다, 이해는 대한 위임이없는 경우 특정 메소드의 경우 기본 구현의 메소드가 호출됩니다. 좋아,하지만이 경우 특정 메서드에 대리자를 어떻게 할당합니까?
내가 할 수있는 방법이 없다면, 나는 이라고 말하면서 내가 스터브 인 SIDataService
이라고 말합니다. 대리자를 메서드에 쉽게 할당 할 수 있습니다. 그러나 주어진 메소드에 대한 델리게이트가 없다면 DataService
(구현은 IDataService
)에 해당 메소드를 호출하도록 어떻게 호출해야합니까?
감사합니다.
편집 :
나는 방법은 위의 첫 번째 시나리오에서 재정의 할 가상 할 필요가 있음을 이제 참조하십시오. 나는 그것이 전체적으로 많은 의미를 지니지는 않는다고 생각하지만 그것이 그것이 무엇인지입니다.
그래서 두 번째 시나리오에 초점을 맞추어 Behavior
을 만들어야합니까? (왜 두더지가있는 것처럼 스텁을위한 스톰이 없습니까?) 아니면 더 간단한 방법이 있습니까?
코드 샘플을 제공 할 수 있습니까? 인터뷰를 보셨습니까? 메소드가 가상 클래스가 아닌 경우 클래스의 MInterface에 모의 객체를 만들 수 있습니다. – Peter
@peer 처음에는 메소드가 가상 일 필요가 있음을 알지 못했습니다. 이것은 Pex 컨텍스트가 아닙니다. 어쨌든'MInterface '를 사용할 수 있습니까? – Andrew