authentik.providers.ldap.tests.test_api

LDAP Provider API tests

 1"""LDAP Provider API tests"""
 2
 3from json import loads
 4
 5from django.urls import reverse
 6from rest_framework.test import APITestCase
 7
 8from authentik.core.models import Application
 9from authentik.core.tests.utils import create_test_admin_user, create_test_flow
10from authentik.lib.generators import generate_id
11from authentik.providers.ldap.models import LDAPProvider
12
13
14class TestLDAPProviderAPI(APITestCase):
15    """LDAP Provider API tests"""
16
17    def test_outpost_application(self):
18        """Test outpost-like provider retrieval (direct connection)"""
19        provider = LDAPProvider.objects.create(
20            name=generate_id(),
21            authorization_flow=create_test_flow(),
22        )
23        Application.objects.create(
24            name=generate_id(),
25            slug=generate_id(),
26            provider=provider,
27        )
28        user = create_test_admin_user()
29        self.client.force_login(user)
30        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
31        self.assertEqual(res.status_code, 200)
32        data = loads(res.content.decode())
33        self.assertEqual(data["pagination"]["count"], 1)
34        self.assertEqual(len(data["results"]), 1)
35
36    def test_outpost_application_backchannel(self):
37        """Test outpost-like provider retrieval (backchannel connection)"""
38        provider = LDAPProvider.objects.create(
39            name=generate_id(),
40            authorization_flow=create_test_flow(),
41        )
42        app: Application = Application.objects.create(
43            name=generate_id(),
44            slug=generate_id(),
45        )
46        app.backchannel_providers.add(provider)
47        user = create_test_admin_user()
48        self.client.force_login(user)
49        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
50        self.assertEqual(res.status_code, 200)
51        data = loads(res.content.decode())
52        self.assertEqual(data["pagination"]["count"], 1)
53        self.assertEqual(len(data["results"]), 1)
class TestLDAPProviderAPI(rest_framework.test.APITestCase):
15class TestLDAPProviderAPI(APITestCase):
16    """LDAP Provider API tests"""
17
18    def test_outpost_application(self):
19        """Test outpost-like provider retrieval (direct connection)"""
20        provider = LDAPProvider.objects.create(
21            name=generate_id(),
22            authorization_flow=create_test_flow(),
23        )
24        Application.objects.create(
25            name=generate_id(),
26            slug=generate_id(),
27            provider=provider,
28        )
29        user = create_test_admin_user()
30        self.client.force_login(user)
31        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
32        self.assertEqual(res.status_code, 200)
33        data = loads(res.content.decode())
34        self.assertEqual(data["pagination"]["count"], 1)
35        self.assertEqual(len(data["results"]), 1)
36
37    def test_outpost_application_backchannel(self):
38        """Test outpost-like provider retrieval (backchannel connection)"""
39        provider = LDAPProvider.objects.create(
40            name=generate_id(),
41            authorization_flow=create_test_flow(),
42        )
43        app: Application = Application.objects.create(
44            name=generate_id(),
45            slug=generate_id(),
46        )
47        app.backchannel_providers.add(provider)
48        user = create_test_admin_user()
49        self.client.force_login(user)
50        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
51        self.assertEqual(res.status_code, 200)
52        data = loads(res.content.decode())
53        self.assertEqual(data["pagination"]["count"], 1)
54        self.assertEqual(len(data["results"]), 1)

LDAP Provider API tests

def test_outpost_application(self):
18    def test_outpost_application(self):
19        """Test outpost-like provider retrieval (direct connection)"""
20        provider = LDAPProvider.objects.create(
21            name=generate_id(),
22            authorization_flow=create_test_flow(),
23        )
24        Application.objects.create(
25            name=generate_id(),
26            slug=generate_id(),
27            provider=provider,
28        )
29        user = create_test_admin_user()
30        self.client.force_login(user)
31        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
32        self.assertEqual(res.status_code, 200)
33        data = loads(res.content.decode())
34        self.assertEqual(data["pagination"]["count"], 1)
35        self.assertEqual(len(data["results"]), 1)

Test outpost-like provider retrieval (direct connection)

def test_outpost_application_backchannel(self):
37    def test_outpost_application_backchannel(self):
38        """Test outpost-like provider retrieval (backchannel connection)"""
39        provider = LDAPProvider.objects.create(
40            name=generate_id(),
41            authorization_flow=create_test_flow(),
42        )
43        app: Application = Application.objects.create(
44            name=generate_id(),
45            slug=generate_id(),
46        )
47        app.backchannel_providers.add(provider)
48        user = create_test_admin_user()
49        self.client.force_login(user)
50        res = self.client.get(reverse("authentik_api:ldapprovideroutpost-list"))
51        self.assertEqual(res.status_code, 200)
52        data = loads(res.content.decode())
53        self.assertEqual(data["pagination"]["count"], 1)
54        self.assertEqual(len(data["results"]), 1)

Test outpost-like provider retrieval (backchannel connection)