misc: fix |duration to take seconds as parameter (#80421)
This commit is contained in:
parent
542b25d7e0
commit
1b36a580ea
|
@ -192,7 +192,7 @@ def duration(value, arg='short'):
|
|||
# value is expected to be a timedelta or a number of seconds
|
||||
if not isinstance(value, datetime.timedelta):
|
||||
try:
|
||||
value = datetime.timedelta(seconds=int(value) * 60)
|
||||
value = datetime.timedelta(seconds=int(value))
|
||||
except (TypeError, ValueError):
|
||||
return ''
|
||||
return utils.seconds2humanduration(int(value.total_seconds()), short=bool(arg != 'long'))
|
||||
|
|
|
@ -337,23 +337,27 @@ def test_sum():
|
|||
|
||||
|
||||
def test_duration():
|
||||
context = Context({'value': 80})
|
||||
context = Context({'value': 120})
|
||||
assert Template('{{ value|duration }}').render(context) == '2min'
|
||||
assert Template('{{ value|duration:"long" }}').render(context) == '2 minutes'
|
||||
|
||||
context = Context({'value': 4800})
|
||||
assert Template('{{ value|duration }}').render(context) == '1h20'
|
||||
assert Template('{{ value|duration:"long" }}').render(context) == '1 hour and 20 minutes'
|
||||
|
||||
context = Context({'value': 40})
|
||||
context = Context({'value': 2400})
|
||||
assert Template('{{ value|duration }}').render(context) == '40min'
|
||||
assert Template('{{ value|duration:"long" }}').render(context) == '40 minutes'
|
||||
|
||||
context = Context({'value': 120})
|
||||
context = Context({'value': 7200})
|
||||
assert Template('{{ value|duration }}').render(context) == '2h'
|
||||
assert Template('{{ value|duration:"long" }}').render(context) == '2 hours'
|
||||
|
||||
context = Context({'value': 1510})
|
||||
context = Context({'value': 90600})
|
||||
assert Template('{{ value|duration }}').render(context) == '1 day and 1h10'
|
||||
assert Template('{{ value|duration:"long" }}').render(context) == '1 day, 1 hour and 10 minutes'
|
||||
|
||||
context = Context({'value': 61})
|
||||
context = Context({'value': 3660})
|
||||
assert Template('{{ value|duration }}').render(context) == '1h01'
|
||||
|
||||
context = Context({'value': 'xx'})
|
||||
|
|
Loading…
Reference in New Issue