| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import pytest
- from pydantic_form.translator import SchemaInstanceToFormDataField, SchemaToForm
- @pytest.mark.parametrize('translator', [SchemaInstanceToFormDataField])
- @pytest.mark.parametrize(
- 'scenario_name',
- ['scenario_classes_simple', 'scenario_classes_nested']
- )
- def test_data_translator(request, scenario_name, translator):
- scenario = request.getfixturevalue(scenario_name)
- data = scenario.data_factory()
- schema = scenario.schema(**data)
- form = scenario.wtf_form()
- keys = scenario.keys
- t = translator(schema, form)
- for k in keys:
- t(k)
- assert schema.dict() == form.data
- @pytest.mark.skip
- @pytest.mark.parametrize('translator', [SchemaInstanceToFormDataField])
- @pytest.mark.parametrize(
- 'scenario_name',
- ['scenario_classes_simple', 'scenario_classes_nested']
- )
- def test_error_translator_bad(request, scenario_name, translator):
- scenario = request.getfixturevalue(scenario_name)
- data = scenario.data_factory()
- schema = scenario.schema(**data)
- form = scenario.wtf_form()
- keys = scenario.keys
- t = translator(schema, form)
- for k in keys:
- t(k)
- assert schema.dict() == form.data
- @pytest.mark.parametrize('translator', [SchemaToForm])
- @pytest.mark.parametrize('data_factory_name', ['data_factory', 'bad_data_factory'])
- @pytest.mark.parametrize(
- 'scenario_name',
- ['scenario_classes_simple', 'scenario_classes_nested']
- )
- def test_translator(request, scenario_name, translator, data_factory_name):
- scenario = request.getfixturevalue(scenario_name)
- data = getattr(scenario, data_factory_name)()
- schema = scenario.schema(**data)
- form = scenario.wtf_form()
- keys = scenario.keys
- t = SchemaToForm(schema, form, keys)
- t()
- assert schema.dict() == form.data
|