X-Git-Url: https://git.toastfreeware.priv.at/philipp/winterrodeln/wrpylib.git/blobdiff_plain/702bca32d33a3942bc422806b928eeafa9656abd..9d1cae951825601147fd4443c121b67165e4a1ea:/tests/test_wrvalidators.py diff --git a/tests/test_wrvalidators.py b/tests/test_wrvalidators.py index 8cc33e6..a61e847 100644 --- a/tests/test_wrvalidators.py +++ b/tests/test_wrvalidators.py @@ -7,17 +7,6 @@ import unittest from wrpylib.wrvalidators import * -class TestConverter(unittest.TestCase): - def test_from_str(self): - self.assertEqual(Converter.from_str('abc'), 'abc') - self.assertEqual(Converter.from_str(''), '') - - def test_to_str(self): - self.assertEqual(Converter.to_str('abc'), 'abc') - self.assertEqual(Converter.to_str(''), '') - self.assertEqual(Converter.to_str(42), '42') - - class TestInt(unittest.TestCase): def test_from_str(self): self.assertEqual(int_from_str('42'), 42) @@ -377,6 +366,38 @@ class TestTelefonauskunft(unittest.TestCase): self.assertEqual(telefonauskunft_to_str([('+43-512-1234', 'untertags'), ('+43-664-123456', 'Alm')]), '+43-512-1234 (untertags); +43-664-123456 (Alm)') +class TestEmail(unittest.TestCase): + def setUp(self): + self.good_addresses = ['office@example.com', 'winter+rodeln@localhost', 'joe.doe@exämple.com'] + self.bad_addresses = ['öffice@example.com', 'winter rodeln@localhost', 'www.winterrodeln.org', 'mailto:info@example.com', 'info@example.com.'] + + def test_from_str(self): + for value in self.good_addresses: + self.assertEqual(value, email_from_str(value)) + for value in self.bad_addresses: + with self.assertRaises(ValueError): + email_from_str(value) + + def test_to_str(self): + for value in self.good_addresses: + self.assertEqual(value, email_to_str(value)) + + +class TestMaskedEmail(unittest.TestCase): + def test_from_str(self): + self.assertEqual(('office@example.com', False), masked_email_from_str('office@example.com')) + self.assertEqual(('office@example.com', True), masked_email_from_str('office(at)example.com')) + with self.assertRaises(ValueError): + masked_email_from_str('office@example.com', masked_only=True) + with self.assertRaises(ValueError): + masked_email_from_str('off ice@example.com') + + def test_to_str(self): + self.assertEqual('office@example.com', masked_email_to_str(('office@example.com', False))) + self.assertEqual('office(at)example.com', masked_email_to_str(('office@example.com', True))) + self.assertEqual('office()example.com', masked_email_to_str(('office@example.com', True), '()')) + + class TestBox(unittest.TestCase): def test_from_str(self): value = '{{MyTemplate|apple=2|banana=5}}'