Skip to content

Conversation

@hyunn522
Copy link
Contributor

@hyunn522 hyunn522 commented Dec 8, 2025

📝 요약

🔖 변경 사항

각 도메인의 서비스 로직에 대한 유닛 테스트 코드 추가

✅ 리뷰 요구사항

📸 확인 방법 (선택)



📌 PR 진행 시 이러한 점들을 참고해 주세요

* P1 : 꼭 반영해 주세요 (Request Changes) - 이슈가 발생하거나 취약점이 발견되는 케이스 등
* P2 : 반영을 적극적으로 고려해 주시면 좋을 것 같아요 (Comment)
* P3 : 이런 방법도 있을 것 같아요~ 등의 사소한 의견입니다 (Chore)

Summary by CodeRabbit

릴리스 노트

  • 버그 수정

    • 회원가입 폰번호 필드의 유효성 검사 메시지를 올바른 문구(전화번호 입력 요청)로 수정했습니다.
  • 테스트

    • 서비스 전반에 걸쳐 다수의 단위 테스트를 추가하여 안정성 및 회귀 방지 범위를 확장했습니다.
  • 기타

    • 내부 안정성 및 생성자 관련 처리 등 소규모 개선을 적용했습니다.

✏️ Tip: You can customize this high-level summary in your review settings.

@hyunn522 hyunn522 self-assigned this Dec 8, 2025
@hyunn522 hyunn522 linked an issue Dec 8, 2025 that may be closed by this pull request
@coderabbitai
Copy link

coderabbitai bot commented Dec 8, 2025

Walkthrough

Lombok @NoArgsConstructor 추가, 회원가입 검증 메시지 수정, UserService의 일부 import·예외 처리 변경과 함께 도메인 전반에 걸쳐 다수의 단위 테스트 클래스가 추가되었습니다. 공개 API 시그니처 변경은 거의 없습니다.

Changes

코호트 / 파일(들) 변경 요약
Lombok 어노테이션 추가
src/main/java/app/allstackproject/privideo/domain/admin/dto/ReadAllVideoItem.java, src/main/java/app/allstackproject/privideo/domain/history/dto/HistoryItem.java
import lombok.NoArgsConstructor; 추가 및 클래스에 @NoArgsConstructor 부착 (무인자 생성자 컴파일 타임 생성)
검증 메시지 수정
src/main/java/app/allstackproject/privideo/domain/user/dto/request/PostSignupRequest.java
phoneNumber 필드의 @NotBlank 메시지를 "비밀번호를 입력해주세요." → "전화번호를 입력해주세요."로 수정
UserService 임포트·예외 처리 변경
src/main/java/app/allstackproject/privideo/domain/user/service/UserService.java
일부 정적 임포트 재활성화 및 Member/Repository/OrgRedisRepository/OrganizationRepository/JwtProvider 등 import 추가; signup에서 DataIntegrityViolationException 예외 처리 제거(저장 시 예외 전파 가능)
단위 테스트 추가 — CommentService
src/test/java/app/allstackproject/privideo/domain/comment/CommentServiceTest.java
deleteComment의 미발견/미인가/성공 시나리오를 검증하는 새로운 테스트 클래스 추가
단위 테스트 추가 — HistoryService
src/test/java/app/allstackproject/privideo/domain/history/HistoryServiceTest.java
readMyVideoReport의 조직 미소속, 미작성자, 성공 시나리오 검증 테스트 추가
단위 테스트 추가 — ScrapService
src/test/java/app/allstackproject/privideo/domain/scrap/ScrapServiceTest.java
getUserScraps, addVideoScrap, deleteVideoScrap의 다양한 케이스(유효성, 중복, 경쟁 조건 등) 검증 테스트 추가
단위 테스트 추가 — UserService
src/test/java/app/allstackproject/privideo/domain/user/UserServiceTest.java
signup, login, getUserInfo, updateUserInfo, deleteUser 등 광범위한 성공/오류 경로 테스트 추가
단위 테스트 추가 — VideoService
src/test/java/app/allstackproject/privideo/domain/video/VideoServiceTest.java
세션, 시청/종료, 비디오 생성/인코딩/수정/삭제 등 다수 기능에 대한 포괄적 테스트 추가
단위 테스트 추가 — Admin 관련
src/test/java/app/allstackproject/privideo/domain/admin/{NoticeAdminServiceTest.java, OrgAdminServiceTest.java, StatsAdminServiceTest.java, SuperAdminServiceTest.java, VideoAdminServiceTest.java}
공지/조직/통계/관리자/비디오 관리 관련 다양한 성공/오류 경로 검증 테스트 추가
단위 테스트 추가 — Home / Organization
src/test/java/app/allstackproject/privideo/domain/home/HomeServiceTest.java, src/test/java/app/allstackproject/privideo/domain/organization/OrganizationServiceTest.java
readHome 예외 경로 및 조직 가입 관련 예외 케이스 테스트 추가
테스트 패키지 경로 변경
src/test/java/.../domain/video/GeminiAiServiceTest.java
테스트 클래스 패키지명을 app.allstackproject.privideo.domain.video로 변경 (네임스페이스 조정)

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

  • 주의 필요 영역:
    • src/main/java/.../user/service/UserService.java: DataIntegrityViolationException 처리 제거로 인해 DB 무결성 예외가 서비스 계층으로 전파될 가능성 검토
    • src/test/.../user/UserServiceTest.java 및 src/test/.../video/VideoServiceTest.java: 많은 시나리오와 Mockito 설정(특히 lenient, ArgumentCaptor)의 정확성 검증
    • Lombok @NoArgsConstructor 추가 파일: 직렬화/JPA(또는 프레임워크) 영향 여부 확인
    • 신규 테스트들의 목(mock) 행위와 도메인 상태(권한, 조직 소속, 멤버 상태)가 실제 로직과 일치하는지 점검

