Best Python code snippet using httmock_python
test_views.py
Source:test_views.py
1import pytest2from django.urls import reverse3class TestBookListView:4 @pytest.mark.parametrize("url", ["/books/list/", reverse("books:book_list")])5 def test_response_status_code(self, client, db, url):6 response = client.get(url)7 assert response.status_code == 2008 def test_response_template(self, book_list_response):9 template_names = [template.name for template in book_list_response.templates]10 assert "base.html" in template_names11 assert "books/book_list.html" in template_names12class TestBookCreateView:13 def setup(self):14 self.url = reverse("books:book_create")15 @pytest.mark.parametrize("url", ["/books/create/", reverse("books:book_create")])16 def test_response_status_code(self, client, db, url):17 response = client.get(url)18 assert response.status_code == 20019 def test_response_template(self, client, db):20 response = client.get(self.url)21 template_names = [template.name for template in response.templates]22 assert "base.html" in template_names23 assert "books/book_create.html" in template_names24class TestBookUpdateView:25 def setup(self):26 self.url = reverse("books:book_update", kwargs={"pk": 1})27 @pytest.mark.parametrize("url",28 ["/books/update/1", reverse("books:book_update", kwargs={"pk": 1})])29 def test_response_status_code(self, client, db_book_1, url):30 response = client.get(url)31 assert response.status_code == 20032 def test_response_template(self, client, db, db_book_1):33 response = client.get(self.url)34 template_names = [template.name for template in response.templates]35 assert "base.html" in template_names36 assert "books/book_update.html" in template_names37class TestAuthorCreateView:38 def setup(self):39 self.url = reverse("books:author_create")40 @pytest.mark.parametrize("url", ["/books/create/author/", reverse("books:author_create")])41 def test_response_status_code(self, client, db, url):42 response = client.get(url)43 assert response.status_code == 20044 def test_response_template(self, client, db):45 response = client.get(self.url)46 template_names = [template.name for template in response.templates]47 assert "base.html" in template_names48 assert "books/book_create.html" in template_names49class TestAuthorUpdateView:50 def setup(self):51 self.url = reverse("books:author_update", kwargs={"pk": 1})52 @pytest.mark.parametrize("url",53 ["/books/update/author/1", reverse("books:author_update", kwargs={"pk": 1})])54 def test_response_status_code(self, client, db_book_1, url):55 response = client.get(url)56 assert response.status_code == 20057 def test_response_template(self, client, db, db_book_1):58 response = client.get(self.url)59 template_names = [template.name for template in response.templates]60 assert "base.html" in template_names61 assert "books/book_update.html" in template_names62class TestLanguageCreateView:63 def setup(self):64 self.url = reverse("books:language_create")65 @pytest.mark.parametrize("url", ["/books/create/language/", reverse("books:language_create")])66 def test_response_status_code(self, client, db, url):67 response = client.get(url)68 assert response.status_code == 20069 def test_response_template(self, client, db):70 response = client.get(self.url)71 template_names = [template.name for template in response.templates]72 assert "base.html" in template_names73 assert "books/book_create.html" in template_names74class TestLanguageUpdateView:75 def setup(self):76 self.url = reverse("books:language_update", kwargs={"pk": 42})77 @pytest.mark.parametrize("url", [78 "/books/update/language/42",79 reverse("books:language_update", kwargs={"pk": 42})80 ])81 def test_response_status_code(self, client, db_book_1, url):82 response = client.get(url)83 assert response.status_code == 20084 def test_response_template(self, client, db, db_book_1):85 response = client.get(self.url)86 template_names = [template.name for template in response.templates]87 assert "base.html" in template_names...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!