summaryrefslogtreecommitdiff
path: root/tests/authorization-endpoint-no-args.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/authorization-endpoint-no-args.scm')
-rw-r--r--tests/authorization-endpoint-no-args.scm58
1 files changed, 38 insertions, 20 deletions
diff --git a/tests/authorization-endpoint-no-args.scm b/tests/authorization-endpoint-no-args.scm
index 7976d9d..0cc2fab 100644
--- a/tests/authorization-endpoint-no-args.scm
+++ b/tests/authorization-endpoint-no-args.scm
@@ -1,4 +1,4 @@
-;; webid-oidc, implementation of the Solid specification
+;; disfluid, implementation of the Solid specification
;; Copyright (C) 2020, 2021 Vivien Kraus
;; This program is free software: you can redistribute it and/or modify
@@ -14,17 +14,22 @@
;; You should have received a copy of the GNU Affero General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
-(use-modules (webid-oidc authorization-endpoint)
- (webid-oidc jwk)
- (webid-oidc testing)
- ((webid-oidc parameters) #:prefix p:)
- (web uri)
- (web request)
- (web response)
- (srfi srfi-19)
- (web response)
- (ice-9 optargs)
- (ice-9 receive))
+(define-module (tests authorization-endpoint-no-args)
+ #:use-module (webid-oidc jwk)
+ #:use-module (webid-oidc testing)
+ #:use-module ((webid-oidc parameters) #:prefix p:)
+ #:use-module (web uri)
+ #:use-module (web request)
+ #:use-module (web response)
+ #:use-module (srfi srfi-19)
+ #:use-module (web response)
+ #:use-module (ice-9 optargs)
+ #:use-module (ice-9 receive)
+ #:use-module (webid-oidc server endpoint)
+ #:use-module (webid-oidc server endpoint identity-provider)
+ #:use-module (oop goops)
+ #:duplicates (merge-generics)
+ #:declarative? #t)
(with-test-environment
"authorization-endpoint-no-args"
@@ -32,12 +37,25 @@
(define subject (string->uri "https://authorization-endpoint-get-form.scm/profile/card#me"))
(define password "p4ssw0rd")
(define endpoint
- (make-authorization-endpoint subject password "./key-file.jwk"))
- (receive (response response-body)
+ (make <authorization-endpoint>
+ #:subject subject
+ #:encrypted-password (crypt password "$6$some.salt.data")
+ #:key-file "key-file.jwk"))
+ (with-exception-handler
+ (lambda (exn)
+ (unless (and (web-exception? exn)
+ (eqv? (web-exception-code exn) 400))
+ (raise-exception
+ (make-exception
+ (make-exception-with-message
+ "I was expected a 400 response.")
+ exn))))
+ (lambda ()
(parameterize ((p:current-date 0))
- (endpoint
- (build-request (string->uri
- "https://authorization-endpoint-get-form.scm/authorize"))
- ""))
- (unless (eq? (response-code response) 400)
- (exit 3)))))
+ (handle endpoint
+ (build-request (string->uri
+ "https://authorization-endpoint-get-form.scm/authorize"))
+ "")
+ (exit 3)))
+ #:unwind? #t
+ #:unwind-for-type &web-exception)))