-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: 카테고리, 일시 선택 순서 변경 및 리팩터링 (스타카토 생성/수정) #564 #567
base: develop
Are you sure you want to change the base?
Conversation
변수명 변경 및 public 함수 리팩터링
- initMemoryAndVisitedAt() : memoryId에 따라 일시, 추억을 초기화 - setMemoryCandidateByVisitedAt() : 일시에 따라 추억을 설정
- initMemoryAndVisitedAt() : 스타카토에 따라 일시, 추억을 초기화 - setMemoryCandidateByVisitedAt() : 일시에 따라 추억을 설정
@s6m1n |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
빙티!! 리팩터링과 테스트 작성하느라 너무 고생 많으셨습니다..!
리뷰가 너무 늦었네요 ㅠㅠ 죄송합니다...! 🙇♂️🙇♂️🙇♂️🙇♂️🙇♂️
리뷰를 남기다보니 양이 조금 많아졌는 데 보시다가 이해 안되는 부분 있으시면 언제든 편하게 말씀해주세용! 아직 ViewModelTest는 깊게 보지 못해서 좀 더 보다가 코멘트 남길 부분 있으면 더 남겨두겠습니다~
정말정말 고생 많으셨습니다!! 👍 💯
외쳐 갓티!!!!!!!!!❤️🔥
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Show resolved
Hide resolved
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Outdated
Show resolved
Hide resolved
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Outdated
Show resolved
Hide resolved
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Outdated
Show resolved
Hide resolved
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Outdated
Show resolved
Hide resolved
...ava/com/on/staccato/presentation/staccatocreation/viewmodel/StaccatoCreationViewModelTest.kt
Outdated
Show resolved
Hide resolved
...ava/com/on/staccato/presentation/staccatocreation/viewmodel/StaccatoCreationViewModelTest.kt
Outdated
Show resolved
Hide resolved
...ava/com/on/staccato/presentation/staccatocreation/viewmodel/StaccatoCreationViewModelTest.kt
Outdated
Show resolved
Hide resolved
...st/java/com/on/staccato/presentation/staccatoupdate/viewmodel/StaccatoUpdateViewModelTest.kt
Outdated
Show resolved
Hide resolved
...st/java/com/on/staccato/presentation/staccatoupdate/viewmodel/StaccatoUpdateViewModelTest.kt
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
빙티!! 깃헙에서 보는건 오랜만이에요! 🙋
리뷰가 너무너무너무 늦어진 점 정말 깊이 사죄드립니다...
제가 게으른 탓이니 용서하지 말아요 🥲
수정사항 반영과 리팩터링, 테스트 작성까지 정말, 무지 고생하셨어요!! 변경 사항에 맞춰 잘 구현해주신 것 같아요.
그리고 드디어 우리 프로젝트의 안드로이드에도 테스트가 생겼네요! 야호~ 🥳
코드 양을 보니 시간이 꽤 걸렸을텐데 빠르게 잘 구현해주셨어요! 👍
해나가 이미 많은 부분을 꼼꼼히 잘 짚어준 터라, 변경된 양에 비해서 제가 리뷰드릴 부분이 많지는 않았어요! 그래도 왜 20개나 되나요...
지각한 주제에 조금이라도 도움을 드리고자, 머리를 쥐어짜내서 단 코멘트가 대부분이라...!
너무 부담가지지 않고 시간날 때 천천히 읽어주셨으면 좋겠습니당
그저 갓갓,,, 정말 고생많으셨습니다!! 👏 🔥
android/Staccato_AN/app/src/main/java/com/on/staccato/domain/model/MemoryCandidate.kt
Show resolved
Hide resolved
android/Staccato_AN/app/src/main/java/com/on/staccato/domain/model/MemoryCandidate.kt
Show resolved
Hide resolved
android/Staccato_AN/app/src/main/java/com/on/staccato/domain/model/MemoryCandidates.kt
Outdated
Show resolved
Hide resolved
android/Staccato_AN/app/src/main/java/com/on/staccato/domain/model/MemoryCandidates.kt
Outdated
Show resolved
Hide resolved
.../app/src/main/java/com/on/staccato/presentation/staccatocreation/StaccatoCreationActivity.kt
Outdated
Show resolved
Hide resolved
android/Staccato_AN/app/src/test/java/com/on/staccato/domain/model/MemoryCandidateFixture.kt
Outdated
Show resolved
Hide resolved
android/Staccato_AN/app/src/test/java/com/on/staccato/domain/model/MemoryCandidatesTest.kt
Outdated
Show resolved
Hide resolved
android/Staccato_AN/app/src/test/java/com/on/staccato/domain/model/MemoryCandidatesTest.kt
Show resolved
Hide resolved
...c/main/java/com/on/staccato/presentation/staccatoupdate/viewmodel/StaccatoUpdateViewModel.kt
Show resolved
Hide resolved
...st/java/com/on/staccato/presentation/staccatoupdate/viewmodel/StaccatoUpdateViewModelTest.kt
Outdated
Show resolved
Hide resolved
- 불필요한 Assert 제거 - 공통 로직 함수 분리 - ExperimentalCoroutinesApi 어노테이션 이동
⭐️ Issue Number
🚩 Summary
스타카토 생성/수정 화면의 카테고리, 일시 관련 로직에 아래의 작업들을 수행했습니다.
리팩터링 내용 정리
생성 화면
fetchMemoryCandidates()
로 사용자의 모든 추억을 불러와_memoryCandidates
를 업데이트 합니다._memoryCandidates
는 최초 한 번 업데이트된 후엔 변하지 않습니다.memoryCandidates.observe
람다에서initMemoryAndVisitedAt()
를 수행하여 일시, 추억의 초기값을 세팅합니다.LocalDateTime.now()
(선택 가능한 일시 범위는 selectedVisitedAt ±10년)updateMemoryCandidateAndVisitedAt()
MemoryCandidate
의getClosestDateTime()
참고)수정 화면
fetchMemoryCandidates()
)fetchStaccatoBy()
)🛠️ Technical Concerns
스타카토 생성/수정 ViewModel 테스트
MVVM 구조의 뷰모델 내부 LiveData 값을 테스트하기 위해 아래 Rule을 설정하고 getOrAwaitValue를 추가했습니다.
또한 mockK의 coEvery와 coroutines.test의 runTest를 사용했습니다.
🙂 To Reviewer