Projet

Général

Profil

0001-misc-fix-first-last-with-LazyFormData-value-69539.patch

Lauréline Guérin, 26 septembre 2022 10:01

Télécharger (2,03 ko)

Voir les différences:

Subject: [PATCH] misc: fix |first & |last with LazyFormData value (#69539)

 tests/test_templates.py           | 12 ++++++++++++
 wcs/qommon/templatetags/qommon.py |  4 ++--
 2 files changed, 14 insertions(+), 2 deletions(-)
tests/test_templates.py
1279 1279

  
1280 1280

  
1281 1281
def test_first():
1282
    class MockFormData:
1283
        formdef = None
1284

  
1285
    lazy_formdata = LazyFormData(MockFormData())
1286

  
1282 1287
    tmpl = Template('{{ foo|first }}')
1283 1288
    assert tmpl.render({'foo': ['foo']}) == 'foo'
1284 1289
    assert tmpl.render({'foo': 'foo'}) == 'f'
1285 1290
    assert tmpl.render({'foo': ''}) == ''
1286 1291
    assert tmpl.render({'foo': None}) == ''
1292
    assert tmpl.render({'foo': lazy_formdata}) == ''
1287 1293

  
1288 1294

  
1289 1295
def test_last():
1296
    class MockFormData:
1297
        formdef = None
1298

  
1299
    lazy_formdata = LazyFormData(MockFormData())
1300

  
1290 1301
    tmpl = Template('{{ foo|last }}')
1291 1302
    assert tmpl.render({'foo': ['foo']}) == 'foo'
1292 1303
    assert tmpl.render({'foo': 'foo'}) == 'o'
1293 1304
    assert tmpl.render({'foo': ''}) == ''
1294 1305
    assert tmpl.render({'foo': None}) == ''
1306
    assert tmpl.render({'foo': lazy_formdata}) == ''
1295 1307

  
1296 1308

  
1297 1309
def test_convert_as_list():
wcs/qommon/templatetags/qommon.py
959 959
def first(value):
960 960
    try:
961 961
        return defaultfilters.first(value)
962
    except TypeError:
962
    except (TypeError, AttributeError):
963 963
        return ''
964 964

  
965 965

  
......
967 967
def last(value):
968 968
    try:
969 969
        return defaultfilters.last(value)
970
    except TypeError:
970
    except (TypeError, AttributeError):
971 971
        return ''
972 972

  
973 973

  
974
-