def test__upload__upload_StringField(client, faker, required, max_length, value, should_be_loaded): user = login(client, faker) study = faker.get_test_study(collaborator=user) field = faker.get_test_field(field_group=study.field_group, field_type=FieldType.get_string(), max_length=max_length, required=required) _do_upload_field(client, faker, study, should_be_loaded, field, value)
def test__upload__form_dynamic_multiple(client, faker): user = login(client, faker) study = faker.get_test_study(collaborator=user) field1 = faker.get_test_field( field_type=FieldType.get_textarea(), field_group=study.field_group, order=1, ) field2 = faker.get_test_field( field_type=FieldType.get_string(), field_group=study.field_group, order=2, ) resp = _get(client, _url(study_id=study.id), user, study) f1 = resp.soup.find(id=field1.field_name) assert f1 assert f1.name == "textarea" f2 = f1.find_next(id=field2.field_name) assert f2 assert f2.name == "input" assert f2["type"] == "text"
def test__dynamic_form__rendering__no_error(client, faker): user = login(client, faker) fg = faker.get_test_field_group(name='Hello') ft = FieldType.get_string() f = faker.get_test_field(field_group=fg, field_type=ft) resp = client.post(url_for('form', field_group_id=fg.id)) assert__redirect(resp, 'ui.index')
def test__dynamic_form__rendering__error(client, faker): user = login(client, faker) fg = faker.get_test_field_group(name='Hello') ft = FieldType.get_string() f = faker.get_test_field(field_group=fg, field_type=ft, required=True) resp = client.post(url_for('form', field_group_id=fg.id)) assert resp.status_code == status.HTTP_200_OK assert__error__required_field(resp.soup, f.field_name)
def test__add_field__maxlength_set(client, faker): field = faker.get_test_field(field_type=FieldType.get_string()) field.max_length = 30 field_actual = build_form(field) length_validators = [ v for v in field_actual.validators if isinstance(v, Length) ] assert len(length_validators) == 1 assert length_validators[0].max == 30
def __init__(self, study): super().__init__() study_number = Field( field_type=FieldType.get_string(), order=0, field_name='study_number', label=study.get_study_number_name(), required=not study.allow_empty_study_number, max_length=50, validation_regex=study.study_number_format, ) self.add_field(study_number) self.add_field_group(study.field_group)
def test__add_field__default_not_set(client, faker): field = faker.get_test_field(field_type=FieldType.get_string()) field_actual = build_form(field) assert field_actual.default is None
def test__add_field__maxlength_not_set(client, faker): field = faker.get_test_field(field_type=FieldType.get_string()) field_actual = build_form(field) assert all(False for v in field_actual.validators if isinstance(v, Length))
def test__field__format_value__string(client, faker): ft = FieldType.get_string() f = faker.get_test_field(field_type=ft) assert f.format_value('Hello') == 'Hello'