0001-json-export-DateField-as-YYYY-MM-DD-6927.patch
tests/test_api.py | ||
---|---|---|
5 | 5 |
import hashlib |
6 | 6 |
import urllib |
7 | 7 |
import datetime |
8 |
import time |
|
8 | 9 | |
9 | 10 |
from quixote import cleanup, get_publisher |
10 | 11 |
from wcs.users import User |
... | ... | |
215 | 216 |
formdef.name = 'test' |
216 | 217 |
formdef.fields = [ |
217 | 218 |
fields.StringField(id='0', label='foobar', varname='foobar'), |
218 |
fields.StringField(id='1', label='foobar2'),] |
|
219 |
fields.StringField(id='1', label='foobar2'), |
|
220 |
fields.DateField(id='2', label='foobar3', varname='date'),] |
|
219 | 221 |
formdef.store() |
220 | 222 | |
221 | 223 |
formdata = formdef.data_class()() |
222 |
formdata.data = {'0': 'foo@localhost', '1': 'xxx'} |
|
224 |
date = time.strptime('2014-01-20', '%Y-%m-%d') |
|
225 |
formdata.data = {'0': 'foo@localhost', '1': 'xxx', '2': date} |
|
223 | 226 |
formdata.user_id = user.id |
224 | 227 |
formdata.just_created() |
225 | 228 |
formdata.store() |
... | ... | |
228 | 231 |
assert 'last_update_time' in resp.json |
229 | 232 |
assert resp.json['user']['name'] == user.name |
230 | 233 |
assert resp.json['fields']['foobar'] == 'foo@localhost' |
231 |
assert len(resp.json['fields']) == 1 # foobar2 has no varname, not in json |
|
234 |
assert resp.json['fields']['date'] == '2014-01-20' |
|
235 |
assert len(resp.json['fields']) == 2 # foobar2 has no varname, not in json |
wcs/fields.py | ||
---|---|---|
776 | 776 |
except TypeError: |
777 | 777 |
return value |
778 | 778 | |
779 |
def get_json_value(self, value): |
|
780 |
try: |
|
781 |
return strftime('%Y-%m-%d', value) |
|
782 |
except TypeError: |
|
783 |
return '' |
|
784 | ||
779 | 785 |
register_field_class(DateField) |
780 | 786 | |
781 | 787 | |
782 |
- |