summaryrefslogtreecommitdiff
path: root/gnu/tests
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/tests')
-rw-r--r--gnu/tests/web.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm
index 5c8905f62b8..b06cbcec115 100644
--- a/gnu/tests/web.scm
+++ b/gnu/tests/web.scm
@@ -60,6 +60,7 @@
%test-anonip
%test-go-webdav
%test-patchwork
+ %test-sogogi
%test-agate
%test-miniflux-admin-string
%test-miniflux-admin-file
@@ -782,6 +783,55 @@ HTTP-PORT."
;;;
+;;; sogogi
+;;;
+
+(define %sogogi-os
+ (simple-operating-system
+ (service dhcpcd-service-type)
+ (simple-service 'make-http-root activation-service-type
+ %make-http-root)
+ (service sogogi-service-type
+ (sogogi-configuration
+ (listen ":8080")
+ (user
+ (list
+ (sogogi-user
+ (name "testuser")
+ (password "testpass"))))
+ (location
+ (list
+ (sogogi-location
+ (path "/")
+ (dir "/srv/http/")
+ (grant '("all ro" "user:testuser rw")))))))))
+
+(define %test-sogogi
+ (system-test
+ (name "sogogi")
+ (description "Test that the sogogi can handle HTTP requests.")
+ (value
+ (let ((http-port 8080))
+ (run-webserver-test name %sogogi-os
+ #:http-port http-port
+ #:extra-tests
+ #~(begin
+ (use-modules (srfi srfi-11) (srfi srfi-64)
+ (gnu build marionette)
+ (web uri)
+ (web client)
+ (web response))
+
+ (test-equal "unauthenticated delete"
+ 401
+ (let-values
+ (((response _)
+ (http-delete #$(simple-format
+ #f "http://localhost:~A/index.html" http-port))))
+ (response-code response)))))))))
+
+
+;;;
;;; Agate
;;;