test_setup.py 1.3 KB

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