def test_accept_multiple_values_for_None(self): f = forms_xso.Field() f.type_ = None f.var = "foobar" f.values.append(forms_xso.Value()) f.values.append(forms_xso.Value()) f.validate()
def test_unpack(self): t = forms_xso.ValueElement() v = forms_xso.Value() v.value = "foobar" self.assertEqual( v.value, t.unpack(v) )
def test_parse(self): t = forms_xso.ValueElement() v = forms_xso.Value() v.value = "foobar" self.assertEqual( v.value, t.parse(v) )
def test_accept_multiple_values_on_multi_fields(self): types = {"list-multi", "text-multi", "jid-multi"} value = forms_xso.Value() for type_ in types: f = forms_xso.Field() f.type_ = type_ f.var = "foobar" f.values.append(value) f.values.append(value) f.validate()
def test_accept_multiple_values_on_multi_fields(self): types = { forms_xso.FieldType.LIST_MULTI, forms_xso.FieldType.TEXT_MULTI, forms_xso.FieldType.JID_MULTI, } value = forms_xso.Value() for type_ in types: f = forms_xso.Field() f.type_ = type_ f.var = "foobar" f.values.append(value) f.values.append(value) f.validate()
def test_reject_multiple_values_for_non_multi_fields(self): types = set(forms_xso.FieldType) types.discard(forms_xso.FieldType.LIST_MULTI) types.discard(forms_xso.FieldType.TEXT_MULTI) types.discard(forms_xso.FieldType.JID_MULTI) value = forms_xso.Value() for type_ in types: f = forms_xso.Field() f.type_ = type_ f.var = "foobar" f.values.append(value) f.values.append(value) with self.assertRaisesRegex(ValueError, "too many values on non-multi field"): f.validate()
def test_reject_multiple_values_for_non_multi_fields(self): types = set(forms_xso.Field.type_.validator.values) types.discard("text-multi") types.discard("list-multi") types.discard("jid-multi") value = forms_xso.Value() for type_ in types: f = forms_xso.Field() f.type_ = type_ f.var = "foobar" f.values.append(value) f.values.append(value) with self.assertRaisesRegex(ValueError, "too many values on non-multi field"): f.validate()