2011-04-05 3 views
3

AutoFixture에 미리 정의 된 특정 값이 항상있는 클래스의 컬렉션을 만들려면 어떻게해야합니까?AutoFixture에 미리 정의 된 값이 설정된 클래스 목록을 어떻게 만듭니 까?

public class Child 
{ 
    public int ParentId { get; set; } 
    public int ChildId { get; set; } 

    public string ChildName { get; set; } 
    public int ChildValue { get; set; } 
} 

어떻게 무작위 수 항상 다른 모든 속성 동안 같은 부모 ID가 익명 클래스를 보장 않습니다

Fixture.Register<IList<Child>>(() => Fixture.CreateMany<Child>().ToList());   

는 자식 클래스는 다음과 같은이 말? ChildId도 0으로 설정하는 것이 좋습니다. 저장소 값 테스트에서 데이터베이스에 푸시 될 것이므로 ChildId를 0으로 설정하는 것이 좋습니다.

답변

1

시도해 보셨습니까?

fixture.Customize<Child>(c => c.With(x => x.ParentId, 42).With(x => x.ChildId, 0)); 
+0

안녕하세요. 난 실제로 2 체인을하기로 결정했다. 내가 사용하고있는 EF 코드 첫 번째 모델로 Child 클래스 안에 정의 된 Child PK와 Parent FK가 모두 없기 때문에(). 두 개의 Without() 문에서 0을 모두 설정하고 EF를 삽입 한 후 채 웁니다. – jaffa