tests.py 838 B

123456789101112131415161718192021222324252627
  1. from django.urls import resolve
  2. from django.test import TestCase
  3. from django.http import HttpRequest
  4. from movies.views import home_page
  5. class HomePageTest(TestCase):
  6. def test_root_url_resolves_to_home_page_view(self):
  7. found = resolve('/')
  8. self.assertEqual(found.func, home_page)
  9. def test_home_page_returns_correct_html(self):
  10. response = self.client.get('/')
  11. html = response.content.decode('utf8')
  12. self.assertTrue(html.startswith('<html>'))
  13. self.assertIn('<title>MovieLib</title>', html)
  14. self.assertTrue(html.strip().endswith('</html>'))
  15. self.assertTemplateUsed(response, 'home.html')
  16. def test_can_save_a_POST_request(self):
  17. response = self.client.post('/', data={'movie-title': 'X-Men'})
  18. self.assertIn('X-Men', response.content.decode())