tests: test form submission from backoffice (#7052)

This commit is contained in:
Frédéric Péters 2015-04-30 20:38:26 +02:00
parent 343a2d1150
commit 872de4fc5b
1 changed files with 30 additions and 0 deletions

View File

@ -344,3 +344,33 @@ def test_global_statisticspub(pub):
resp.forms[0]['end'] = '2014-12-31'
resp = resp.forms[0].submit()
assert 'Total count: 20' in resp.body
def test_backoffice_submission(pub):
create_user(pub)
create_environment()
formdef = FormDef.get_by_urlname('form-title')
app = login(get_app(pub))
resp = app.get('/backoffice/')
resp = resp.click('Submission', index=0)
assert 'category-misc' in resp.body
resp = resp.click('form title')
assert 'magictoken' in resp.forms[0].fields
resp.forms[0]['f1'] = 'XYZ'
resp.forms[0]['f2'] = 'baz'
resp = resp.forms[0].submit('submit')
assert 'class="form-validation"' in resp.body
resp = resp.forms[0].submit('previous')
assert resp.forms[0]['f1'].value == 'XYZ'
resp = resp.forms[0].submit('submit')
assert 'class="form-validation"' in resp.body
formdata_count = len([x for x in formdef.data_class().select() if not x.is_draft()])
resp = resp.forms[0].submit('submit')
new_formdata_count = len([x for x in formdef.data_class().select() if not x.is_draft()])
assert new_formdata_count == formdata_count+1
formdata = [x for x in formdef.data_class().select() if x.data['1'] == 'XYZ'][0]
assert resp.location == 'http://example.net/backoffice/management/form-title/%s/' % formdata.id
resp = resp.follow()
assert 'The form has been recorded' in resp.body
assert 'XYZ' in resp.body