chore(*): add various tests
parent
162b9a46ea
commit
5efdbcb63c
@ -0,0 +1,30 @@
|
||||
from django.test import TestCase, RequestFactory, override_settings
|
||||
from django.contrib.auth.models import User
|
||||
from django.contrib import admin
|
||||
from unittest.mock import Mock, patch
|
||||
from jdav_web.views import media_unprotected, custom_admin_view
|
||||
from startpage.models import Link
|
||||
|
||||
|
||||
class ViewsTestCase(TestCase):
|
||||
def setUp(self):
|
||||
self.factory = RequestFactory()
|
||||
self.user = User.objects.create_user('testuser', 'test@example.com', 'password')
|
||||
Link.objects.create(title='Test Link', url='https://example.com')
|
||||
|
||||
@override_settings(DEBUG=True)
|
||||
def test_media_unprotected_debug_true(self):
|
||||
request = self.factory.get('/media/test.jpg')
|
||||
with patch('jdav_web.views.serve') as mock_serve:
|
||||
mock_serve.return_value = Mock()
|
||||
result = media_unprotected(request, 'test.jpg')
|
||||
mock_serve.assert_called_once()
|
||||
|
||||
def test_custom_admin_view(self):
|
||||
request = self.factory.get('/admin/')
|
||||
request.user = self.user
|
||||
with patch.object(admin.site, 'get_app_list') as mock_get_app_list:
|
||||
mock_get_app_list.return_value = []
|
||||
response = custom_admin_view(request)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
mock_get_app_list.assert_called_once_with(request)
|
||||
@ -0,0 +1,34 @@
|
||||
from django.test import TestCase, override_settings
|
||||
from unittest.mock import patch, Mock
|
||||
from mailer.mailutils import send, SENT, NOT_SENT
|
||||
|
||||
|
||||
class MailUtilsTest(TestCase):
|
||||
def setUp(self):
|
||||
self.subject = "Test Subject"
|
||||
self.content = "Test Content"
|
||||
self.sender = "sender@example.com"
|
||||
self.recipient = "recipient@example.com"
|
||||
|
||||
def test_send_with_reply_to(self):
|
||||
with patch('mailer.mailutils.mail.get_connection') as mock_connection:
|
||||
mock_conn = Mock()
|
||||
mock_connection.return_value = mock_conn
|
||||
result = send(self.subject, self.content, self.sender, self.recipient, reply_to=["reply@example.com"])
|
||||
self.assertEqual(result, SENT)
|
||||
|
||||
def test_send_with_message_id(self):
|
||||
with patch('mailer.mailutils.mail.get_connection') as mock_connection:
|
||||
mock_conn = Mock()
|
||||
mock_connection.return_value = mock_conn
|
||||
result = send(self.subject, self.content, self.sender, self.recipient, message_id="<test@example.com>")
|
||||
self.assertEqual(result, SENT)
|
||||
|
||||
def test_send_exception_handling(self):
|
||||
with patch('mailer.mailutils.mail.get_connection') as mock_connection:
|
||||
mock_conn = Mock()
|
||||
mock_conn.send_messages.side_effect = Exception("Test exception")
|
||||
mock_connection.return_value = mock_conn
|
||||
with patch('builtins.print'):
|
||||
result = send(self.subject, self.content, self.sender, self.recipient)
|
||||
self.assertEqual(result, NOT_SENT)
|
||||
Loading…
Reference in New Issue