내 모의 개체에서 메서드 호출에 대한 기대치를 설정할 때 Ienumerable/Array 형식 매개 변수를 확인하는 데 문제가 있습니다. 나는 그것을 그것이 매치로 간주하지 않는 다른 참조와 일치하기 때문에 생각한다. 배열의 내용과 일치시키기를 원할 때가 있습니다. 때로는 순서에 대해서도 신경 쓰지 않습니다.Moq 일치 및 메서드 설정의 배열/IEnumerable 매개 변수
mockDataWriter.Setup(m => m.UpdateFiles(new string[]{"file2.txt","file1.txt"}));
이상적으로는 다음과 같이 작동하는 것이 이상적입니다.이 작업을 수행하는 확장 메서드를 작성할 수 있습니다.
It.Contains(new string[]{"file2.txt","file1.txt"})
It.ContainsInOrder(new string[]{"file2.txt","file1.txt"})
(가) 유일한 방법은 내장
나는이 바로 지금 술어 기능이지만,이 문제는 충분히 일반이 내장되어야 보인다 일치시킬 수 있습니다.
이 방법으로 만들어진이 일치하는 것입니다 이러한 유형 또는 확장 라이브러리를 사용할 수 있습니다. 그렇지 않다면 확장 메소드 등을 작성합니다.덕분에 일부 사용자 지정 매처 (matcher)를 구현했다
이 질문/대답은 전혀 도움이된다면보기 : http://stackoverflow.com/questions/1220013/expectation-on-mock-object-doesnt-seem-to -be-met-moq –