;;;; cl-scopes/test/test-config ;;;; Tests for the scopes/config functionality. (defpackage :scopes/test-config (:use :common-lisp) (:local-nicknames (:config :scopes/config) (:util :scopes/util) (:t :scopes/testing)) (:export #:run) (:import-from :scopes/testing #:deftest #:==)) (in-package :scopes/test-config) (defvar *config* nil) (defclass test-config (config:base) ((config:override-keys :initform '(user password)))) (defun run () (let ((t:*test-suite* (t:test-suite "config"))) (setf *config* (make-instance 'test-config)) (test-make-path) (test-env-override) (t:show-result))) (t:deftest test-make-path () (format t "~&relative-path: ~s" (util:relative-path "config" "app" "etc")) (format t "~&system-path: ~s" (util:system-path :scopes "config" "test")) (format t "~&test-path (config): ~s" (t:test-path :scopes "config")) (format t "~&test-path (data): ~s" (t:test-path :scopes "test.db" "data")) (format t "~&runtime-path: ~s" (util:runtime-path "config" "app" "etc")) (format t "~&runtime-path (.env): ~s" (util:runtime-path ".env" "app"))) (t:deftest test-env-override () (format t "~&override-keys: ~s~%" (config:override-keys *config*)))