Skip to content
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

잔여 테스트 케이스 작성 #115

Merged
merged 21 commits into from
Dec 4, 2024
Merged

잔여 테스트 케이스 작성 #115

merged 21 commits into from
Dec 4, 2024

Conversation

Minjae-An
Copy link
Contributor

작업 대상

작업 내용에 열거된 기능들에 대한 단위 테스트 작성

📄 작업 내용

이하 기능들에 대한 단위 테스트 작성

  • 대화 주제 조회
  • 연관 대화 주제 조회
  • 대화 주제 상세 조회
  • JWT 생성, 파싱
  • 스크랩 제목 수정
  • 카카오 소셜 로그인
  • FCM 알림 전송
  • 알림 목록 조회
  • 예정된 알림 전송

📎 레퍼런스

path variable인 topicId(대화 주제 ID) 명세 추가
철저히 외부 서비스와의 상호작용을 위해 정의된 클래스, 테스트 대상에서 제외
- 카카오 소셜 로그인 단위 테스트 작성
- access token refresh, refresh token 불일치 TC 추가
- 하나의 스크랩에 대해 알림을 여러 개 설정할 수 있음
- 이를 제대로 반영하기 위해 기존의 일대일 관계, 다대일로 수정
알림 목록 조회 로직내 변수명 적절히 수정
- 추가 내용
    - 알림 목록 조회 쿼리에 대한 단위 테스트 작성
    - 예정 알림 목록 조회 쿼리에 대한 단위 테스트 작성
- LocalTime 타입 데이터를 DB에서 조회한 후 코드에서 비교 시, DB 시간 타입의 정밀도
  차이로 인해 밀리초 단위 이하에서 비교가 어려운 문제 발생
- 이를 해결하기 위해 시간 비교를 초 단위로 수행하는 보조 비교 로직 구현
일자/시간 데이터를 제공하는 유틸 클래스 구현
- 기존 로직은 LocalDateTime.now()를 통해 송신 일시 결정
- 이 구조는 테스트가 어려운, 블랙 박스에 가까운 구조
- 테스트 가능하도록 TimeProvider를 이용하는 형식으로 변경
@Minjae-An Minjae-An added the 🧪 test 테스트 작성 label Dec 4, 2024
@Minjae-An Minjae-An requested a review from hhyuun December 4, 2024 06:49
@Minjae-An Minjae-An self-assigned this Dec 4, 2024
@Minjae-An Minjae-An linked an issue Dec 4, 2024 that may be closed by this pull request
@Minjae-An Minjae-An merged commit eab3b85 into dev Dec 4, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🧪 test 테스트 작성
Projects
None yet
Development

Successfully merging this pull request may close these issues.

기타 테스트 케이스 작성
1 participant