Feature: 팀 나가기
Scenario: 팀을 나갑니다.
Given agenda가 생성되어 있습니다.
And 팀이 생성되어 있습니다.
And 팀에 참가되어 있습니다.
And 팀을 나갈 agenda_id를 쿼리파라미터로 받습니다.
And 나갈 팀 키를 request body로 받습니다.
When 해당 팀 나가기 요청을 받으면
Then 팀 나가기 요청이 성공하고 204를 반환합니다.
Scenario: agenda가 없을 경우 나가기에 실패합니다.
Given 없는 agenda의 정보를 쿼리파라미터로 받습니다.
When 해당 팀 나가기 요청을 받으면
Then 팀 나가기 요청이 실패하고 404 에러코드를 반환합니다. // AGENDA_NOT_FOUND 404
Scenario: 팀의 식별키가 올바르지 않을 경우 나가기에 실패합니다.
Given agenda가 생성되어 있습니다.
And 없는 팀의 식별 키에 대한 정보를 입력합니다.
When 해당 팀 나가기 요청을 받으면
Then 팀 나가기 요청이 실패하고 404 에러코드를 반환합니다. // TEAM_NOT_FOUND 404
Scenario: 팀 참가자가 아닐 경우 나가기에 실패합니다.
Given agenda가 생성되어 있습니다.
And 팀이 생성되어 있습니다.
And 팀 참가자가 아닙니다.
And 팀을 나갈 agenda_id를 쿼리파라미터로 받습니다.
And 나갈 팀 키를 request body로 받습니다.
When 해당 팀 나가기 요청을 받으면
Then 팀 나가기 요청이 실패하고 403 에러코드를 반환합니다. // TEAM_MEMBER_ONLY 403
Scenario: 진행중인 agenda의 팀 취소에 실패합니다.
Given agenda가 생성되어 있습니다.
And 팀이 생성되어 있습니다.
And 팀이 확정되어 있습니다.
And 호스트가 로그인되어 있습니다.
And agenda가 진행 중 입니다.
And 팀을 취소할 agenda_id를 쿼리파라미터로 받습니다.
And 취소할 팀 키를 request body로 받습니다.
When 해당 팀 취소 요청을 받으면
Then 팀 취소 요청이 실패하고 403 에러코드를 반환합니다. // AGENDA_ALREADY_START 403
Description
팀원일 경우에만 사용 가능
Request
URI
PATCH /agenda/team/drop?agenda_id=agenda_id
Request body
Response
Status code
Response body
GWT
Todo
ETC
No response