Добавлена обработка не строковых параметров для функции-фильтра cut

master
ebeveyn 7063d404a4
işleme db88a7bbff

@ -3,7 +3,9 @@ def cut(instr: str, field_num: int = 0, delimiter: str = "-") -> str:
Разделить входную строку `instr` разделительем `delimiter`
и вернуть поле `field_num`.
"""
parts = instr.split(delimiter)
if instr is None:
return ""
parts = str(instr).split(delimiter)
if field_num < len(parts):
return parts[field_num]
else:

@ -1,6 +1,10 @@
import pytest
import calculate.templates.template_filters as filters
class TestObj:
def __str__(self):
return "TestObj_value"
@pytest.mark.parametrize('case',
[
{
@ -9,6 +13,18 @@ import calculate.templates.template_filters as filters
"params": (),
"result": ""
},
{
"name": "none value",
"data": None,
"params": (),
"result": ""
},
{
"name": "obj value",
"data": TestObj(),
"params": (),
"result": "TestObj_value"
},
{
"name": "default",
"data": "123",

Yükleniyor…
İptal
Kaydet