REST API - Event Update API 이벤트 수정 API 수정할 이벤트가 없는경우 404 응답 입력 데이터가 잘못된 경우 400 응답 도메인 로직으로 데이터 검증 실패시 400 응답 권한이 충분하지 않는경우 403 응답 정상적으로 수정 한 경우 응답 200 링크 수정한 이벤트 데이터 테스트 코드 작성 4가지 경우의 테스트 코드를 작성 정상적인 수정 입력값이 비어있는 경우 400 응답 입력데이터가 잘못된 경우 400 응답 존재하지않는 이벤트 수정요청시 404 응답 이벤트 수정 API PUT /api/events/{id} 요청 이벤트가 존재하지 않는경우 404 응답 잘못된 데이터가 넘어온경우 400 응답 비지니스 로직상 맞지 않는경우 400 응답 성공적으로 수정이 완료된 경우 200 응답
REST API -Event list API 이벤트 목록 조회 API 구현 필요한것 Event 목록 Paging 정보와 함께 Query Sort, Paging 여부 확인 Event -> EventResource로 변환하여 받기 각 EventResource 마다 Self 존재 여부 확인 링크 정보 확인 self profile 문서화 테스트 코드 작성 이벤트 데이터 30개 중 10개씩 2번 페이지를 조회하는 테스트 코드 테스트 코드를 하나하나 살펴보자. 이벤트 데이터 30개 생성 페이징 이전에 테스트 데이터가 필요하기때문에 30개의 테스트 데이터를 생성한다. 2페이지에 해당하는 이벤트 목록을 요청 GET /api/events?page=1&size=10&sort=name,DESC로 요청을 보낸다. 페이징과 관..
REST API - Spring - REST DOCS API Index 생성하기 Index 생성하기 API 의 진입점을 통해 리소스를 제공. API의 진입점이 필요하다. GET /api 요청시 _links 에 api 리소스에 대한 링크들을 제공한다. IndexController 에 대한 TEST 코드 작성 IndexController 작성 rel: events로 event 목록 api 에 대한 링크르 제공하도록 구현 테스트 결과 _links.events 링크가 존재하는것을 확인 가능 에러 발생시 인덱스로 가는 링크 제공 보통의 웹사이트 이용중 에러 발생시 인덱스 페이지로 이동하는 링크 정보를 제공한다. API 에서도 에러 발생시 인덱스로 이동가능한 링크 정보를 제공 해야한다. Errors 객체도 Reso..
REST API - Spring - REST DOCS 테스트 DB 설정 분리하기 애플리케이션 환경과, 테스트 환경의 DB를 분리하기 PostgreSQL Docker 환경에서 PostgreSQL 실행 컨테이명은 rest post 5432 bind password를 pass로 demon 실행 docker run --name rest -p 5432:5432 -e POSTGRES_PASSWORD=pass -d postgres PostgreSQL 가 성공적으로 떳다면 bash로 접근하여 확인 \l: 데이터베이스 목록 확인 \dt: 테이블 목록 확인 docker exec -i -t rest bash su - postgres psql -d postgres psql (11.3 (Debian 11.3-1.pgdg90+1..