Skip to content

Conversation

@pleasebelieveme
Copy link
Owner

@pleasebelieveme pleasebelieveme commented Nov 3, 2025

  • 쉼표 기준으로 문자열 분리 및 정수 리스트로 변환
  • 입력 null, 빈 문자열, 쉼표 구분 오류, 숫자가 아닌 값 포함 시 예외 처리

Summary by CodeRabbit

  • 새로운 기능

    • 쉼표로 구분된 당첨 번호를 정수 목록으로 변환하는 파싱 기능이 추가되었습니다. 빈 값, 숫자가 아닌 입력 등에 대한 유효성 검사 및 상세한 에러 메시지를 포함합니다.
  • 테스트

    • 당첨 번호 파싱의 정상 동작 및 다양한 예외 상황에 대한 포괄적인 테스트 스위트가 추가되었습니다.

@pleasebelieveme pleasebelieveme merged commit bebfbe7 into main Nov 3, 2025
@coderabbitai
Copy link

coderabbitai bot commented Nov 3, 2025

Caution

Review failed

The pull request is closed.

개요

복권 당첨 번호를 문자열에서 정수 리스트로 파싱하는 새로운 유틸리티 클래스 WinningNumbersParser를 도입합니다. 쉼표로 구분된 입력을 검증하고, 공백을 제거한 후 정수로 변환하며, 유효하지 않은 형식에 대해 적절한 예외를 발생시킵니다.

변경 사항

변경 그룹 / 파일(들) 변경 요약
파서 구현
src/main/java/lotto/parser/WinningNumbersParser.java
새로운 정적 메서드 parse(String input)을 포함하는 WinningNumbersParser 클래스 추가. null/공백 검증, 쉼표 구분자로 분할, 공백 제거, 정수 변환 기능 제공. 빈 입력, 공백 세그먼트, 비숫자 값에 대해 각각의 한글 오류 메시지와 함께 IllegalArgumentException 또는 NumberFormatException 발생
테스트 스위트
src/test/java/lotto/parser/WinningNumbersParserTest.java
WinningNumbersParser에 대한 포괄적인 테스트 스위트 추가. 정상 케이스(쉼표 구분 파싱), null 입력, 공백/빈 입력, 비숫자 토큰, 공백 세그먼트(연속 쉼표 포함), 후행 쉼표에 대한 5개의 예외 케이스 테스트. JUnit 5 매개변수화 테스트 및 AssertJ 사용

코드 리뷰 노력 추정

🎯 2 (단순) | ⏱️ ~10분

  • 검토 시 주의할 점:
    • 예외 메시지의 일관성: 모든 오류 메시지가 한글로 정확하게 작성되었는지 확인
    • 엣지 케이스: 공백 세그먼트, 후행 쉼표, 연속 쉼표 처리 논리 검증
    • 테스트 커버리지: 모든 예외 경로가 테스트로 검증되었는지 확인

🐰 숫자들을 정렬하는 마법사,
쉼표로 나뉜 당첨번호들,
검증의 손길로 다듬어지고,
깔끔한 리스트로 변신하네!
테스트도 다섯 가지로 빈틈없이,
오류도 한국말로 친절히,
파서님, 당신은 정말 훌륭하다네! 🎰

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch pleasebelieveme

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between bad53ba and 6db568b.

📒 Files selected for processing (2)
  • src/main/java/lotto/parser/WinningNumbersParser.java (1 hunks)
  • src/test/java/lotto/parser/WinningNumbersParserTest.java (1 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

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.

2 participants