MOQ를 사용하여 메소드 호출을 예상 리턴리스트와 함께 조롱합니다. 내 메서드는 목록을 반환하지만 모의 메서드를 호출 할 때마다 새로운 목록을 만들길 원합니다. 내가 지금까지했던 어떤 : 나는 달성하기 위해 노력하고있어Moock을 사용하여 메소드가 호출 될 때마다 Mock이 새리스트를 리턴하는 방법
List<Correlation> expected = new List<Correlation> { new Correlation() { Code = "SelfError1" }, new Correlation() { Code = "SelfError2" } };
Mock<IRPLValidator> selfMock = new Mock<IRPLValidator>();
selfMock.Setup(f => f.Validate()).Returns(expected);
는 모의 리턴 새 목록 메소드 GET 호출의 때마다 확인하는 것입니다. 나는이 시도했지만 작동하지 않았다 :
이 일을하지 않았다으로selfMock.Setup(f => f.Validate()).Returns(new List<Correlation>{ new Correlation() { Code = "SelfError1" }, new Correlation() { Code = "SelfError2" } });
, 내가 생각하고 어쩌면 콜백 내 질문에 대한 대답하지만 난 내 목록을 다시 초기화에 대한 적절한 예를 찾을 수 없습니다 . 제안 사항이 있으십니까?
매번 새로운 목록이 필요한 이유는 궁금해 할 수 있습니다. 문제는 개체 유형에 따라 목록에서 일부 변경된 여러 개체 유형에 대해 메서드를 호출하고 있다는 것입니다. 모의 메서드는 메서드가 호출 될 때마다 동일한 목록을 제공하기 때문에 항상 메모리의 동일한 개체를 수정하므로 변경 한 내용을 추적 할 수 없습니다.
미리 감사드립니다.
매력처럼 작동했습니다! 많은, 많은 감사합니다. 너무 쉬웠다. –
고마워요. 언젠가는이 클로저의 모든 것을 얻을 수 있습니다. – David
위시 나는 어제 왜 내 목록이 업데이트되지 않았는지 궁금해 한 일찍 이것을 낭비했다. 감사!!! – PmanAce