issues
search
woowacourse-teams
/
2022-ternoko
면담은 찐하게, 예약은 손쉽게! 올인원 면담 예약 서비스 터놓고 💖
https://ternoko.site
44
stars
6
forks
source link
[BE] refactor: TimeMachine 의존성을 분리한다.
#511
Open
dongho108
opened
2 years ago
dongho108
commented
2 years ago
As-is
현재 TimeMachine은 static 메서드로 이루어져있고, 테스트와 프로덕션 모두에서 쓰고있습니다.
To-be
프로덕션과 테스트에서 사용하는 TimeMachine 의존성을 분리합니다.
이론상 설계이긴 하지만, TimeMachine 인터페이스를 두고 구현체로 구분하려고 합니다.
실제 현재시간을 반환하는 구현체
테스트에서 사용할 원하는 시간을 반환하는 구현체
reason
테스트에서 TimeMachine의 값을 바꾼다면 동시에 돌아가던 프로덕션 코드에도 문제가 갈 수 있습니다.
TimeMachine 코드가 변경된다면 프로덕션, 테스트 두 곳의 변경이 일어납니다.
As-is
To-be
reason