Source code for fobi.tests.test_dynamic_forms

from django.test import TestCase

from fobi.dynamic import assemble_form_class

from .core import print_info
from .data import TEST_DYNAMIC_FORMS_DEFINITION_DATA
from .helpers import (
    create_form_with_entries,
    get_or_create_admin_user,
    setup_app,
)

__title__ = "fobi.tests.test_dynamic_forms"
__author__ = "Artur Barseghyan <artur.barseghyan@gmail.com>"
__copyright__ = "2014-2022 Artur Barseghyan"
__license__ = "GPL 2.0/LGPL 2.1"
__all__ = ("FobiDynamicFormsTest",)


[docs]class FobiDynamicFormsTest(TestCase): """Tests of django-fob dynamic forms functionality."""
[docs] def setUp(self): """Set up.""" setup_app(fobi_sync_plugins=True) self.user = get_or_create_admin_user() self.form_entry = create_form_with_entries( self.user, data=TEST_DYNAMIC_FORMS_DEFINITION_DATA )
@print_info def test_01_assemble_form_class_and_render_form(self): """Test form class assembling and rendering.""" flow = [] # Getting entry with created plugins # form_entry = create_form_with_entries( # data=TEST_DYNAMIC_FORMS_DEFINITION_DATA # ) flow.append(self.form_entry) form_class = assemble_form_class(self.form_entry) flow.append(form_class) form = form_class() flow.append(form) rendered_form = form.as_p() flow.append(rendered_form) return flow