Closed jis-kim closed 1 week ago
이 변경 사항은 질문 생성 API와 관련된 기능을 추가하고, 여러 엔티티에서 ID의 데이터 타입을 문자열로 변경하며, 새로운 파이프와 DTO를 도입하는 등 다양한 수정 사항을 포함합니다. 새로운 QuestionsModule
, QuestionsController
, QuestionsService
, 그리고 관련 리포지토리와 DTO가 추가되었고, ID 검증을 위한 CheckBigIntIdPipe
가 구현되었습니다. 또한, 여러 엔티티에서 ID 속성의 타입이 숫자에서 문자열로 변경되었습니다.
파일 경로 | 변경 요약 |
---|---|
.gitignore |
.env.test 파일을 무시하도록 추가됨. |
biome.json |
린터 설정에 "noConsoleLog": "error" 규칙 추가됨. |
src/app.module.ts |
QuestionsModule 추가 및 JwtAuthGuard 를 포함한 APP_GUARD 설정 추가됨. |
src/common/common.decorator.ts |
ResponseDtoType 함수에 status 매개변수 추가 및 동적 응답 처리 기능 개선됨. |
src/common/common.interface.ts |
SwaggerDocInterface 에 responseStatus 속성 추가됨. |
src/common/custom-typeorm/custom-typeorm.decorator.ts |
CustomEntityRepository 함수에 제네릭 타입 매개변수 추가됨. |
src/common/filters/all-exception.filter.ts |
예외 처리 메소드에서 clientMessage 초기화 방식 변경됨. |
src/common/interceptors/logging.interceptor.ts |
CustomLogger 의 import 경로가 절대 경로로 변경됨. |
src/common/pipes/check-bigint-id.pipe.ts |
CheckBigIntIdPipe 클래스 추가됨. |
src/entities/*.entity.ts |
여러 엔티티의 ID 속성이 숫자에서 문자열로 변경됨. |
src/modules/auth/auth.controller.ts |
NotUserAuth 데코레이터가 추가되어 특정 엔드포인트의 인증 요구 사항이 변경됨. |
src/modules/questions/*.ts |
질문 생성 API와 관련된 새로운 모듈, 컨트롤러, 서비스, DTO 및 리포지토리가 추가됨. |
src/modules/users/*.ts |
UsersRepository 가 UserRepository 로 이름이 변경되고, ID 속성이 숫자에서 문자열로 변경됨. |
test/questions.e2e-spec.ts |
질문 API에 대한 종단 간 테스트가 추가됨. |
test/app.e2e-spec.ts |
AppController 테스트가 스킵되도록 변경됨. |
tsconfig.json |
@router/* 경로 매핑이 제거됨. |
test/jest-e2e.json |
Jest 설정 파일에서 여러 매핑이 수정됨. |
Objective | Addressed | Explanation |
---|---|---|
POST /question API 구현 (#18) |
✅ | |
질문 내용 140자 제한 검증 (#18) | ✅ | |
10개 초과 질문 생성 시 409 에러 처리 (#18) | ✅ | |
ID가 자연수인지 확인하는 pipe 구현 (#20) | ❌ | CheckBigIntIdPipe 가 구현되었으나, 적용된 엔드포인트가 없음. |
🐰 질문을 만들고, ID를 확인해, 🐰 새로운 기능이 추가되었네! 🐰 이제 더 많은 질문, 더 많은 이야기, 🐰 Rabbit의 기쁨이 여기 있네! 🐇✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
제안 : Summary에 나열된 세 개가 개별 PR로 올라오면 어떨까 싶어요. 우리의 작업 기억은 작고 아담하답니다.
@puddingcamp 리뷰 반영
createQuestion
함수 매개변수를 위한 타입 정의 및 적용coderabbitai 리뷰 반영
Summary
string
type으로 변경checkBigintPipe
구현/questions
API 구현Describe your changes
number
->string
으로 수정string
으로 통일하기로 결정.CheckBigIntIdPipe
와 unit test 구현GenerateSwaggerApiDoc
에서 200, 고정으로 response type 생성해주는 것을 201도 대응되도록 수정AllExceptionsFilter
에서 error응답 message 생성하던 부분을 배열(ex - validationPipe에서 생성하는 error 객체)에도 대응되도록 변경console.log
방지 규칙 추가.POST /questions
API 구현 및 서비스에 대한 unit test, API test 추가Issue number and link
Summary by CodeRabbit
릴리스 노트
새로운 기능
QuestionsController
및QuestionsService
추가.CreateQuestionDto
및ResponseCreateQuestionDto
도입.버그 수정
string
으로 변경하여 일관성 향상.문서화
테스트