그래서 로컬 캐시 구현을 위해 ScalaTest/ScalaCheck를 사용하여 Scala UnitTest를 만들고 있는데, 이미 본 ID로 이벤트가 들어 오면 완전히 새로운 값을 생성하는 대신 해당 값을 업데이트하는 기능을 테스트해야합니다. 캐시의 항목.ScalaCheck forAll을 사용하여 케이스 클래스의 매개 변수 하나를 설정하고 나머지를 임의로 생성하도록하려면 어떻게해야합니까?
이제 루프의 반복마다 동일한 ID가 생성되도록하는 방법을 확실히 알았습니다. 아래 코드를 참조하십시오.
forAll { arbitraryEvent: ClientFacingExecution =>
val unmatchedEvent = ClientFacingExecutionEnriched(arbitraryFoExec)
val expectedId = unmatchedEvent.clientFacingExecution.id
........................................
........................................
........................................
cacheUnderTest.records should have size 1
}
나머지 일치하지 않는 이벤트가 재생성되는 동안 expectedId가 항상 동일하게 유지되도록하려면 어떻게해야합니까? 내가 수업 ClientFacingExecution의 전체 정의를 알 수 없기 때문에