Fixed "typo": tes_GermanTristateFloat -> test_GermanTristateFloat.
[philipp/winterrodeln/wrpylib.git] / tests / test_wrvalidators.py
index 3620adb3fcac847238cca79c35508ef01736e2e7..e240aef122d6d42828d84a610cea2bfa22609cc5 100644 (file)
@@ -42,7 +42,7 @@ def test_GermanTristateTuple():
     assert v.from_python((True, True)) == u'Teilweise'
 
 
-def tes_GermanTristateFloat():
+def test_GermanTristateFloat():
     v = wrpylib.wrvalidators.GermanTristateFloat()
     assert v.to_python(u'') == None
     assert v.to_python(u'Ja') == 1.0
@@ -95,6 +95,16 @@ def test_PhoneCommentListNeinLoopNone():
     assert v.from_python(u'+43-699-1234567 (nicht nach 20:00 Uhr); +43-512-123456') == u'+43-699-1234567 (nicht nach 20:00 Uhr); +43-512-123456'
 
 
+def test_MaskedEmail():
+    v = wrpylib.wrvalidators.MaskedEmail()
+    assert v.to_python(u'') == (None, None)
+    assert v.to_python(u'abc.def@example.com') == (u'abc.def@example.com', False)
+    assert v.to_python(u'abc.def(at)example.com') == (u'abc.def@example.com', True)
+    assert v.from_python((None, None)) == u''
+    assert v.from_python((u'abc.def@example.com', False)) == u'abc.def@example.com'
+    assert v.from_python((u'abc.def@example.com', True)) == u'abc.def(at)example.com'
+
+
 def test_EmailCommentListNeinLoopNone():
     v = wrpylib.wrvalidators.EmailCommentListNeinLoopNone()
     assert v.to_python(u'') == None
@@ -105,6 +115,20 @@ def test_EmailCommentListNeinLoopNone():
     assert v.from_python(u'Nein') == u'Nein'
     assert v.from_python(u'first@example.com') == u'first@example.com'
     assert v.from_python(u'first@example.com (Nur Winter); second@example.com') == u'first@example.com (Nur Winter); second@example.com'
+    testvalue = u'abc.def(at)example.com (comment)'
+    try:
+        v.to_python(testvalue)
+        assert False
+    except formencode.Invalid:
+        pass
+    try:
+        v.from_python(testvalue)
+        assert False
+    except formencode.Invalid:
+        pass
+    v = wrpylib.wrvalidators.EmailCommentListNeinLoopNone(allow_masked_email=True)
+    assert v.to_python(testvalue) == testvalue
+    assert v.from_python(testvalue) == testvalue
 
 
 def test_GermanLift():