2016-10-05 2 views
3

이전 버전의 D3에서는 d3.timer.flush()와 같은 타이머를 플러시하여 모든 전환이 완료된 후 D3 구성 요소의 상태를 확인하는 단위 테스트를 수행 할 수있는 곳에서, . D3 버전 4에서는 d3.timerFlush()가 필요하지만, 이것은 모든 전환을 완료하지 못합니다. 첫 번째 전환 만 완료됩니다.D3 버전 4의 단위 테스트 전환

읽기 https://groups.google.com/forum/#!topic/d3-js/BioLtR9ixYE 한 가지 해결책은 테이프와 같은 비동기 테스트 프레임 워크를 사용하는 것이지만, 불행히도 현재 테스트 주자를 변경할 수는 없습니다.

아이디어가 있으십니까?

답변

1

D3에는 전환 지연 또는 지속 시간을 통해 플러시하는 방법이 없습니다. 값을 다양화할 수 있으며 테스트를 위해 값을 0으로 설정할 수 있습니다.

지연 또는 지속 시간이 0이면 테스트에서 d3.timerFlush()를 수행해야하지만 지금은 전체 전환을 완료합니다.