0002-misc-do-not-crash-inspect-on-invalid-map-values-5756.patch
tests/backoffice_pages/test_form_inspect.py | ||
---|---|---|
667 | 667 |
formdef.fields = [ |
668 | 668 |
fields.MapField(id='1', label='1st field', type='map', varname='map1'), |
669 | 669 |
fields.MapField(id='2', label='2nd field', type='map', varname='map2'), |
670 |
fields.MapField(id='3', label='3rd field', type='map', varname='map3'), |
|
670 | 671 |
] |
671 | 672 |
formdef.workflow_roles = {'_receiver': 1} |
672 | 673 |
formdef.store() |
... | ... | |
676 | 677 |
formdata.data = { |
677 | 678 |
'1': '1.2345;6.789', # valid value |
678 | 679 |
'2': None, # empty value |
680 |
'3': 'XXX;YYY', # invalid value |
|
679 | 681 |
} |
680 | 682 |
formdata.jump_status('new') |
681 | 683 |
formdata.store() |
... | ... | |
688 | 690 |
assert resp.pyquery('[title="form_var_map2"]') |
689 | 691 |
assert not resp.pyquery('[title="form_var_map2_lat"]') |
690 | 692 |
assert not resp.pyquery('[title="form_var_map2_lon"]') |
693 |
assert resp.pyquery('[title="form_var_map3"]') |
|
694 |
assert not resp.pyquery('[title="form_var_map3_lat"]') |
|
695 |
assert not resp.pyquery('[title="form_var_map3_lon"]') |
wcs/variables.py | ||
---|---|---|
1077 | 1077 |
return self._data.get(self._field.id).split(*args, **kwargs) |
1078 | 1078 | |
1079 | 1079 |
def inspect_keys(self): |
1080 |
return ['lat', 'lon'] |
|
1080 |
return ['lat', 'lon'] if self.get_field_var_value() else []
|
|
1081 | 1081 | |
1082 | 1082 | |
1083 | 1083 |
class LazyFieldVarItems(LazyFieldVarStructured): |
1084 |
- |