authentik.stages.email.tests.test_api

email stage api tests

 1"""email stage api tests"""
 2
 3from django.urls import reverse
 4from rest_framework.serializers import ValidationError
 5from rest_framework.test import APITestCase
 6
 7from authentik.core.tests.utils import create_test_admin_user
 8from authentik.stages.email.api import EmailStageSerializer
 9from authentik.stages.email.models import EmailTemplates
10
11
12class TestEmailStageAPI(APITestCase):
13    """Email tests"""
14
15    def setUp(self):
16        super().setUp()
17        self.user = create_test_admin_user()
18        self.client.force_login(self.user)
19
20    def test_templates(self):
21        """Test template list"""
22        response = self.client.get(reverse("authentik_api:emailstage-templates"))
23        self.assertEqual(response.status_code, 200)
24
25    def test_validate(self):
26        """Test EmailStage's validation"""
27        self.assertEqual(
28            EmailStageSerializer().validate_template(EmailTemplates.ACCOUNT_CONFIRM),
29            EmailTemplates.ACCOUNT_CONFIRM,
30        )
31        with self.assertRaises(ValidationError):
32            EmailStageSerializer().validate_template("foobar")
class TestEmailStageAPI(rest_framework.test.APITestCase):
13class TestEmailStageAPI(APITestCase):
14    """Email tests"""
15
16    def setUp(self):
17        super().setUp()
18        self.user = create_test_admin_user()
19        self.client.force_login(self.user)
20
21    def test_templates(self):
22        """Test template list"""
23        response = self.client.get(reverse("authentik_api:emailstage-templates"))
24        self.assertEqual(response.status_code, 200)
25
26    def test_validate(self):
27        """Test EmailStage's validation"""
28        self.assertEqual(
29            EmailStageSerializer().validate_template(EmailTemplates.ACCOUNT_CONFIRM),
30            EmailTemplates.ACCOUNT_CONFIRM,
31        )
32        with self.assertRaises(ValidationError):
33            EmailStageSerializer().validate_template("foobar")

Email tests

def setUp(self):
16    def setUp(self):
17        super().setUp()
18        self.user = create_test_admin_user()
19        self.client.force_login(self.user)

Hook method for setting up the test fixture before exercising it.

def test_templates(self):
21    def test_templates(self):
22        """Test template list"""
23        response = self.client.get(reverse("authentik_api:emailstage-templates"))
24        self.assertEqual(response.status_code, 200)

Test template list

def test_validate(self):
26    def test_validate(self):
27        """Test EmailStage's validation"""
28        self.assertEqual(
29            EmailStageSerializer().validate_template(EmailTemplates.ACCOUNT_CONFIRM),
30            EmailTemplates.ACCOUNT_CONFIRM,
31        )
32        with self.assertRaises(ValidationError):
33            EmailStageSerializer().validate_template("foobar")

Test EmailStage's validation