File: test_render_hidden_errors.py

package info (click to toggle)
bootstrap-flask 2.2.0%2Bds1-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 25,396 kB
  • sloc: python: 2,218; makefile: 24
file content (28 lines) | stat: -rw-r--r-- 971 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from flask import render_template_string
from flask_wtf import FlaskForm
from wtforms import HiddenField, SubmitField
from wtforms.validators import DataRequired


def test_render_hidden_errors(app, client):
    class TestForm(FlaskForm):
        hide = HiddenField('Hide', validators=[DataRequired('Hide field is empty.')])
        submit = SubmitField()

    @app.route('/error', methods=['GET', 'POST'])
    def error():
        form = TestForm()
        if form.validate_on_submit():
            pass
        return render_template_string('''
        {% from 'bootstrap4/form.html' import render_field, render_hidden_errors %}
        <form method="post">
            {{ form.hidden_tag() }}
            {{ render_hidden_errors(form) }}
            {{ render_field(form.submit) }}
        </form>
        ''', form=form)

    response = client.post('/error', follow_redirects=True)
    data = response.get_data(as_text=True)
    assert 'Hide field is empty.' in data