def test_username_domain_at_sign(self):
     self.assertTrue(r('*****@*****.**'))
     self.assertTrue(r('*****@*****.**'))
     self.assertFalse(r('test@'))
     self.assertFalse(r('[email protected]@fd'))
     self.assertFalse(r('[email protected]@@@@'))
     self.assertFalse(r('test'))
     self.assertFalse(r('[email protected]@.ra'))
     self.assertFalse(r('@yandex.ru'))
 def test_username_domain_at_sign(self):
     self.assertTrue(r('*****@*****.**'))
     self.assertTrue(r('*****@*****.**'))
     self.assertFalse(r('test@'))
     self.assertFalse(r('[email protected]@fd'))
     self.assertFalse(r('[email protected]@@@@'))
     self.assertFalse(r('test'))
     self.assertFalse(r('[email protected]@.ra'))
     self.assertFalse(r('@yandex.ru'))
 def test_domain_not_end_begin_dash(self):
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('[email protected]'))
     self.assertFalse(r('[email protected]'))
     self.assertTrue(r('*****@*****.**'))
 def test_domain_not_end_begin_dash(self):
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('[email protected]'))
     self.assertFalse(r('[email protected]'))
     self.assertTrue(r('*****@*****.**'))
 def test_domain_length_symbols_dots(self):
     self.assertFalse(r('test@' + 'ya.ru' * 256))
     self.assertTrue(r('[email protected]'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('test@yandex.'))
     self.assertFalse(r('*****@*****.**'))
     self.assertTrue(r('[email protected]_.a.a.a.a.ru'))
 def test_domain_length_symbols_dots(self):
     self.assertFalse(r('test@'+'ya.ru'*256))
     self.assertTrue(r('[email protected]'))
     self.assertFalse(r('*****@*****.**'))
     self.assertFalse(r('test@yandex.'))
     self.assertFalse(r('*****@*****.**'))
     self.assertTrue(r('[email protected]_.a.a.a.a.ru'))
 def test_username_paired_quotation_marks(self):
     self.assertTrue(r('teste""*****@*****.**'))
     self.assertFalse(r('de""test"*****@*****.**'))
     self.assertFalse(r('teste"*****@*****.**'))
 def test_username_two_dots(self):
     self.assertTrue(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
 def test_username_length_symbols(self):
     self.assertTrue(r('d' * 128 + '@yandex.ru'))
     self.assertFalse(r('d' * 129 + '@yandex.ru'))
     self.assertTrue(r('test._-n""*****@*****.**'))
 def test_username_symbols_between_marks(self):
     self.assertTrue(r('test"eh!,eh:"*****@*****.**'))
     self.assertFalse(r('de!,::"etest"@spok.ru'))
     self.assertFalse(r('de"testg!",:[email protected]'))
 def test_username_symbols_between_marks(self):
     self.assertTrue(r('test"eh!,eh:"*****@*****.**'))
     self.assertFalse(r('de!,::"etest"@spok.ru'))
     self.assertFalse(r('de"testg!",:[email protected]'))
 def test_username_paired_quotation_marks(self):
     self.assertTrue(r('teste""*****@*****.**'))
     self.assertFalse(r('de""test"*****@*****.**'))
     self.assertFalse(r('teste"*****@*****.**'))
 def test_username_two_dots(self):
     self.assertTrue(r('*****@*****.**'))
     self.assertFalse(r('*****@*****.**'))
 def test_username_length_symbols(self):
     self.assertTrue(r('d'*128+'@yandex.ru'))
     self.assertFalse(r('d'*129+'@yandex.ru'))
     self.assertTrue(r('test._-n""*****@*****.**'))