[lift-devel] Problems to run Lift with SBCL 1.0.45

Dieter Kaiser drdieterkaiser at web.de
Sun May 8 22:12:32 UTC 2011


I am a developer of the computer algebra system Maxima and I am
searching for a framework to test the Lisp code. Maxima already has a
big testsuite, but it is not implemented on the Lisp level.

I have downloaded the latest version of Lift from git, but I do not get
it to run as expected. I can define some tests and all seems to work
nice. I am working with SBCL 1.0.45. The following shows a sample
session:

--- First I am loading Maxima.

* (require :asdf)
("ASDF")

* (load "kmaxima")
; loading system definition
from /home/dieter/Lisp/kMaxima/kmaxima/kmaxima.asd
; into #<PACKAGE "ASDF0">
; registering #<SYSTEM KMAXIMA> as KMAXIMA
T

--- Second I am loading a file with tests.
--- I get a warning about an undefined variable.

* (load "tests/second.lisp")
Start: MFUNCTIONP
Start: FIXNUMP
Start: ALPHABETP
Start: MMINUSP
Start: MLISTP
Start: GETPROP

; in: LAMBDA NIL
;     (LIFT:ENSURE-SAME KMAXIMA-TESTS::LL '((KMAXIMA::MLIST)))
; --> BLOCK FLET LOOP BLOCK LET MULTIPLE-VALUE-LIST 
; ==>
;   (MULTIPLE-VALUE-CALL #'LIST KMAXIMA-TESTS::LL)
; 
; caught WARNING:
;   undefined variable: LL
; 
; compilation unit finished
;   Undefined variable:
;     LL
;   caught 1 WARNING condition

Start: ADD2LNC
T

--- The tests are defined in the package kmaxima-tests.

* (in-package :kmaxima-tests)
#<PACKAGE "KMAXIMA-TESTS">

--- When I run all tests all I get three failures.

* (run-tests :suite 'mutils)
Start: MUTILS
Start: GETALIAS
Start: ADD2LNC
Start: GETPROP
Start: MLISTP
Start: MMINUSP
Start: ALPHABETP
Start: FIXNUMP
Start: MFUNCTIONP
#<Results for MUTILS 27 Tests, 3 Failures>

--- The error is the unbound variable ll.

* (describe *)
Test Report for MUTILS: 27 tests run, 3 Errors.

ERROR  : add2lnc : test-1
  
  Condition    : The variable LL is unbound.
  During       : TESTING
  Code         : 
  ((ENSURE-SAME LL '((MLIST))))
  
ERROR  : add2lnc : test-2
  
  Condition    : The variable LL is unbound.
  During       : TESTING
  Code         : 
  ((ENSURE-SAME '((MLIST)) LL))
  
ERROR  : add2lnc : test-3
  
  Condition    : The variable LL is unbound.
  During       : TESTING
  Code         : 
  ((ENSURE-SAME '((MLIST) $A) (SETQ LL (ADD2LNC '$A LL))))
  
Test Report for MUTILS: 27 tests run, 3 Errors.

--- This is the test which fails.

(deftestsuite add2lnc (mutils)
  ((ll '((mlist))))
  (:test ((ensure-same ll '((mlist)))))
  (:tests
    ((ensure-same '((mlist)) ll))
    ((ensure-same '((mlist) $a) (setq ll (add2lnc '$a ll))))))


I get the same error with an example from the Users's Guide.

* (deftestsuite test-slots () 
    ((a 1) (b 2) (c (+ a b))) 
    (:test ((ensure-same (+ a b) c))))

; in: LAMBDA NIL
;     (+ A B)
; 
; caught WARNING:
;   undefined variable: A
; 
; caught WARNING:
;   undefined variable: B
; 
; compilation unit finished
;   Undefined variables:
;     A B
;   caught 2 WARNING conditions
; 
; caught WARNING:
;   undefined variable: A
; 
; caught WARNING:
;   undefined variable: B

;     (ENSURE-SAME (+ A B) C)
; --> BLOCK FLET LOOP BLOCK LET LET MULTIPLE-VALUE-LIST 
; ==>
;   (MULTIPLE-VALUE-CALL #'LIST C)
; 
; caught WARNING:
;   undefined variable: C
; 
; compilation unit finished
;   Undefined variables:
;     A B C
;   caught 3 WARNING conditions

#<Results for TEST-SLOTS 0 Tests, 1 Error>

I have no idea what I am doing wrong.

Dieter Kaiser






More information about the lift-devel mailing list