-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Be/feature/#460 ai 통신 socket 통신 서버 측 리팩토링 and 테스트 코드 작성 #465
The head ref may contain hidden characters: "BE/feature/#460-AI-\uD1B5\uC2E0-Socket-\uD1B5\uC2E0-\uC11C\uBC84-\uCE21-\uD14C\uC2A4\uD2B8-\uCF54\uB4DC-\uC791\uC131-and-\uC608\uC678-\uCC98\uB9AC"
Be/feature/#460 ai 통신 socket 통신 서버 측 리팩토링 and 테스트 코드 작성 #465
Conversation
아래 부분을 신경쓰면서 리팩토링함. (새 파일에 새로 작성) - 작은 기능 단위로 단위 테스트를 작성할 수 있도록 - 추후에 ChatGPT등 다른 API로 옮겨가기 쉽도록 - socket 관련 로직과 ai api 관련 로직이 잘 분리되어 있도록
- 외부에서 사용할 함수들을 index.ts에서 export 하도록 표시를 해줘서 내부 함수들을 내부에서 테스트할 수 있게끔 수정함.
- socket 관련 로직에서 service와 gateway를 분리하기로 함.
아래 부분을 신경쓰면서 리팩토링함. (새 파일에 새로 작성) - 작은 기능 단위로 단위 테스트를 작성할 수 있도록 - 추후에 ChatGPT등 다른 API로 옮겨가기 쉽도록 - socket 관련 로직과 ai api 관련 로직이 잘 분리되어 있도록
- 외부에서 사용할 함수들을 index.ts에서 export 하도록 표시를 해줘서 내부 함수들을 내부에서 테스트할 수 있게끔 수정함.
…리' of https://github.com/boostcampwm2023/web09-MagicConch into BE/feature/#460-AI-통신-Socket-통신-서버-측-테스트-코드-작성-and-예외-처리
@kimyu0218 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🗨
- 테스트 문구, input output이 어때야하는지 분명하게 수정해보기
- mocks 파일 구조 유정이랑 통일하기
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 👍 👍 확실히 한곳에 모여 있을 때보다 나눠두니까 이 함수들이 어떤 역할을 하는지 보기 쉬워졌어
reslove #460
변경 사항
고민과 해결 과정
1️⃣ AI 파트 Nest 서버 측 리팩토링
기존 구조
수정한 구조
🎯 리팩토링 목표
2️⃣ AI 파트 Nest 서버 측 테스트 코드 작성
단순히 input, output을 비교하는 수준의 단위 테스트
client가 메세지를 보내면, 일어나야 하는 일들 등의 상호작용 과정에서 일어나야 하는 일들을 테스트
⚠ 완전 e2e 수준의 test를 src/socket/socket.gateway.spec.ts에 추후에 작성할 예정
(선택) 테스트 결과