diff options
author | Vivien Kraus <vivien@planete-kraus.eu> | 2020-12-04 19:23:04 +0100 |
---|---|---|
committer | Vivien Kraus <vivien@planete-kraus.eu> | 2021-06-19 15:44:36 +0200 |
commit | eefb9bcf1ad160ee736452ce630d7a6f30d6b9f9 (patch) | |
tree | aa66e64ef5b0d5617cf611089b4483f9df0e7419 /tests/authorization-endpoint-get-form.scm | |
parent | 86e3d1ee64d791f794f6ac4c44b4246dfe4a2aa6 (diff) |
Make an authorization endpoint
Diffstat (limited to 'tests/authorization-endpoint-get-form.scm')
-rw-r--r-- | tests/authorization-endpoint-get-form.scm | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/authorization-endpoint-get-form.scm b/tests/authorization-endpoint-get-form.scm new file mode 100644 index 0000000..d6fabe9 --- /dev/null +++ b/tests/authorization-endpoint-get-form.scm @@ -0,0 +1,43 @@ +(use-modules (webid-oidc authorization-endpoint) + (webid-oidc jwk) + (webid-oidc testing) + (web uri) + (web request) + (web response) + (srfi srfi-19) + (web response) + (ice-9 optargs) + (ice-9 receive)) + +(with-test-environment + "authorization-endpoint-get-form" + (lambda () + (define alg 'RS256) + (define key (generate-key #:n-size 2048)) + (define subject (string->uri "https://authorization-endpoint-get-form.scm/profile/card#me")) + (define password "p4ssw0rd") + (define validity 120) + (define the-time 0) + (define (current-time) + (make-time time-utc 0 the-time)) + (define* (http-get uri #:key (headers '())) + (exit 2)) + (define endpoint + (make-authorization-endpoint + subject password alg key validity + #:http-get http-get + #:current-time current-time)) + (receive (response response-body) + (endpoint + (build-request (string->uri + (format #f "https://authorization-endpoint-get-form.scm/authorize?client_id=~a&redirect_uri=~a" + (uri-encode "https://authorization-endpoint-get-form.scm/client/card#app") + (uri-encode "https://authorization-endpoint-get-form.scm/client/redirect")))) + "") + (unless (eq? (response-code response) 200) + (exit 3)) + (unless (response-content-type response) + (exit 4)) + (unless (eq? (car (response-content-type response)) + 'application/xhtml+xml) + (exit 5))))) |