-
Notifications
You must be signed in to change notification settings - Fork 2
Description
연결 성공
- 셋업: Mock WebSocket이 open 이벤트 바로 발생하도록 설정
- 액션: client.connect()
- 기대: onOpen 콜백이 호출되고 client.isConnected === true
연결 끊김 시 자동 재연결 (단순)
-셋업: 연결 후 Mock WebSocket에서 close 이벤트 발생(비정상 코드)
-액션: 클라이언트가 자동 재연결 로직을 수행
- 기대: 재연결 시도(start) 호출, reconnectionAttempt 이벤트 발생
수동으로 close() 호출했을 때 재연결 중단
- 셋업: 자동 재연결 도중(또는 재연결 예정)인 상태
-액션: client.close(force=true) 또는 client.disconnect()
-기대: 재연결 타이머 취소, 더 이상 reconnect 시도 없음
잘못된/파싱 불가 메시지 처리
셋업: onmessage로 비정상 문자열 또는 손상된 JSON 전송
액션: client.onmessage callback
기대: 예외가 외부로 터지지 않고, 에러 로깅/콜백 호출(예: onMalformedMessage) 및 처리가 안전하게 이뤄짐
구독/구독취소 (subscribe/unsubscribe) 복원
셋업: 연결 시점에 구독 메시지 전송이 요구되는 경우
액션: 재연결 후 자동으로 이전 구독 상태 복원하는지 확인
기대: 재연결 후 서버에 구독 메시지 재전송
동시성/레이스: connect()를 여러번 호출
셋업: 여러번 connect() 호출(병렬)
액션: connect() 중복 호출
기대: 내부적으로 중복 연결 시도 방지(한 번만 connect 시도), 상태가 일관됨
heartbeat / ping-pong (구현된 경우)
셋업: heartbeat interval 설정
액션: 일정 시간 동안 응답 없음 → 서버에서 ping/pong 이벤트 발생 또는 타임아웃 발생
기대: ping/pong 타임아웃 시 재연결 트리거
작업 우선순위
Sub-issues
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
완료