Closed seungholee-dev closed 1 year ago
테스트 결과 위와 같은 형식으로 결과가 오지 않고 아래처럼 나옵니다.
startRound 액션을 요청했을 때, 응답이 2개가 오는데 맞는 건가요? 그리고 응답으로 오는 json 필드 중에 currentRound 값이 빈 리스트인데 어떻게 된걸까요???
@Binsk-dev
startRound 액션을 요청했을 때, 응답이 2개가 오는데 맞는 건가요?
네 맞아요! Host는 2개의 응답이 와요. 1개는 요청이 제대로 수행되었다고 알리는 응답이 오는데 이는 Host에게만 보내지는 응답입니다.
나머지 1개는 참여자 모두에게 보내지는 응답으로 현재 본인이 속해 있는 라운드에 대한 정보를 담은 응답입니다.
응답으로 오는 json 필드 중에 currentRound 값이 빈 리스트인데 어떻게 된걸까요???
그러게요??? 전 테스트할 때 겪어보지 못 한 경우라 모르겠어요..
아 아마도 제가 DB인스턴스를 생성할 때, Opinion 테이블에 새로 추가된 publishTime, dropTime 필드가 반영되지 않은 인스턴스를 써서 생긴문제라고 생각 중입니다. 테스트해보고 결과 알려드릴게요
음... 다시 테스트하는데 뭔가 오류도 발생하지 않는데 여전히 빈 리스트가 등장하네요
@Binsk-dev
Round 테이블에서 roundNo가 1인 row의 startTime과 endTime을 임의로 작성하고 요청을 하면 빈 리스트를 돌려주는 상황이 생겼습니다.
_get_currentround 함수에서 현재 진행 중인 라운드를 찾는 query문이 SELECT * FROM \"Round\" WHERE \"battleId\"=\'{battle_id}\' AND \"endTime\" IS NULL AND \"startTime\" IS NOT NULL ORDER BY \"roundNo\" DESC LIMIT 1;
로 작성돼있어요. Round 테이블에서 이 조건을 만족하는 row가 존재하지 않으면 빈 리스트를 돌려주네요.
혹시 이러한 원인일 수 있을 것 같아 올립니다. Round 테이블에서 time 값들 확인해보시겠어요?
오오//! 성공했습니다! 굿~
추가 기능
getCurrentRound
action 추가startRound
호출 시getCurrentRound
자동 호출테스팅 방법
getCurrentRound
아래 형식으로 호출해보기startRound
아래 형식으로 호출해보기테스트 결과
initJoin한 모든 멤버에게 현재 라운드가 전파되는지 확인해주세요.
A. getCurrentRound 호출 시 아래와 같은 결과 값을 받으면 성공입니다. (모든 멤버)
B. startRound 호출 시 두 결과를 받으면 성공입니다. (호스트는 getCurrentRound와 startRound의 결과를 받아야하며 멤버는 현재 getCurrentRound의 결과만 받아야합니다.)