test_util.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. from twisted.trial import unittest
  2. from sydent.util.stringutils import is_valid_matrix_server_name
  3. class UtilTests(unittest.TestCase):
  4. """Tests Sydent utility functions."""
  5. def test_is_valid_matrix_server_name(self):
  6. """Tests that the is_valid_matrix_server_name function accepts only
  7. valid hostnames (or domain names), with optional port number.
  8. """
  9. self.assertTrue(is_valid_matrix_server_name("9.9.9.9"))
  10. self.assertTrue(is_valid_matrix_server_name("9.9.9.9:4242"))
  11. self.assertTrue(is_valid_matrix_server_name("[::]"))
  12. self.assertTrue(is_valid_matrix_server_name("[::]:4242"))
  13. self.assertTrue(is_valid_matrix_server_name("[a:b:c::]:4242"))
  14. self.assertTrue(is_valid_matrix_server_name("example.com"))
  15. self.assertTrue(is_valid_matrix_server_name("EXAMPLE.COM"))
  16. self.assertTrue(is_valid_matrix_server_name("ExAmPlE.CoM"))
  17. self.assertTrue(is_valid_matrix_server_name("example.com:4242"))
  18. self.assertTrue(is_valid_matrix_server_name("localhost"))
  19. self.assertTrue(is_valid_matrix_server_name("localhost:9000"))
  20. self.assertTrue(is_valid_matrix_server_name("a.b.c.d:1234"))
  21. self.assertFalse(is_valid_matrix_server_name("[:::]"))
  22. self.assertFalse(is_valid_matrix_server_name("a:b:c::"))
  23. self.assertFalse(is_valid_matrix_server_name("example.com:65536"))
  24. self.assertFalse(is_valid_matrix_server_name("example.com:0"))
  25. self.assertFalse(is_valid_matrix_server_name("example.com:-1"))
  26. self.assertFalse(is_valid_matrix_server_name("example.com:a"))
  27. self.assertFalse(is_valid_matrix_server_name("example.com: "))
  28. self.assertFalse(is_valid_matrix_server_name("example.com:04242"))
  29. self.assertFalse(is_valid_matrix_server_name("example.com: 4242"))
  30. self.assertFalse(is_valid_matrix_server_name("example.com/example.com"))
  31. self.assertFalse(is_valid_matrix_server_name("example.com#example.com"))