Skip to content

Commit 8348c48

Browse files
authored
Merge pull request #38 from boostcampwm-snu-2026-1/dev
release: README 테스트·보안 섹션 반영
2 parents c36802d + 7d89900 commit 8348c48

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ TravelMapper는 가고 싶은 장소들을 위시리스트에 미리 저장해
2727
| Backend | Next.js API Routes |
2828
| Database | Supabase PostgreSQL (배포) / SQLite (로컬 개발) |
2929
| Maps | Google Maps Platform (Places, Directions, Routes API) |
30+
| 테스트 | Vitest + Testing Library |
3031
| 배포 | Vercel |
3132

3233
## 개발 관리
@@ -46,3 +47,19 @@ npm run dev
4647
```
4748

4849
Supabase 환경변수 없이 실행하면 자동으로 SQLite(로컬 DB)를 사용합니다.
50+
51+
## 테스트
52+
53+
```bash
54+
npm test # watch 모드
55+
npm run test:run # 1회 실행 (CI)
56+
```
57+
58+
시간/겹침 계산, 입력 검증, 공유·세션 토큰, 비용 분배, 이벤트 검증 등 회귀 위험이 큰 순수 로직을 단위 테스트로 보호합니다.
59+
60+
## 보안
61+
62+
- 스케줄 접근은 로그인·공유 접근 시 발급되는 **서명된 HttpOnly 세션 쿠키**로 인가합니다. 각 `[id]` 엔드포인트는 요청자의 소유권을 검증합니다.
63+
- 공유 링크는 HMAC 서명 + 만료가 포함된 토큰을 사용합니다.
64+
- 입력값(시간·겹침·비밀번호 정책)은 클라이언트와 서버 양쪽에서 검증합니다.
65+

0 commit comments

Comments
 (0)