Projet

Général

Profil

0001-fields-remove-hint-on-block-already-shown-by-its-ele.patch

Thomas Noël, 03 août 2020 12:51

Télécharger (2,57 ko)

Voir les différences:

Subject: [PATCH] fields: remove hint on block, already shown by its elements
 (#45686)

 tests/test_form_pages.py | 8 ++++++--
 wcs/blocks.py            | 1 +
 2 files changed, 7 insertions(+), 2 deletions(-)
tests/test_form_pages.py
8273 8273
    formdef = FormDef()
8274 8274
    formdef.name = 'form title'
8275 8275
    formdef.fields = [
8276
        fields.BlockField(id='1', label='test', type='block:foobar'),
8276
        fields.BlockField(id='1', label='test', type='block:foobar', hint='hintblock'),
8277 8277
    ]
8278 8278
    formdef.store()
8279 8279

  
8280 8280
    app = get_app(pub)
8281 8281
    resp = app.get(formdef.get_url())
8282
    assert resp.text.count('>hintblock<') == 1
8282 8283
    resp.form['f1$element0$f123'] = 'foo'
8283 8284
    resp.form['f1$element0$f234'] = 'bar'
8284 8285
    resp = resp.form.submit('submit')  # -> validation page
......
8574 8575
    formdef.name = 'form title'
8575 8576
    formdef.fields = [
8576 8577
        fields.PageField(id='0', label='1st page', type='page'),
8577
        fields.BlockField(id='1', label='test', type='block:foobar', max_items=3),
8578
        fields.BlockField(id='1', label='test', type='block:foobar', max_items=3, hint='hintblock'),
8578 8579
        fields.PageField(id='2', label='2nd page', type='page'),
8579 8580
    ]
8580 8581
    formdef.store()
......
8582 8583
    app = get_app(pub)
8583 8584
    resp = app.get(formdef.get_url())
8584 8585
    assert resp.text.count('>Test<') == 1
8586
    assert resp.text.count('>hintblock<') == 1
8585 8587
    assert 'Add another' in resp
8586 8588
    resp = resp.form.submit('f1$add_element')
8587 8589
    assert resp.text.count('>Test<') == 2
8590
    assert resp.text.count('>hintblock<') == 2
8588 8591
    resp = resp.form.submit('f1$add_element')
8589 8592
    assert resp.text.count('>Test<') == 3
8593
    assert resp.text.count('>hintblock<') == 3
8590 8594
    assert 'Add another' not in resp
8591 8595

  
8592 8596
    # fill items (1st and 3rd row)
wcs/blocks.py
263 263
            max_items = 1
264 264
        element_kwargs = {'block': self.block, 'render_br': False}
265 265
        element_kwargs.update(kwargs)
266
        kwargs.pop('hint', None)
266 267
        super().__init__(
267 268
            name,
268 269
            value=element_values,
269
-