From 0ce8f2e3fb117c940a8cdc9003996b5809462765 Mon Sep 17 00:00:00 2001 From: Rodia Date: Tue, 11 Feb 2025 20:55:14 -0500 Subject: [PATCH] Fix: Improve response post_order --- routes.py | 7 +++++- tests/test_api_sale_order.py | 42 ++++++++++++++++++------------------ 2 files changed, 27 insertions(+), 22 deletions(-) diff --git a/routes.py b/routes.py index 0e63c2f..354dc3a 100644 --- a/routes.py +++ b/routes.py @@ -26,7 +26,12 @@ def post_order(request, pool): ) order, = Order.create([dict(data)]) - return order.id + response_data = { + 'id': order.id, + 'status': 'success', + 'message': 'Order created successfully', + } + return json.dumps(response_data), 201 @app.route( diff --git a/tests/test_api_sale_order.py b/tests/test_api_sale_order.py index fdbcfc4..a0068b1 100644 --- a/tests/test_api_sale_order.py +++ b/tests/test_api_sale_order.py @@ -75,31 +75,31 @@ class SaleOrderApiRouteTestCase(RouteTestCase): def test_get_sale_orders(self): client = self.client() - order = client.post( - f'/{self.db_name}/sale_order/order', - headers={ - 'Authorization': f'bearer {self.key}', - }, data=json.dumps({ - "party": self.party.id, - "pickup_location": 'on_site', - "lines": [[ - "create", [{ - "product": self.product.id, - "unit": self.unit, - "quantity": "5", - "unitprice": "10" - }] - ]] - })) + order = json.loads( + client.post( + f'/{self.db_name}/sale_order/order', + headers={ + 'Authorization': f'bearer {self.key}', + }, data=json.dumps({ + "party": self.party.id, + "pickup_location": 'on_site', + "lines": [[ + "create", [{ + "product": self.product.id, + "unit": self.unit, + "quantity": "5", + "unitprice": "10" + }] + ]] + })).get_data().decode()) response = client.get( - f'/{self.db_name}/sale_order/order/{order.text}', + f"/{self.db_name}/sale_order/order/{json.loads(order[0])['id']}", headers={ 'Authorization': f'bearer {self.key}', }) - orders = json.loads( - response.get_data().decode()) - self.assertEqual(response.status_code, HTTPStatus.OK) - self.assertEqual(len(orders), 1) + self.assertEqual(len( + json.loads(response.text) + ), 1)