Projet

Général

Profil

0001-bo-fields-warning-on-array-fields-affectation-from-s.patch

Nicolas Roche, 23 décembre 2019 19:33

Télécharger (2,12 ko)

Voir les différences:

Subject: [PATCH] bo-fields: warning on array fields affectation from string
 (#38541)

 tests/test_form_pages.py | 42 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
tests/test_form_pages.py
7127 7127

  
7128 7128
    resp = resp.form.submit('button_x2').follow()
7129 7129
    assert '<span class="status">Status2' in resp.text
7130

  
7131
def test_workflow_set_bo_table_field(pub):
7132
    user = create_user(pub)
7133

  
7134
    formdef = create_formdef()
7135
    formdef.fields = [fields.TableField(
7136
        id='0', label='fo table field', type='table', varname='input',
7137
        rows=['row1', 'row2'], columns=['col1', 'col2'])]
7138

  
7139
    wf = Workflow(name='xxx')
7140
    wf.backoffice_fields_formdef = WorkflowBackofficeFieldsFormDef(wf)
7141
    wf.backoffice_fields_formdef.fields = [
7142
        fields.TableField(
7143
            id='bo0', label='bo table field',
7144
            type='table', varname='backoffice_table',
7145
            rows=['row1', 'row2'], columns=['col1', 'col2'])
7146
    ]
7147

  
7148
    st1 = wf.add_status('Status1')
7149
    setbo = SetBackofficeFieldsWorkflowStatusItem()
7150
    setbo.fields = [{'field_id': 'bo0', 'value': '{{ form_var_input }}'}]
7151
    st1.items.append(setbo)
7152
    setbo.parent = st1
7153

  
7154
    wf.store()
7155

  
7156
    formdef.workflow_id = wf.id
7157
    formdef.store()
7158

  
7159
    resp = get_app(pub).get('/test/')
7160

  
7161
    resp.form['f0$c-0-0'] = 'a1'
7162
    resp.form['f0$c-0-1'] = 'a2'
7163
    resp.form['f0$c-1-0'] = 'b1'
7164
    resp.form['f0$c-1-1'] = 'b2'
7165

  
7166
    resp = resp.form.submit('submit')  # -> validation page
7167
    resp = resp.form.submit('submit')  # -> submission       ## here we get 500 on sql (*)
7168
    resp = resp.follow()
7169

  
7170
    assert formdef.data_class().select()[0].data['0'] == [['a1', 'a2'], ['b1', 'b2']]
7171
    assert formdef.data_class().select()[0].data['bo0'] == "[['a1', 'a2'], ['b1', 'b2']]"
7130
-