Shirakumo / radiance

A Common Lisp web application environment

Home Page:https://shirakumo.github.io/radiance/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tests failed to run - missing configuraton

Hellseher opened this issue · comments

Hi,

How to run tests automaticaly? So far I've got this error:

Unhandled RADIANCE-CORE:ENVIRONMENT-NOT-SET in thread #<SB-THREAD:THREAD "main thread" RUNNING
                                                         {100B1B0083}>:
  The application environment was not yet set but is required.
This means you are either using Radiance for the first time or forgot to set it up properly.
In the first case, simply use the CONTINUE restart. In the second, make sure to adjust your
configuration and use the SETF ENVIRONMENT restart to set an explicit environment.

Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {100B1B0083}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<RADIANCE-CORE:ENVIRONMENT-NOT-SET {10038B5253}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK *INVOKE-DEBUGGER-HOOK* #<RADIANCE-CORE:ENVIRONMENT-NOT-SET {10038B5253}>)
2: (INVOKE-DEBUGGER #<RADIANCE-CORE:ENVIRONMENT-NOT-SET {10038B5253}>)
3: (ERROR RADIANCE-CORE:ENVIRONMENT-NOT-SET)
4: (RADIANCE-CORE:CHECK-ENVIRONMENT)
5: (RADIANCE-CORE:FIND-IMPLEMENTATION :BAN T)
6: (ASDF/PLAN:MAP-DIRECT-DEPENDENCIES #<ASDF/LISP-ACTION:PREPARE-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test"> #<FUNCTION (LAMBDA (ASDF/PLAN::O ASDF/PLAN::C) :IN ASDF/PLAN:TRAVERSE-ACTION) {10038B4F3B}>)
7: ((LAMBDA NIL :IN ASDF/PLAN:TRAVERSE-ACTION))
8: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
9: (ASDF/PLAN:TRAVERSE-ACTION #<ASDF/PLAN:SEQUENTIAL-PLAN {10038B3F13}> #<ASDF/LISP-ACTION:PREPARE-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test"> T)
10: (ASDF/PLAN:MAP-DIRECT-DEPENDENCIES #<ASDF/LISP-ACTION:PREPARE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "radiance-test" "package"> #<FUNCTION (LAMBDA (ASDF/PLAN::O ASDF/PLAN::C) :IN ASDF/PLAN:TRAVERSE-ACTION) {10038B4A0B}>)
11: ((LAMBDA NIL :IN ASDF/PLAN:TRAVERSE-ACTION))
12: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
13: (ASDF/PLAN:TRAVERSE-ACTION #<ASDF/PLAN:SEQUENTIAL-PLAN {10038B3F13}> #<ASDF/LISP-ACTION:PREPARE-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "radiance-test" "package"> T)
14: (ASDF/PLAN:MAP-DIRECT-DEPENDENCIES #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "radiance-test" "package"> #<FUNCTION (LAMBDA (ASDF/PLAN::O ASDF/PLAN::C) :IN ASDF/PLAN:TRAVERSE-ACTION) {10038B47CB}>)
15: ((LAMBDA NIL :IN ASDF/PLAN:TRAVERSE-ACTION))
16: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
17: (ASDF/PLAN:TRAVERSE-ACTION #<ASDF/PLAN:SEQUENTIAL-PLAN {10038B3F13}> #<ASDF/LISP-ACTION:LOAD-OP > #<ASDF/LISP-ACTION:CL-SOURCE-FILE "radiance-test" "package"> T)
18: (ASDF/PLAN:MAP-DIRECT-DEPENDENCIES #<ASDF/LISP-ACTION:LOAD-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test"> #<FUNCTION (LAMBDA (ASDF/PLAN::O ASDF/PLAN::C) :IN ASDF/PLAN:TRAVERSE-ACTION) {10038B43CB}>)
19: ((LAMBDA NIL :IN ASDF/PLAN:TRAVERSE-ACTION))
20: ((LAMBDA NIL :IN ASDF/ACTION:CALL-WHILE-VISITING-ACTION))
21: (ASDF/PLAN:TRAVERSE-ACTION #<ASDF/PLAN:SEQUENTIAL-PLAN {10038B3F13}> #<ASDF/LISP-ACTION:LOAD-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test"> T)
22: ((LAMBDA NIL :IN ASDF/PLAN:MAKE-PLAN))
23: ((:METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)) #<ASDF/LISP-ACTION:LOAD-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test"> :PLAN-CLASS NIL :PLAN-OPTIONS NIL) [fast-method]
24: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> #<ASDF/LISP-ACTION:LOAD-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test">)
25: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
26: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) #<ASDF/LISP-ACTION:LOAD-OP > #<RADIANCE-CORE:VIRTUAL-MODULE "radiance-test">) [fast-method]
27: ((SB-PCL::EMF ASDF/OPERATE:OPERATE) #<unused argument> #<unused argument> ASDF/LISP-ACTION:LOAD-OP "radiance-test")
28: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
29: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "radiance-test") [fast-method]
30: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {10032B9B6B}> :OVERRIDE T :KEY NIL :OVERRIDE-CACHE T :OVERRIDE-FORCING NIL)
31: ((LAMBDA NIL :IN ASDF/OPERATE:OPERATE))
32: (ASDF/SESSION:CALL-WITH-ASDF-SESSION #<FUNCTION (LAMBDA NIL :IN ASDF/OPERATE:OPERATE) {10032B6E1B}> :OVERRIDE NIL :KEY NIL :OVERRIDE-CACHE NIL :OVERRIDE-FORCING NIL)
33: ((:METHOD ASDF/OPERATE:OPERATE :AROUND (T T)) ASDF/LISP-ACTION:LOAD-OP "radiance-test") [fast-method]
34: (ASDF/OPERATE:LOAD-SYSTEM "radiance-test")
35: (SB-INT:SIMPLE-EVAL-IN-LEXENV (ASDF/OPERATE:LOAD-SYSTEM "radiance-test") #<NULL-LEXENV>)
36: (EVAL (ASDF/OPERATE:LOAD-SYSTEM "radiance-test"))
37: (SB-IMPL::PROCESS-EVAL/LOAD-OPTIONS ((:EVAL . "(require :asdf)") (:EVAL . #<(SIMPLE-ARRAY CHARACTER (258)) (asdf:initialize-source-registry (list :source-registry (list :tree (uiop:ensure-pathname "/gnu/store/9gvsa004n0pvdbjpdnz4yg89hk12xr6c-sbcl-radiance-2.1.2-2.a723783/share/common-lisp/sbcl/radiance" :t... {100B42EA2F}>) (:EVAL . "(asdf:load-system \"radiance\")") (:EVAL . "(asdf:load-system \"radiance-test\")") (:QUIT)))
38: (SB-IMPL::TOPLEVEL-INIT)
39: ((FLET SB-UNIX::BODY :IN SB-IMPL::START-LISP))
40: ((FLET "WITHOUT-INTERRUPTS-BODY-3" :IN SB-IMPL::START-LISP))
41: (SB-IMPL::%START-LISP)

Set an environment first like it tells you to. It's explained in the documentation.

Hi,

When I tried to follow it ended up with empty documentation.

function  (SETF ENVIRONMENT)  ENVIRONMENT 
No documentation provided.

By environment do you mean environment variables or I need to load the system and follow interactive setup?
If it's something other than env vars, tests require radiance full configuration first in that case.
I wonder why tests do not use default enviroment as far as I get this line right

(warn "Configuration for ~s not found-- creating from defaults." environment)

Thanks.

Hi,

I'm sorry to re-open the issue. Is there any way to run provided test
programatically without manual set-up of the Radiance? I still trying to resolve
tests in Guix CI which has not any manual interactions.

Thanks,
Oleg

sbcl --eval '(ql:quickload :radiance)' --eval '(setf (radiance:environment) "default")' --eval '(asdf:test-system :radiance)'

Hi,
Thank you for your responce.
Unfortunatly tests require radiance-contrib but radiance-contrib requires radiance

Attempt to build radiance-contrib without radiance

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
While evaluating the form starting at line 8, column 0
  of #P"/gnu/store/afzkma9x07gyw9xzgkm4dsqv52q25mjn-sbcl-radiance-contribs-1.0.0-1.710b3e1/share/common-lisp/sbcl/radiance-contribs/r-clip/r-clip.asd":
Unhandled MISSING-DEPENDENCY in thread #<SB-THREAD:THREAD tid=28 "main thread" RUNNING {10013A8003}>: Component "radiance" not found, required by NIL

Attempt to test radiance without radiance-contrib:

WARNING: Configuration for "default" not found-- creating from defaults.
Unhandled ASDF/FIND-COMPONENT:MISSING-COMPONENT in thread #<SB-THREAD:THREAD tid=32 "main thread" RUNNING
                                                             {100AF80073}>:
  Component "r-simple-ban" not found

Backtrace for: #<SB-THREAD:THREAD tid=32 "main thread" RUNNING {100AF80073}>

I have no quicklisp option, so here is my infokation steps:

sbcl --noinform \
--non-interactive \
--no-userinit \ 
--eval "(require :asdf)" \
--eval "(pushnew (uiop:getcwd) asdf:*central-registry*)" \
--eval "(pushnew (merge-pathnames "test/" (uiop:getcwd)) asdf:*central-registry*)" \
--eval "(asdf:load-system :radiance)" \
--eval "(setf (radiance:environment) "default")" \
--eval "(asdf:load-system :radiance-test)" \
--eval "(asdf:load-system :radiance-core)" \
--eval "(setf (radiance-core:environment) "default")" \
--eval "(asdf:test-system :radiance)" \
--eval "(quit)"