fields: ignore invalid date values (#40771)
This commit is contained in:
parent
e956f92a8a
commit
18ace95181
|
@ -5658,13 +5658,6 @@ def test_backoffice_cards_import_data_from_csv(pub, studio):
|
|||
resp = resp.forms[0].submit()
|
||||
assert 'CSV file contains less columns than card fields.' in resp.text
|
||||
|
||||
resp.forms[0]['file'] = Upload('test.csv',
|
||||
b'Table,Map,Test,Boolean,List,Date,File,Email,Long,List2\n'
|
||||
b'x,map,data1,Yes,item1,invalid,,test@localhost,plop,1',
|
||||
'text/csv')
|
||||
resp = resp.forms[0].submit()
|
||||
assert 'time data \'invalid\' does not match format' in resp.text
|
||||
|
||||
data = [b'Table,Map,Test,Boolean,List,Date,File,Email,Long,List2']
|
||||
for i in range(1, 150):
|
||||
data.append(b'table,48.81;2.37,data%d,%s,item%d,2020-01-%02d,filename-%d,test@localhost,plop,1' % (
|
||||
|
|
|
@ -553,5 +553,4 @@ def test_date():
|
|||
assert fields.DateField().convert_value_from_str('2015-01-04') is not None
|
||||
assert fields.DateField().convert_value_from_str('04/01/2015') is not None
|
||||
assert fields.DateField().convert_value_from_str('') is None
|
||||
with pytest.raises(ValueError, match="does not match format"):
|
||||
fields.DateField().convert_value_from_str('not a date')
|
||||
assert fields.DateField().convert_value_from_str('not a date') is None
|
||||
|
|
|
@ -1243,7 +1243,10 @@ class DateField(WidgetField):
|
|||
def convert_value_from_str(self, value):
|
||||
if not value:
|
||||
return None
|
||||
return get_as_datetime(value).timetuple()
|
||||
try:
|
||||
return get_as_datetime(value).timetuple()
|
||||
except ValueError:
|
||||
return None
|
||||
|
||||
def convert_value_to_str(self, value):
|
||||
if value is None:
|
||||
|
|
Loading…
Reference in New Issue