UnityAutoMoqContainer Here is the Link 을 사용하기 시작했으며 특히 container.GetMock() 호출과 관련하여 아래 2 가지 질문이 있습니다.UnityAutoMoqContainer를 통한 의존성 해결
아래의 Assert는 성공할 것으로 예상되지만 예외는 발생합니다.
private UnityAutoMoqContainer container; [SetUp] public void SetUp() { container = new UnityAutoMoqContainer(); } [Test] public void Are_mocks_Same(){ var serviceMock = new Mock<IService>(); var getMock = container.GetMock<IService>(); Assert.AreSame(getMock, serviceMock); }
오류 1 개 테스트 'UnityAutoMoq.Tests.UnityAutoMoqContainerFixture.Are_mocks_Same' 실패 예상 : C에서 UnityAutoMoq.Tests.UnityAutoMoqContainerFixture.Are_mocks_Same()에서와 같은 : \ 사용자 ... ....
그렇다면 "예상 됨"과 "그러나 같음"이 같은 경우에도 여전히 예외가 발생합니다.
내가 볼의 차이는) 전자 해결 (GetMock 난을 해결하기 위해 유니티를 사용하는 새로운 모의하지 않는 의존성이다. 그러나 나는 내 자신을이 예외의 원인으로 설명 할 수 없다.
해결 추상적 인 유형 :
나는 다음과 같이 추상적 인 형식을 해결하기 위해 Moq.Mock를 사용합니다. "System.Web.HttpContextBase"이름 = "종속성의
var mock = container.GetMock<HttpContextBase>();
해결이 실패 유형 = 다음 UnityAutoMoqContainer에 아래의 호출이 예외를 throw 그러나
var httpContextBaseMock = new Mock<HttpContextBase>();
(없음) ". 예외가 발생한 경우 while : 해결하는 동안. 예외는 다음과 같습니다. InvalidOperationException - 유형의 HttpContextBase를 구성 할 수 없습니다. 이 값을 제공하려면 컨테이너를 구성해야합니다.
질문은 왜 용기가 조롱 된 추상적 유형을 반환하는 것을 용이하게하지 못하는 것입니까?