문제

이 답변에 대해 인터넷 검색/읽기를 읽는 동안 여기서도 물어볼 것이라고 생각했습니다.

SDK를위한 래퍼 인 수업이 있습니다. 이 클래스는 Iloader 객체를 받아들이고 Iloader 객체를 사용하여 IsMallBusinessInstance 객체로 캐스팅되는 IsbaObject를 만듭니다. 나는 단순히 MOQ를 사용 하여이 행동을 조롱하려고 노력하고 있습니다.

   [TestMethod]
    public void Test_Customer_GetByID()
    {
        var mock = new Mock<ILoader>();

        var sbainst = new Mock<ISbaObjects>();

        mock.Expect(x => x.GetSbaObjects("")).Returns(sbainst);


    }

컴파일러 오류는 다음과 같습니다. 오류 1 'Moq.language.ireturns.returns (Microsoft.businessSolutions.smallbusinessAccounting.loader.isbaobjects)'에 대한 가장 좋은 과부하 메소드 일치.

여기서 무슨 일이 일어나고 있습니까? 나는 isbaobjects의 조롱이 문제없이 반환 될 수있을 것으로 기대했다.

도움이 되었습니까?

해결책

sbinst는 isbaobjects의 인스턴스가 아니기 때문에 sbainst.object를 사용해야합니다. 단지 모의 부분 일뿐입니다.

다른 팁

업데이트, 올바른 코드

[TestMethod]
public void Test_Customer_GetByID()
{
    var mock = new Mock<ILoader>();

    var sbainst = new Mock<ISbaObjects>();

    mock.Expect(x => x.GetSbaObjects("")).Returns(sbainst.Object);


}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top