Projet

Général

Profil

0001-formdata-fix-internal-id-filter-with-None-in-values-.patch

Lauréline Guérin, 05 décembre 2022 10:03

Télécharger (2,27 ko)

Voir les différences:

Subject: [PATCH] formdata: fix internal-id filter with None in values list
 (#71988)

 tests/form_pages/test_live.py | 16 ++++++++++++++++
 wcs/backoffice/management.py  |  2 +-
 2 files changed, 17 insertions(+), 1 deletion(-)
tests/form_pages/test_live.py
1775 1775
        logged_error.summary == 'Invalid value "[\'attr1\', \'attr3\', \'attr5\', \'attr7\', \'attr9\']" '
1776 1776
        'for custom view "as-datasource", CardDef "items", field "internal-id", operator "eq"'
1777 1777
    )
1778
    formdef.fields[
1779
        0
1780
    ].value_template = '{{ cards|objects:"items"|filter_by:"bool"|filter_value:True|getlist:"unknown"|list }}'
1781
    formdef.store()
1782
    custom_view.filters['filter-internal-id-operator'] = 'eq'
1783
    custom_view.store()
1784
    pub.loggederror_class.wipe()
1785
    resp = get_app(pub).get('/test/')
1786
    assert resp.form['f1'].options == [('', False, '---')]
1787
    assert pub.loggederror_class.count() == 1
1788
    logged_error = pub.loggederror_class.select()[0]
1789
    assert logged_error.formdef_id == formdef.id
1790
    assert (
1791
        logged_error.summary == 'Invalid value "[None, None, None, None, None]" '
1792
        'for custom view "as-datasource", CardDef "items", field "internal-id", operator "eq"'
1793
    )
1778 1794

  
1779 1795
    # empty list
1780 1796
    formdef.fields[
wcs/backoffice/management.py
1942 1942
                if isinstance(filter_field_value, list):
1943 1943
                    try:
1944 1944
                        [int(v) for v in filter_field_value]
1945
                    except ValueError:
1945
                    except (ValueError, TypeError):
1946 1946
                        _report_error(filter_field_value, filter_field_operator)
1947 1947
                        criterias.append(Nothing())
1948 1948
                        continue
1949
-