Projet

Général

Profil

0001-templatetags-handle-only-integers-with-as_numeral-fi.patch

Valentin Deniaud, 25 octobre 2021 12:02

Télécharger (2,07 ko)

Voir les différences:

Subject: [PATCH] templatetags: handle only integers with as_numeral filter
 (#58022)

 hobo/templatetags/hobo.py  | 1 +
 tests/test_templatetags.py | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)
hobo/templatetags/hobo.py
43 43
    number = parse_float(number)
44 44
    if not number:
45 45
        return ''
46
    number = int(number)
46 47
    try:
47 48
        return num2words(number, lang=get_language())
48 49
    except (TypeError, ValueError, decimal.InvalidOperation):
tests/test_templatetags.py
21 21
    t = Template('{{ number|as_numeral }}')
22 22
    assert t.render(Context({'number': 42})) == 'forty-two'
23 23
    assert t.render(Context({'number': '42'})) == 'forty-two'
24
    assert t.render(Context({'number': 42.15})) == 'forty-two point one five'
25
    assert t.render(Context({'number': '42,15'})) == 'forty-two point one five'
24
    assert t.render(Context({'number': 42.15})) == 'forty-two'
25
    assert t.render(Context({'number': '42,15'})) == 'forty-two'
26 26
    assert t.render(Context({'number': -42})) == 'minus forty-two'
27 27
    assert t.render(Context({'number': 100200})) == 'one hundred thousand, two hundred'
28 28
    assert t.render(Context({'number': '100200'})) == 'one hundred thousand, two hundred'
......
34 34

  
35 35
    settings.LANGUAGE_CODE = 'fr'
36 36
    assert t.render(Context({'number': '42'})) == 'quarante-deux'
37
    assert t.render(Context({'number': 42.15})) == 'quarante-deux virgule un cinq'
37
    assert t.render(Context({'number': 42.15})) == 'quarante-deux'
38 38
    assert t.render(Context({'number': 100200})) == 'cent mille deux cents'
39 39

  
40 40

  
41
-