Poem

🐰 깡충깡충 코드밭을 달려,
작은 생성자 하나 더 심었네,
메시지 한 줄 살짝 고쳐주고,
테스트 밭엔 꽃처럼 케이스가 피어,
토끼가 웃네 — 잘 돌아가렴! 🥕


📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Free

📥 Commits

Reviewing files that changed from the base of the PR and between d0e3e20 and d229d25.

📒 Files selected for processing (5)
  • src/test/java/app/allstackproject/privideo/domain/admin/NoticeAdminServiceTest.java (1 hunks)
  • src/test/java/app/allstackproject/privideo/domain/admin/OrgAdminServiceTest.java (1 hunks)
  • src/test/java/app/allstackproject/privideo/domain/admin/StatsAdminServiceTest.java (1 hunks)
  • src/test/java/app/allstackproject/privideo/domain/admin/SuperAdminServiceTest.java (1 hunks)
  • src/test/java/app/allstackproject/privideo/domain/admin/VideoAdminServiceTest.java (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (4)
  • src/test/java/app/allstackproject/privideo/domain/admin/OrgAdminServiceTest.java
  • src/test/java/app/allstackproject/privideo/domain/admin/NoticeAdminServiceTest.java
  • src/test/java/app/allstackproject/privideo/domain/admin/SuperAdminServiceTest.java
  • src/test/java/app/allstackproject/privideo/domain/admin/VideoAdminServiceTest.java

Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands and usage tips.

@hyunn522 hyunn522 force-pushed the test/#95/단위-테스트-코드-추가 branch from d0e3e20 to d229d25 Compare December 8, 2025 06:36
@hyunn522 hyunn522 merged commit 1ed46ed into develop Dec 8, 2025
1 check passed
@hyunn522 hyunn522 deleted the test/#95/단위-테스트-코드-추가 branch December 9, 2025 03:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test: 단위 테스트 코드 추가

2 participants