summaryrefslogtreecommitdiff
path: root/tests/client-manifest-not-modified.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/client-manifest-not-modified.scm')
-rw-r--r--tests/client-manifest-not-modified.scm59
1 files changed, 34 insertions, 25 deletions
diff --git a/tests/client-manifest-not-modified.scm b/tests/client-manifest-not-modified.scm
index 26f4852..9026c87 100644
--- a/tests/client-manifest-not-modified.scm
+++ b/tests/client-manifest-not-modified.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,31 +14,40 @@
;; 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 client)
- (webid-oidc testing)
- (webid-oidc errors)
- (web uri)
- (srfi srfi-19)
- (web request)
- (web response)
- (ice-9 optargs)
- (ice-9 receive))
+(define-module (tests client-manifest-not-modified)
+ #:use-module (webid-oidc server endpoint)
+ #:use-module (webid-oidc server endpoint client)
+ #:use-module (webid-oidc client)
+ #:use-module (webid-oidc testing)
+ #:use-module (webid-oidc errors)
+ #:use-module (web uri)
+ #:use-module (srfi srfi-19)
+ #:use-module (web request)
+ #:use-module (web response)
+ #:use-module (ice-9 optargs)
+ #:use-module (ice-9 receive)
+ #:use-module (oop goops)
+ #:declarative? #t
+ #:duplicates (merge-generics))
(with-test-environment
"client-manifest-not-modified"
(lambda ()
- (let ((handler (serve-application
- (string->uri "https://example.com/manifest")
- (string->uri "https://example.com/authorized"))))
- (receive (response response-body)
- (handler (build-request (string->uri "https://example.com/manifest"))
- "")
- (let ((etag (response-etag response)))
- (unless etag
- (exit 1))
- (receive (second-response second-response-body)
- (handler (build-request (string->uri "https://example.com/manifest")
- #:headers `((if-none-match . (,etag))))
- "")
- (unless (eqv? (response-code second-response) 304)
- (exit 2))))))))
+ (define endpoint
+ (make <client-id>
+ #:client-id (string->uri "https://example.com/manifest")
+ #:redirect-uris (list (string->uri "https://example.com/authorized"))))
+ (receive (response response-body response-meta)
+ (handle endpoint
+ (build-request (string->uri "https://example.com/manifest"))
+ #f)
+ (let ((etag (response-etag response)))
+ (unless etag
+ (exit 1))
+ (receive (second-response second-response-body second-response-meta)
+ (handle endpoint
+ (build-request (string->uri "https://example.com/manifest")
+ #:headers `((if-none-match . (,etag))))
+ #f)
+ (unless (eqv? (response-code second-response) 304)
+ (exit 2)))))))