From 5178fb48a1956e5a5fe8d83f78ad08805a54c606 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Fri, 19 Jun 2026 07:12:11 +0000 Subject: [PATCH] Add unit tests for new setting --- src/backend/InvenTree/common/tests.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/backend/InvenTree/common/tests.py b/src/backend/InvenTree/common/tests.py index 2bd0c41db8..de876bc64e 100644 --- a/src/backend/InvenTree/common/tests.py +++ b/src/backend/InvenTree/common/tests.py @@ -620,6 +620,26 @@ class GlobalSettingsApiTest(InvenTreeAPITestCase): self.assertEqual(codes, 'AUD,USD,GBP') + def test_report_currency_locale(self): + """Test validation of the REPORT_CURRENCY_LOCALE setting.""" + url = reverse( + 'api-global-setting-detail', kwargs={'key': 'REPORT_CURRENCY_LOCALE'} + ) + + # Valid locale values are accepted + for valid in ['en-us', 'en-gb', 'en-au', 'de-de', 'fr-fr']: + response = self.patch(url, data={'value': valid}, expected_code=200) + self.assertEqual(response.data['value'], valid) + + # Blank value is accepted (means "use system locale") + response = self.patch(url, data={'value': ''}, expected_code=200) + self.assertEqual(response.data['value'], '') + + # Invalid locale values are rejected + for invalid in ['xx-zz', 'not-a-locale']: + response = self.patch(url, data={'value': invalid}, expected_code=400) + self.assertIn('Invalid locale value', str(response.data)) + def test_company_name(self): """Test a settings object lifecycle e2e.""" setting = InvenTreeSetting.get_setting_object('INVENTREE_COMPANY_NAME')