406 |
406 |
} in resp_geojson.json['features'][0]['properties']['display_fields']
|
407 |
407 |
|
408 |
408 |
|
|
409 |
def test_backoffice_card_item_file_field_column(pub):
|
|
410 |
pub.user_class.wipe()
|
|
411 |
create_superuser(pub)
|
|
412 |
pub.role_class.wipe()
|
|
413 |
role = pub.role_class(name='test')
|
|
414 |
role.store()
|
|
415 |
|
|
416 |
CardDef.wipe()
|
|
417 |
carddef = CardDef()
|
|
418 |
carddef.name = 'foo'
|
|
419 |
carddef.fields = [
|
|
420 |
fields.FileField(id='1', label='Test', type='file'),
|
|
421 |
]
|
|
422 |
carddef.digest_templates = {'default': 'card {{ form_number }}'}
|
|
423 |
carddef.store()
|
|
424 |
carddef.data_class().wipe()
|
|
425 |
|
|
426 |
upload = PicklableUpload('test.txt', 'text/plain')
|
|
427 |
upload.receive([b'text'])
|
|
428 |
card = carddef.data_class()()
|
|
429 |
card.data = {
|
|
430 |
'1': upload,
|
|
431 |
}
|
|
432 |
card.store()
|
|
433 |
|
|
434 |
FormDef.wipe()
|
|
435 |
formdef = FormDef()
|
|
436 |
formdef.name = 'form-title'
|
|
437 |
formdef.fields = [
|
|
438 |
fields.ItemField(
|
|
439 |
id='4', label='card field', type='item', data_source={'type': 'carddef:foo', 'value': ''}
|
|
440 |
)
|
|
441 |
]
|
|
442 |
formdef.workflow_roles = {'_receiver': role.id}
|
|
443 |
formdef.store()
|
|
444 |
|
|
445 |
data_class = formdef.data_class()
|
|
446 |
data_class.wipe()
|
|
447 |
|
|
448 |
formdata = data_class()
|
|
449 |
formdata.data = {
|
|
450 |
'4': str(card.id),
|
|
451 |
}
|
|
452 |
formdata.data['4_display'] = formdef.fields[-1].store_display_value(formdata.data, '4')
|
|
453 |
formdata.data['4_structured'] = formdef.fields[-1].store_structured_value(formdata.data, '4')
|
|
454 |
formdata.just_created()
|
|
455 |
formdata.jump_status('new')
|
|
456 |
formdata.store()
|
|
457 |
|
|
458 |
app = login(get_app(pub))
|
|
459 |
resp = app.get('/backoffice/management/form-title/')
|
|
460 |
assert resp.text.count('</th>') == 6 # four columns
|
|
461 |
resp.forms['listing-settings']['4$1'].checked = True
|
|
462 |
resp = resp.forms['listing-settings'].submit()
|
|
463 |
assert resp.text.count('</th>') == 7
|
|
464 |
assert resp.text.count('data-link') == 1 # 1 row
|
|
465 |
assert resp.text.count('<td>test.txt</td>') == 1
|
|
466 |
|
|
467 |
resp_csv = resp.click('Export a Spreadsheet')
|
|
468 |
resp_csv.form['format'] = 'csv'
|
|
469 |
resp_csv = resp_csv.form.submit('submit')
|
|
470 |
assert resp_csv.text.splitlines()[1].endswith(',"test.txt"')
|
|
471 |
|
|
472 |
|
409 |
473 |
def test_backoffice_block_columns(pub):
|
410 |
474 |
pub.user_class.wipe()
|
411 |
475 |
create_superuser(pub)
|
412 |
|
-
|