;;;; cl-scopes/test-web - test web (client and server) functionality (defpackage :scopes/test-web (:use :common-lisp) (:local-nicknames (:config :scopes/config) (:core :scopes/core) (:client :scopes/web/client) (:server :scopes/web/server) (:t :scopes/testing)) (:export #:run) (:import-from :scopes/testing #:deftest #:==)) (in-package :scopes/test-web) (defvar *config* nil) (defun run () (let ((t:*test-suite* (t:test-suite "web")) (*config* nil) (server:*listener* nil)) (load (t:test-path "config-web" "etc")) (core:setup-services *config*) (test-server-config) (sleep 0.1) (test-client) (sleep 0.1) (server:stop) (t:show-result))) (t:deftest test-server-config () (let ((cfg (core:config (core:find-service :server)))) (== (parse-integer (server:port cfg)) 8899))) (t:deftest test-client () (let ((cfg (core:config (core:find-service :client)))) (== (client:url cfg) "http://localhost:8899") (== (dexador:get (client:url cfg)) "Hello World!")))