Skip to content

Conversation

@jungseokyoung-cloud
Copy link

No description provided.

1~9 사이의 서로 다른 임의의 숫자 3개를 생성하여 BaseballNumbers를 반환하는 로직 추가
- 두 숫자 리스트를 비교하여 스트라이크와 볼 개수를 계산하는 기능 추가
- 판정 결과를 관리하고 상태를 확인(isThreeStrike, isNothing)하는 GameResult 클래스 추가
test 패키지에 소스 코드가 추가됨에 따라 더 이상 필요 없는 .gitkeep 파일 제거
- 외부에서 숫자를 확인할 수 있도록 getNumbers() 메서드 추가
- Collections.unmodifiableList를 적용하여 반환된 리스트의 수정을 방지(불변성 유지)
- 스트라이크, 볼, 낫싱 시나리오별 단위 테스트 작성
- GameResult 클래스의 상태 확인 메서드(isThreeStrike, isNothing) 검증
- 3스트라이크 판정 및 낫싱(Nothing) 판정 로직 검증
- 다양한 결과값에 대한 경계값 테스트 수행
- 게임 숫자 입력 검증(숫자 여부, 3자리, 중복 체크) 추가
- 재시작/종료 명령어(1 또는 2) 검증 추가
- 예외 발생 시 [ERROR] 프리픽스를 포함한 에러 throw
- 잘못된 형식(문자, 0 포함, 길이 미달/초과, 중복) 입력 시 예외 발생 검증
- 재시작/종료 명령어(1, 2) 외 입력 시 예외 발생 검증
- AssertJ의 assertThatThrownBy를 활용한 에러 메시지 일치 여부 확인
- run() 메서드를 통한 전체 게임 흐름 제어 추가
- 사용자의 재시작(1) 및 종료(2) 선택 기능 구현
- 잘못된 입력 시 에러 메시지 출력 후 재입력을 받는 예외 처리 로직 추가
- 판정 결과(스트라이크, 볼, 낫싱) 포맷팅 및 출력 기능 추가
- 게임 종료 메시지 및 에러 메시지 출력 메서드 구현
- StringBuilder를 사용하여 볼과 스트라이크 개수에 따른 유연한 문자열 생성
- 컴퓨터 난수 생성 및 사용자 입력 반복 루프 구현
- 입력값 유효성 검사 및 예외 발생 시 재입력 유도 로직 추가
- 스트라이크/볼 판정 결과 출력 및 3스트라이크 달성 시 게임 종료 처리
- main 메서드에서 InputView, OutputView, GameController 인스턴스 생성
- 컨트롤러에 뷰 의존성 주입 및 run() 호출을 통한 프로그램 실행 로직 완성
@jungseokyoung-cloud jungseokyoung-cloud changed the title [kaka] rui 사전과제 제출입니다. [kakao] rui 사전과제 제출입니다. Feb 2, 2026
@jungseokyoung-cloud jungseokyoung-cloud changed the title [kakao] rui 사전과제 제출입니다. [kakao] rui 사전과제 제출합니다. Feb 2, 2026
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.

1 participant