Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
b1bb107
chore: 개발 환경 도구설정 추가
iftype Oct 29, 2025
950fb98
docs: Update README.md
iftype Oct 29, 2025
bb2886c
test(validator): 🔴 UtilValidator isConvertorNum 테스트 추가
iftype Oct 29, 2025
9c2ed87
feat(validator): 🟢 UtilValidator.isConvertNum 함수 구현
iftype Oct 29, 2025
6f7f3bd
test(validator): 🔴 UtilValidator isNum 테스트 추가
iftype Oct 29, 2025
c474945
feat(validator): 🟢 UtilValidator.isNum 추가
iftype Oct 29, 2025
77dd7a7
chore: .gitignore 항목 추가
iftype Oct 29, 2025
528bf98
test(validator): 🔴 UtilValidator isPostive 테스트 추가
iftype Oct 29, 2025
a0fa5ba
feat(validator): 🟢 UtilValidator.isPostive 추가
iftype Oct 29, 2025
b50ebbf
refactor(validator): 🟡 객체 리터럴을 Static class 로 전환
iftype Oct 29, 2025
641b30d
test(validator): 🔴 UtilValidator isInteger 테스트 추가
iftype Oct 29, 2025
b35fa5a
feat(validator): 🟢UtilValidator.isInteger 추가
iftype Oct 29, 2025
be465dc
chore(constants): ERROR_MESSAGES 추가
iftype Oct 29, 2025
f2c3109
test(validator): 🔴 LottoStoreValidator validate 테스트 추가
iftype Oct 29, 2025
8d0a504
fix(validator): LottoStore test 테스트 수정
iftype Oct 29, 2025
fb1a312
feat(validator): 🟢LottoStoreValidator validate 추가
iftype Oct 29, 2025
037eafb
chore(errorMessages): 에러메세지 추가
iftype Oct 29, 2025
87711ac
fix(LottoStoreValidator): 에러메세지 상수명 변경에 따른 수정
iftype Oct 29, 2025
028bf0b
test(LottoUtilValidator): 🔴LottoUtilValidator 테스트 추가
iftype Oct 29, 2025
13cbcaa
feat(LottoUtilValidator): 🟢LottoUtilValidator 기능 구현
iftype Oct 29, 2025
3a9a815
test(LottoUtilValidator): 🔴LottoUtilValidator 테스트 추가
iftype Oct 29, 2025
190ea56
feat(LottoUtilValidator): 🟢isNumber 추가
iftype Oct 29, 2025
b33e909
refactor(LottoUtilValidator): 🟡Refactor isNumber method
iftype Oct 29, 2025
ba52ed8
docs(README): 구현할 기능 목록 업데이트
iftype Oct 29, 2025
187b0f5
refactor(errorMessage): 구매 에러메세지 상수 이름 변경
iftype Oct 30, 2025
07340db
test(LottoValidator): 🔴LottoValidator 테스트 추가
iftype Oct 29, 2025
8426216
feat(LottoValidator): 🟢LottoValidator구현
iftype Oct 30, 2025
01c154e
test(Lotto): 🔴Lotto 클래스의 생성 테스트 추가
iftype Oct 30, 2025
9e4f988
test(Lotto): 🟢Lotto 클래스의 유효성 검사 구현
iftype Oct 30, 2025
497de6f
refactor(Lotto): 🟡Lotto 클래스위치변경
iftype Oct 30, 2025
093b423
refactor(lottoSetting): 🟡로또 관련 쓰던 상수 위치변경
iftype Oct 30, 2025
e6310f2
test(Lotto): 🔴LottoFactory 클래스의 생성 테스트 추가
iftype Oct 30, 2025
c8a09bc
feat(LottoFactory): 🟢LottoFactory crate 기능 구현
iftype Oct 30, 2025
8ef3a7c
refactor(LottoFactory): 🟡Random생성 함수 분리 및 반복문 변경
iftype Oct 30, 2025
4c604f2
test(Lotto): 🔴getNumbers 테스트 추가
iftype Oct 30, 2025
3748125
feat(Lotto): 🟢getNumbers 구현
iftype Oct 30, 2025
61589bd
test(AccountBook): 🔴가계부 테스트코드 추가
iftype Oct 30, 2025
bdcadc8
feat(AccountBook):🟢가계부 클래스 구현
iftype Oct 30, 2025
e801030
docs(README): README 구현 한 기능 업데이트
iftype Oct 30, 2025
574491e
프로젝트 설계 변경
iftype Oct 30, 2025
a215d0b
프로젝트 초기화
iftype Oct 30, 2025
04cc7bf
feat(LottoNumber): LottoNumber 클래스 생성 및 테스트 추가
iftype Oct 31, 2025
2979f34
feat(LottoNumberFactory): LottoNumberFactory 구현 및 테스트 추가
iftype Oct 31, 2025
adfd1a9
chore(lottoSetting): LOTTO 설정상수파일 추가
iftype Oct 31, 2025
69e2b2a
feat(Lotto): Lotto 클래스 구현 및 테스트 추가
iftype Oct 31, 2025
b037bd1
feat(LottoFactory): LottoFactory 생성 및 테스트 추가
iftype Oct 31, 2025
6c4f9d6
feat(LottoStore): LottoStore 기능 구현 및 테스트 추가
iftype Oct 31, 2025
d64ec18
feat(LottoPrice): LottoPrice 클래스 구현 및 테스트 추가
iftype Oct 31, 2025
018498a
feat(PurchaseValidator): PurchaseValidator 기능 구현 및 테스트 추가
iftype Oct 31, 2025
9736895
refactor(PurchaseValidator): static 클래스로 변경
iftype Oct 31, 2025
09cfdf0
refactor(errorMessages): 에러 메세지 상수 내용 변경
iftype Oct 31, 2025
4921c28
fix(Lotto): import Path 수정
iftype Oct 31, 2025
3447ad5
feat(Lottos): Lottos 클래스 기능 구현 및 테스트 추가
iftype Oct 31, 2025
0785d71
feat(LottoState): LottoState 클래스 추가
iftype Nov 1, 2025
1fdf8b9
refactor(LottoStore): LottoState추가에 따른 프로퍼티 삭제
iftype Nov 1, 2025
92b1db4
refactor(LottoFacotry): LottoFactory 의존성 주입 추가
iftype Nov 1, 2025
7e79bc4
refactor(pickRandomNumber): 함수이름 변경
iftype Nov 1, 2025
eb7fa7f
refactor(Lotto): Change Array to Set type
iftype Nov 1, 2025
cc19c2a
refactor(LottoFactorry): Strategy 패턴 추가
iftype Nov 1, 2025
c757536
feat(LottoRequestDto): LottoRequestDto 클래스 추가
iftype Nov 1, 2025
a4bf0c1
feat(LottoResponseDto): LottoResponseDto클래스 추가
iftype Nov 1, 2025
f8e28d2
feat(LottoService): LottoService 구현
iftype Nov 1, 2025
eab64f9
feat(LottoController): LottoController 구현
iftype Nov 1, 2025
cdac09e
feat(LottoView): LottoView 구현
iftype Nov 1, 2025
7b78fad
feat(App): 의존성 정리
iftype Nov 1, 2025
28944ba
feat(LottoRepository): LottoRepository 구현
iftype Nov 1, 2025
c0a4f57
refactor(Dto): Dto 파일 이름 변경
iftype Nov 1, 2025
aaa9ff9
feat(Parser): Parser 클래스 추가
iftype Nov 1, 2025
ce74a99
feat: InputBonusNumberValidator 클래스 생성
iftype Nov 2, 2025
1c4b378
feat: InputWinningNumberValidator 클래스 생성
iftype Nov 2, 2025
193ca0b
refactor(PurchaseValidator): 책임 분리
iftype Nov 2, 2025
6bceda9
feat(Dto): 데이터 형식의 DTO추가
iftype Nov 2, 2025
44f8abe
fix(LottoNumber): 오탈자 수정
iftype Nov 2, 2025
2d384c9
refactor(PurchaseValidator): 파일 위치 변경
iftype Nov 2, 2025
fe231d7
feat(WinningNumbersValidator): 당첨 번호의 유효성 검사 추가
iftype Nov 2, 2025
cfa6807
feat(BonusNumberValidator): 보너스 번호의 유효성 클래스를 추가
iftype Nov 2, 2025
dcf40dc
feat(LottoRepository): update 메서드 추가
iftype Nov 2, 2025
1a3c81d
feat(LottoWinningFactory): 당첨번호 및 보너스 번호 생성 기능 추가
iftype Nov 2, 2025
75075a4
fix(BonusNumberValidator): 유효성 검사 에러 수정
iftype Nov 2, 2025
4db02f2
feat(LottoWinningResult): 당첨 결과와 수익률을 반환하는 클래스 생성
iftype Nov 2, 2025
4fa4ca8
refactor(Lottos): Repository의 도입으로 인한 Lottos삭제
iftype Nov 2, 2025
b28ddb9
refactor: 클래스 이름 변경 및 로그 추가
iftype Nov 2, 2025
e0666b1
feat(Purchase): 로또 구매 기능 구현
iftype Nov 2, 2025
7ddde27
refactor(LottoNumber): 로또 범위를 상수로 변경
iftype Nov 2, 2025
36a1aa2
refactor(LottoPrice): 구매 단위를 가지던 클래스를 삭제하고 상수화
iftype Nov 2, 2025
5bf0ce5
feat(PurchaseValidator): 기본 단위보다 커야하는 조건 추가
iftype Nov 2, 2025
63613e0
feat(WinningResult): 로또 결과 기능 구현
iftype Nov 2, 2025
52ec090
fix(LottoFacotry): 전략 삭제에 따른 변수이름 수정
iftype Nov 2, 2025
219acf0
refactor(view): 입력 출력 분리
iftype Nov 2, 2025
423d3a6
refactor: 폴더 이름 복수형으로 변경
iftype Nov 2, 2025
0968cba
chore: 사용안하는 벨리데이터 삭제
iftype Nov 2, 2025
9e46116
test(PurchasValidator): 파일 분리에 따른 테스트 분리
iftype Nov 2, 2025
5333877
test(LottoWinningResult): 테스트 추가
iftype Nov 2, 2025
ea54a6a
test(LottoWinningFactory): 테스트 추가
iftype Nov 2, 2025
0427adf
test(BounusNumberValidator): 보너스넘버 유효성검사 테스트 추가
iftype Nov 2, 2025
0c18037
test(WinningNumberValidator): 당첨번호에 대한 테스트 추가
iftype Nov 2, 2025
09476c0
chore: 에러메세지 수정
iftype Nov 2, 2025
0470352
chore(Service): 프라이빗 프로퍼티로 전환
iftype Nov 2, 2025
be37630
feat(LottoinputView): 입력 공백을 검사하는 메서드 추가
iftype Nov 2, 2025
b65f3bf
chore: 필요 없는 주석 제거
iftype Nov 2, 2025
e31fcda
refactor(LottoNumber): 범위 검증의 책임을 유일하게 갖게함
iftype Nov 3, 2025
71a040e
refactor(Lotto): 수량의 조건을 로또에게 위임
iftype Nov 3, 2025
5cf51c4
refactor(LottoPrice): 구매 금액에 대한 책임을 한 곳으로 모음
iftype Nov 3, 2025
979cdf8
refactor(LottoPrice): 구매 금액에 대한 책임을 한 곳으로 모음
iftype Nov 3, 2025
4d708af
chore(RandomPicker): 파일 위치 변경
iftype Nov 3, 2025
698d375
docs: Update README
iftype Nov 3, 2025
90a6cba
refactor(Lotto): 생성 책임 이동
iftype Nov 3, 2025
734ebea
refactor(services): DB 저장 로직 변경
iftype Nov 3, 2025
00c3cae
chore(LottoRepository): 에러메세지로 분리
iftype Nov 3, 2025
30d12c3
refactor(controller): 메서드 정리
iftype Nov 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
module.exports = {
env: {
browser: true,
node: true,
es2021: true,
jest: true,
},
ignorePatterns: ['package*', '.npmrc', '*.md', '.*', '__tests__'],
extends: ['eslint:recommended', 'airbnb-base', 'prettier'],

parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
},

settings: {
'import/resolver': {
node: {
extensions: ['.js', '.jsx', '.ts', '.tsx'],
},
},
},

rules: {
'no-var': 'error',
'prefer-const': 'error',
'no-param-reassign': ['error', { props: true, ignorePropertyModificationsFor: ['acc', 'e'] }],
'class-methods-use-this': 'off',
'no-console': 'warn',
'no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
'import/no-unresolved': 'off',
'import/extensions': 'off',
'lines-between-class-members': [
'error',
'always',
{
exceptAfterSingleLine: true,
},
],
},
};
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
coverage

node_modules
dist
Expand Down
3 changes: 3 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
package*
.npmrc
*.md
7 changes: 7 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"printWidth": 100,
"semi": true,
"singleQuote": true,
"tabWidth": 2,
"trailingComma": "all"
}
Loading