Projet

Général

Profil

0001-tests-non-regression-test-30629.patch

Benjamin Dauvergne, 13 février 2019 18:44

Télécharger (1,97 ko)

Voir les différences:

Subject: [PATCH 1/2] tests: non regression test (#30629)

 tests/test_form_pages.py | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)
tests/test_form_pages.py
5744 5744
    assert formdata.data['2'] == 'plop'
5745 5745
    assert formdata.data['3'] == 'a'
5746 5746
    assert formdata.data['3_display'] == 'b'
5747

  
5748

  
5749
def test_field_live_condition_unknown_page_id(pub):
5750
    FormDef.wipe()
5751
    formdef = FormDef()
5752
    formdef.name = 'Foo'
5753
    formdef.fields = [
5754
        fields.PageField(id='0', label='2nd page', type='page'),
5755
        fields.StringField(type='string', id='1', label='Bar', size='40',
5756
                           required=True, varname='bar'),
5757
        fields.StringField(type='string', id='2', label='Foo', size='40',
5758
                           required=True, varname='foo',
5759
                           condition={'type': 'django', 'value': 'form_var_bar == "bye"'}),
5760
        fields.PageField(id='3', label='1st page', type='page'),
5761
        fields.StringField(type='string', id='4', label='Baz', size='40',
5762
                           required=True, varname='baz'),
5763
    ]
5764
    formdef.store()
5765

  
5766
    app = get_app(pub)
5767
    resp = app.get('/foo/')
5768
    assert 'f1' in resp.form.fields
5769
    assert 'f2' in resp.form.fields
5770
    assert resp.html.find('div', {'data-field-id': '1'}).attrs['data-live-source'] == 'true'
5771
    assert resp.html.find('div', {'data-field-id': '2'}).attrs.get('style') == 'display: none'
5772
    resp.form['f1'] = 'hello'
5773
    params = resp.form.submit_fields()
5774
    params = [(key, value if key != 'page_id' else 'eiuiu') for key, value in params]
5775
    app.post('/foo/live', params=params)
5747
-