2017-03-01 10 views
1

Fluent Assertions를 사용하고 있으며 내 컬렉션에 딥 객체 그래프 비교를 사용하여 일부 객체가 포함되어 있는지 테스트하고 싶습니다. 저는 평등 회원을 모두 구현하고 싶지 않습니다. 그러나 컬렉션에있는 일부 개체의 등가 포함에 대한 테스트를 수행하는 방법을 찾을 수 없습니다. 예를 들어,이 테스트는 실패하고 통과해야합니다 :Fluent Assertions : 컬렉션에 제공된 객체와 동일한 객체가 포함되어 있는지 확인하십시오.

class Student 
{ 
    public string Name { get; set; } 
} 

[Test] 
public void ShouldContainStudent() 
{ 
    new[] { new Student { Name = "George" }, new Student { Name = "Anna" } }.Should() 
     .Contain(new Student { Name = "Anna" }); 
} 

어떤 우아한 방법이 있습니까? 이 같은?

[Test] 
public void ShouldContainStudent() 
{ 
    new[] { new Student { Name = "George" }, new Student { Name = "Anna" } }.ShouldContainEquivalent(new Student { Name = "Anna" }); 
} 
+0

당신이 할 수있는 오늘, 그러나 기술적으로 그것이 가능하게하는 그 복잡하지 않아야합니다. 대부분의 내부 구조는 이미 충분히 구성 가능합니다. –

답변

0

없음 우아한 방법은,하지만 당신은 술어 사용할 수 있습니다

[Test] 
public void ShouldContainStudent() 
{ 
    new[] { new Student { Name = "George" }, new Student { Name = "Anna" } } 
     .Should().Contain(s => s.Name == "Anna"); 
}