test_setup.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import os
  2. from django.utils.encoding import smart_str
  3. from django.test import TestCase
  4. from .. import setup
  5. class MockParser(object):
  6. def error(self, message):
  7. raise ValueError(message)
  8. class SetupTests(TestCase):
  9. def test_validate_project_name(self):
  10. """validate_project_name identifies incorrect names correctly"""
  11. mock_parser = MockParser()
  12. with self.assertRaises(ValueError):
  13. setup.validate_project_name(mock_parser, '-lorem')
  14. with self.assertRaises(ValueError):
  15. setup.validate_project_name(mock_parser, 'django')
  16. with self.assertRaises(ValueError):
  17. setup.validate_project_name(mock_parser, 'dja-ngo')
  18. with self.assertRaises(ValueError):
  19. setup.validate_project_name(mock_parser, '123')
  20. self.assertTrue(setup.validate_project_name(mock_parser, 'myforum'))
  21. self.assertTrue(setup.validate_project_name(mock_parser, 'myforum123'))
  22. def test_get_misago_project_template(self):
  23. """get_misago_project_template returns correct path to template"""
  24. misago_path = os.path.dirname(
  25. os.path.dirname(os.path.dirname(__file__)))
  26. test_project_path = os.path.join(misago_path, 'project_template')
  27. self.assertEqual(smart_str(setup.get_misago_project_template()),
  28. smart_str(test_project_path))