diff --git a/la_chariotte/order/tests/test_views/test_views_grouped_order.py b/la_chariotte/order/tests/test_views/test_views_grouped_order.py index 8235f02..9344d3c 100644 --- a/la_chariotte/order/tests/test_views/test_views_grouped_order.py +++ b/la_chariotte/order/tests/test_views/test_views_grouped_order.py @@ -1,5 +1,7 @@ # fmt: off +import csv import datetime +from io import StringIO import pytest from django.contrib import auth @@ -659,7 +661,7 @@ class TestGroupedOrderOverview: assert item.get_total_price() == 8 assert "8" in response.content.decode() - def test_user_not_logged_redirect(self, client, other_user): + def test_user_not_logged_gets_redirected(self, client, other_user): """ A user that is not logged cannot see the GroupedOrderOverview. They get redirected to the login view """ @@ -688,7 +690,7 @@ class TestGroupedOrderOverview: ) ) - def test_user_not_orga_redirect(self, client_log, other_user): + def test_user_not_orga_gets_redirected(self, client_log, other_user): """ A user that is not orga cannot see the GroupedOrderOverview. They get a 403 forbidden error @@ -1286,7 +1288,7 @@ class TestGroupedOrderSheetView: class TestExportGroupedOrderEmailAddressesToCSVView: - def test_user_not_logged_redirect(self, client, other_user): + def test_user_not_logged_gets_redirected(self, client, other_user): """ A user that is not logged accesses the email list. They get redirected to the login view """ @@ -1355,7 +1357,7 @@ class TestExportGroupedOrderEmailAddressesToCSVView: class TestExportGroupedOrderToCSVView: - def test_user_not_logged_redirect(self, client, other_user): + def test_user_not_logged_gets_redirected(self, client, other_user): """ A user that is not logged accesses the csv view. They get redirected to the login view """ @@ -1417,16 +1419,22 @@ class TestExportGroupedOrderToCSVView: ) response = client_log.get(csv_view_url) assert response.status_code == 200 - assert order.author.first_name in response.content.decode() - assert str(order.ordered_items.first().nb) in response.content.decode() - assert order.ordered_items.first().item.name in response.content.decode() - assert ( - str(order.ordered_items.first().item.price).replace(".", ",") - in response.content.decode() - ) - assert ( - str(order.ordered_items.first().item.ordered_nb) - in response.content.decode() - ) - assert order.author.email in response.content.decode() - assert order.author.phone in response.content.decode() + + content = response.content.decode("utf-8") + csv_reader = csv.reader(StringIO(content)) + body = list(csv_reader) + assert body == [ + [ + "", + "test item", + "test item 2", + "Prix de la commande", + "Mail", + "Téléphone", + ], + ["Prix unitaire TTC (€)", "2,00", "9,00"], + ["bob alescargot", "1", "0", "2,00", "bob2@escargot.fr", "'000"], + ["bobby alescargot", "0", "1", "9,00", "bob3@escargot.fr", "'000"], + ["bob lescargot", "3", "2", "24,00", "bob@escargot.fr", "'000"], + ["TOTAL", "4", "3", "35,00"], + ] diff --git a/la_chariotte/order/views/grouped_order.py b/la_chariotte/order/views/grouped_order.py index b348204..8104fff 100644 --- a/la_chariotte/order/views/grouped_order.py +++ b/la_chariotte/order/views/grouped_order.py @@ -328,7 +328,7 @@ class ExportGroupedOrderToCSVView(GroupedOrderExportView): row.append("Téléphone") writer.writerow(row) - row = ["Prix unitaire (€)"] + row = ["Prix unitaire TTC (€)"] for item in context["items"]: row.append(str(item.price).replace(".", ",")) writer.writerow(row)