add more test cases

This commit is contained in:
Mira Weller
2023-11-13 16:46:48 +01:00
parent 981a445b49
commit 1647c82be1
+43 -7
View File
@@ -26,6 +26,7 @@ from django.test import RequestFactory
from django.utils import translation
from pretix import settings
from pretix.base.templatetags.money import money_filter
TEMPLATE_REPLACE_PAGE = Template(
"{% load urlreplace %}{% url_replace request 'page' 3 %}"
@@ -70,32 +71,50 @@ def _render_money_filter(locale, amount, currency):
).strip()
def test_money_filter_de_EUR_happycase():
def test_money_filter_en_USD():
rendered = _render_money_filter("en", Decimal("1000.00"), "USD")
assert rendered == "$1,000.00"
def test_money_filter_de_EUR():
rendered = _render_money_filter("de", Decimal("1.23"), "EUR")
assert rendered == "1,23" + NBSP + ""
def test_money_filter_de_EUR_happycase2():
def test_money_filter_de_EUR_2():
rendered = _render_money_filter("de", Decimal("1000.00"), "EUR")
assert rendered == "1.000,00" + NBSP + ""
def test_money_filter_de_JPY_happycase():
def test_money_filter_de_EUR_hidecurrency():
translation.activate("de")
rendered = money_filter(Decimal("1000.00"), "EUR", hide_currency=True)
assert rendered == "1000,00"
def test_money_filter_en_EUR_hidecurrency():
translation.activate("en")
rendered = money_filter(Decimal("1000.00"), "EUR", hide_currency=True)
assert rendered == "1000.00"
def test_money_filter_de_JPY():
rendered = _render_money_filter("de", Decimal("1023"), "JPY")
assert rendered == "1.023" + NBSP + "¥"
def test_money_filter_de_unknown_currency():
rendered = _render_money_filter("de", Decimal("1234.56"), "FOO")
assert rendered == "1.234,56 FOO"
assert rendered == "1.234,56" + NBSP + "FOO"
def test_money_filter_de_unknown_currency2():
rendered = _render_money_filter("de", Decimal("1234.567"), "FOO")
assert rendered == "FOO 1234,57"
assert rendered == "1.234,57" + NBSP + "FOO"
def test_money_filter_en_JPY_happycase():
def test_money_filter_en_JPY():
rendered = _render_money_filter("en", Decimal("1023"), "JPY")
assert rendered == "¥1,023"
@@ -105,6 +124,23 @@ def test_money_filter_de_JPY_rounding_error():
assert rendered == "JPY 1023,10"
def test_money_filter_de_JPY_rounding_error_hidecurrency():
translation.activate("de")
rendered = money_filter(Decimal("1023.1"), "JPY", hide_currency=True)
assert rendered == "1023,10"
def test_money_filter_de_EUR_rounding_error():
rendered = _render_money_filter("de", Decimal("1.234"), "EUR")
assert rendered == "EUR 1,23" # TODO - should this really be handled differently then JPY?
assert rendered == "1,23" + NBSP + ""
def test_money_filter_pt_PT_EUR():
rendered = _render_money_filter("pt-pt", Decimal("10.00"), "EUR")
assert rendered == "10,00" + NBSP + ""
def test_money_filter_pt_BR_EUR():
rendered = _render_money_filter("pt-br", Decimal("10.00"), "EUR")
assert rendered == "" + NBSP + "10,00"