diff --git a/ihatemoney/tests/budget_test.py b/ihatemoney/tests/budget_test.py index 460036dc..0434864c 100644 --- a/ihatemoney/tests/budget_test.py +++ b/ihatemoney/tests/budget_test.py @@ -804,7 +804,8 @@ class BudgetTestCase(IhatemoneyTestCase): self.assertEqual(response.status_code, 200) def test_statistics(self): - self.post_project("raclette") + # Output is checked with the USD sign + self.post_project("raclette", default_currency="USD") # add members self.client.post("/raclette/members/add", data={"name": "zorglub", "weight": 2}) @@ -1447,7 +1448,7 @@ class BudgetTestCase(IhatemoneyTestCase): def test_currency_switch(self): - mock_data = {"USD": 1, "EUR": 0.8, "CAD": 1.2} + mock_data = {"USD": 1, "EUR": 0.8, "CAD": 1.2, CurrencyConverter.no_currency: 1} converter = CurrencyConverter() converter.get_rates = MagicMock(return_value=mock_data) diff --git a/ihatemoney/tests/common/ihatemoney_testcase.py b/ihatemoney/tests/common/ihatemoney_testcase.py index 2e590590..39b2919e 100644 --- a/ihatemoney/tests/common/ihatemoney_testcase.py +++ b/ihatemoney/tests/common/ihatemoney_testcase.py @@ -30,7 +30,7 @@ class BaseTestCase(TestCase): follow_redirects=True, ) - def post_project(self, name, follow_redirects=True): + def post_project(self, name, follow_redirects=True, default_currency="XXX"): """Create a fake project""" # create the project return self.client.post( @@ -40,18 +40,18 @@ class BaseTestCase(TestCase): "id": name, "password": name, "contact_email": f"{name}@notmyidea.org", - "default_currency": "USD", + "default_currency": default_currency, }, follow_redirects=follow_redirects, ) - def create_project(self, name): + def create_project(self, name, default_currency="XXX"): project = models.Project( id=name, name=str(name), password=generate_password_hash(name), contact_email=f"{name}@notmyidea.org", - default_currency="USD", + default_currency=default_currency, ) models.db.session.add(project) models.db.session.commit() diff --git a/ihatemoney/tests/history_test.py b/ihatemoney/tests/history_test.py index 3ffdbcc6..cee3dca6 100644 --- a/ihatemoney/tests/history_test.py +++ b/ihatemoney/tests/history_test.py @@ -25,7 +25,7 @@ class HistoryTestCase(IhatemoneyTestCase): "name": "demo", "contact_email": "demo@notmyidea.org", "password": "demo", - "default_currency": "USD", + "default_currency": "XXX", } if logging_preference != LoggingMode.DISABLED: @@ -78,7 +78,7 @@ class HistoryTestCase(IhatemoneyTestCase): "contact_email": "demo2@notmyidea.org", "password": "123456", "project_history": "y", - "default_currency": "USD", + "default_currency": "USD", # Currency changed from default } resp = self.client.post("/demo/edit", data=new_data, follow_redirects=True) @@ -103,7 +103,7 @@ class HistoryTestCase(IhatemoneyTestCase): resp.data.decode("utf-8").index("Project renamed "), resp.data.decode("utf-8").index("Project private code changed"), ) - self.assertEqual(resp.data.decode("utf-8").count(" -- "), 4) + self.assertEqual(resp.data.decode("utf-8").count(" -- "), 5) self.assertNotIn("127.0.0.1", resp.data.decode("utf-8")) def test_project_privacy_edit(self): @@ -284,7 +284,7 @@ class HistoryTestCase(IhatemoneyTestCase): self.assertIn( "Some entries below contain IP addresses,", resp.data.decode("utf-8") ) - self.assertEqual(resp.data.decode("utf-8").count("127.0.0.1"), 10) + self.assertEqual(resp.data.decode("utf-8").count("127.0.0.1"), 12) self.assertEqual(resp.data.decode("utf-8").count(" -- "), 1) # Generate more operations to confirm additional IP info isn't recorded @@ -292,8 +292,8 @@ class HistoryTestCase(IhatemoneyTestCase): resp = self.client.get("/demo/history") self.assertEqual(resp.status_code, 200) - self.assertEqual(resp.data.decode("utf-8").count("127.0.0.1"), 10) - self.assertEqual(resp.data.decode("utf-8").count(" -- "), 6) + self.assertEqual(resp.data.decode("utf-8").count("127.0.0.1"), 12) + self.assertEqual(resp.data.decode("utf-8").count(" -- "), 7) # Clear IP Data resp = self.client.post("/demo/strip_ip_addresses", follow_redirects=True) @@ -311,7 +311,7 @@ class HistoryTestCase(IhatemoneyTestCase): "Some entries below contain IP addresses,", resp.data.decode("utf-8") ) self.assertEqual(resp.data.decode("utf-8").count("127.0.0.1"), 0) - self.assertEqual(resp.data.decode("utf-8").count(" -- "), 16) + self.assertEqual(resp.data.decode("utf-8").count(" -- "), 19) def test_logs_for_common_actions(self): # adds a member to this project diff --git a/ihatemoney/tests/main_test.py b/ihatemoney/tests/main_test.py index 32f861c8..f8d7d2a8 100644 --- a/ihatemoney/tests/main_test.py +++ b/ihatemoney/tests/main_test.py @@ -240,7 +240,7 @@ class EmailFailureTestCase(IhatemoneyTestCase): class TestCurrencyConverter(unittest.TestCase): converter = CurrencyConverter() - mock_data = {"USD": 1, "EUR": 0.8, "CAD": 1.2} + mock_data = {"USD": 1, "EUR": 0.8, "CAD": 1.2, CurrencyConverter.no_currency: 1} converter.get_rates = MagicMock(return_value=mock_data) def test_only_one_instance(self): @@ -249,7 +249,7 @@ class TestCurrencyConverter(unittest.TestCase): self.assertEqual(one, two) def test_get_currencies(self): - self.assertCountEqual(self.converter.get_currencies(), ["USD", "EUR", "CAD"]) + self.assertCountEqual(self.converter.get_currencies(), ["USD", "EUR", "CAD", CurrencyConverter.no_currency]) def test_exchange_currency(self): result = self.converter.exchange_currency(100, "USD", "EUR")