2012-05-14 5 views
1

단위 테스트를 위해 ImageSource 모의를 만들고 싶습니다. ImageSource에는 내부 생성자가 있으므로 모의 객체를 만들거나 상속 된 클래스를 만들 수 없습니다. 브러쉬에 대해서는 여기에서 설명하지만 ImageSource에도 적합합니다. How do I implement a custom Brush in WPF?Moq로 이미지 소스 조롱

해결 방법이 있습니까?

+0

ImageSource의 조롱 된 인스턴스입니다. 작성한 클래스 나 프레임 워크 클래스에 제공해야합니까? – Gilles

+0

오히려 프레임 워크 클래스. 그게 달라 지니? – 0xddr

답변

2

상황을 올바르게 이해하면 공용 생성자가없는 봉인 된 클래스의 모의 객체를 만들고 싶습니다.

Moq에서는이 작업을 수행 할 수 없습니다.

해결 방법으로 다른 "조롱/격리"프레임 워크를 사용할 수 있습니다 (예 :이 기능을 지원하는 TypeMock). Microsoft Moles에 행운이 있기를 바랍니다.

한편, 프레임 워크 클래스에 ImageSource의 조롱 된 인스턴스를 삽입하려고하면 뭔가 이 테스트에 잘못 될 수있는 냄새가 날 것입니다.

최소한이 클래스와 ImageSource를 직접 사용할 필요가 없도록 조롱 할 수있는 다른 클래스로 프레임 워크 클래스를 추상화 할 수 있습니다.

+0

저는 Moq를 사용해야합니다. 나는 프레임 워크가 아니라 내 자신의 클래스를 테스트한다. 멀리 ImageSource에서 내 문제를 해결하는 꽤 좋은 방법 것 같다. 감사. – 0xddr