From b410fa9bc8126fa463fb7deb6c1850130a86c441 Mon Sep 17 00:00:00 2001 From: Colin Goutte Date: Sat, 26 Aug 2023 23:42:16 +0200 Subject: [PATCH] Shorly update description --- dev.py | 18 ++++++++++++++++++ utests/test_api.py | 3 +++ 2 files changed, 21 insertions(+) diff --git a/dev.py b/dev.py index a0a8e2d..aeadee1 100644 --- a/dev.py +++ b/dev.py @@ -53,6 +53,24 @@ async def create_movie(payload: schemas.MoviePayload, db: Session = Depends(get_ @app.put("/movies/{id_}") async def update_movie( + id_: str, + payload: schemas.MoviePayload, + db: Session = Depends(get_db), + request: Request = None, +) -> schemas.MovieObject: + try: + movie = crud.get_movie_by_id(db, id_) + except LookupError: + raise HTTPException(status_code=404, detail=f"No movie found with id {id_}") + + crud_params = payload.dict() + movie = crud.update_movie(db, id_, **crud_params) + + return movie + + +@app.patch("/movies/{id_}") +async def patch_movie( id_: str, db: Session = Depends(get_db), request: Request = None ) -> schemas.MovieObject: try: diff --git a/utests/test_api.py b/utests/test_api.py index 7a855c0..768f693 100644 --- a/utests/test_api.py +++ b/utests/test_api.py @@ -86,6 +86,8 @@ class BaseCrud(unittest.TestCase): def test_update_movie_api(self): self.create_payload["genres"] = ["anime"] + + self.create_payload["description"] = legacy_description = "will be deleted" response = client.post("/movies/", json=self.create_payload) movie_id = response.json()["id"] created_movie_path = f"/movies/{movie_id}" @@ -105,6 +107,7 @@ class BaseCrud(unittest.TestCase): response_get = client.get(f"/movies/{movie_id}") assert response_get.json()["title"] == new_name assert response_get.json()["genres"] == new_genres + assert response_get.json()["description"] == "" def test_list_movies(self): response = client.get("/movies/")