stages/captcha: fix captcha not loading correctly, add tests
closes #4320 Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
parent
a03a64b35c
commit
5cab280759
|
@ -20,7 +20,7 @@ class CaptchaChallenge(WithUserInfoChallenge):
|
|||
"""Site public key"""
|
||||
|
||||
site_key = CharField()
|
||||
js_url = CharField(read_only=True)
|
||||
js_url = CharField()
|
||||
component = CharField(default="ak-stage-captcha")
|
||||
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ class TestCaptchaStage(FlowTestCase):
|
|||
self.user = create_test_admin_user()
|
||||
self.flow = create_test_flow(FlowDesignation.AUTHENTICATION)
|
||||
|
||||
self.stage = CaptchaStage.objects.create(
|
||||
self.stage: CaptchaStage = CaptchaStage.objects.create(
|
||||
name="captcha",
|
||||
public_key=RECAPTCHA_PUBLIC_KEY,
|
||||
private_key=RECAPTCHA_PRIVATE_KEY,
|
||||
|
@ -41,3 +41,22 @@ class TestCaptchaStage(FlowTestCase):
|
|||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertStageRedirects(response, reverse("authentik_core:root-redirect"))
|
||||
|
||||
def test_urls(self):
|
||||
"""Test URLs captcha"""
|
||||
self.stage.js_url = "https://test.goauthentik.io/test.js"
|
||||
self.stage.api_url = "https://test.goauthentik.io/test"
|
||||
self.stage.save()
|
||||
plan = FlowPlan(flow_pk=self.flow.pk.hex, bindings=[self.binding], markers=[StageMarker()])
|
||||
session = self.client.session
|
||||
session[SESSION_KEY_PLAN] = plan
|
||||
session.save()
|
||||
response = self.client.get(
|
||||
reverse("authentik_api:flow-executor", kwargs={"flow_slug": self.flow.slug}),
|
||||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertStageResponse(
|
||||
response,
|
||||
self.flow,
|
||||
js_url="https://test.goauthentik.io/test.js",
|
||||
)
|
||||
|
|
|
@ -26358,7 +26358,6 @@ components:
|
|||
type: string
|
||||
js_url:
|
||||
type: string
|
||||
readOnly: true
|
||||
required:
|
||||
- js_url
|
||||
- pending_user
|
||||
|
|
Reference in a new issue