Source code for bug_hub.tests.views.test_bug_create_view

"""
This module contains unit tests for validating the view when 
creating new bug reports in the Bug Hub application.
"""

from django.test import TestCase
from django.urls import reverse
from bug_hub.models import Bug


[docs] class BugCreateViewTestCase(TestCase): """ Test case for the BugCreateView class, which handles the creation of bug reports. """
[docs] def setUp(self): self.url = reverse("bug_hub:bug_create") self.data = { "title": "Test Bug Title", "description": "This is a test bug description.", "bug_type": "feature", "status": "under_review", }
[docs] def test_get_request(self): """Test GET request: 200 status, 'bug_create.html' template used.""" response = self.client.get(self.url) self.assertEqual(response.status_code, 200) self.assertTemplateUsed(response, "bug_hub/bug_create.html")
[docs] def test_post_request_without_form(self): """Test POST request: Redirects to 'bug_list', confirms Bug object creation.""" response = self.client.post( reverse("bug_hub:bug_create"), data=self.data, follow=True, ) self.assertRedirects( response, reverse("bug_hub:bug_list"), ) # pylint: disable=E1101 self.assertTrue(Bug.objects.filter(title="Test Bug Title").exists())
# pylint: enable=E1101