0001-templatetags-handle-only-integers-with-as_numeral-fi.patch
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 |
- |