Commit e52dae2b authored by Pascal J. Bourguignon's avatar Pascal J. Bourguignon

Conditionalized test-op on asdf3.

parent f2b358bc
......@@ -46,7 +46,7 @@ specifications, like GRAY or other portability libraries.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.3.2"
:version "1.3.3"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clext/")
......
......@@ -45,7 +45,7 @@ This system would use CLOSER-MOP, which is not available on MOCL.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clext/")
......@@ -71,7 +71,7 @@ CLOS associations. It uses CLOSER-MOP.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clext/")
......
......@@ -45,7 +45,7 @@ to define CLOS associations. It uses CLOSER-MOP.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clext/")
......@@ -58,10 +58,10 @@ to define CLOS associations. It uses CLOSER-MOP.
"com.informatimago.common-lisp.cesarum"
"com.informatimago.clext.association")
:components ((:file "association-test"))
:perform (asdf:test-op
(o s)
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.ASSOCIATION")))
(uiop:symbol-call "COM.INFORMATIMAGO.CLEXT.ASSOCIATION.TEST" "TEST/ALL"))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(o s)
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.ASSOCIATION")))
(uiop:symbol-call "COM.INFORMATIMAGO.CLEXT.ASSOCIATION.TEST" "TEST/ALL"))))
;;;; THE END ;;;;
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,11 +58,11 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.clext")
:components ((:file "closer-weak-test" :depends-on nil))
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.CLOSER-WEAK.TEST")))
(uiop/package:symbol-call "COM.INFORMATIMAGO.CLEXT.CLOSER-WEAK.TEST"
"TEST/ALL"))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.CLOSER-WEAK.TEST")))
(uiop/package:symbol-call "COM.INFORMATIMAGO.CLEXT.CLOSER-WEAK.TEST"
"TEST/ALL"))))
;;;; THE END ;;;;
......@@ -35,7 +35,7 @@
(asdf:defsystem "com.informatimago.clext.run-program"
:description "An portable run-program function."
:author "Pascal J. Bourguignon"
:version "1.0.0"
:version "1.0.1"
:license "AGPL3"
:depends-on ("com.informatimago.common-lisp.cesarum")
:components ((:file "run-program"))
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,11 +58,11 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.clext.run-program")
:components ((:file "run-program-test"))
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
(dolist (p '( "COM.INFORMATIMAGO.CLEXT.RUN-PROGRAM.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
(dolist (p '( "COM.INFORMATIMAGO.CLEXT.RUN-PROGRAM.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
;;;; THE END ;;;;
......@@ -91,7 +91,7 @@ Journal
"algorithme" "en" "question" "a" "ete" "publie"
"en" "1960" "dans" "IBM" "Journal"))
(function string<))))
(test equal sorted-list stream-contents
(check equal sorted-list stream-contents
() "~%~20A=~S~%~20A=~S~%"
"sorted-list" sorted-list
"stream-contents" stream-contents)))
......@@ -120,16 +120,16 @@ Journal
(run-program "true" '() :wait nil :error "TESTERR.TXT")
(sleep 1)
(test equal '() (text-file-contents "TESTERR.TXT"))
(check equal '() (text-file-contents "TESTERR.TXT"))
(run-program "true" '() :wait t :error "TESTERR.TXT")
(test equal '() (text-file-contents "TESTERR.TXT"))
(check equal '() (text-file-contents "TESTERR.TXT"))
(let ((process (run-program "sh" '("-c" "echo error 1>&2")
:wait nil :input nil :output nil :error :stream)))
(test equal '("error")
(check equal '("error")
(unwind-protect
(text-stream-contents (process-error process))
(close (process-error process)))))
......@@ -138,7 +138,7 @@ Journal
(ignore-errors (delete-file "TESTERR.TXT"))
(run-program "sh" '("-c" "echo error 1>&2")
:wait t :input nil :output nil :error "TESTERR.TXT")
(test equal '("error") (text-file-contents "TESTERR.TXT"))
(check equal '("error") (text-file-contents "TESTERR.TXT"))
(with-open-file (err "TESTERR.TXT"
......@@ -147,7 +147,7 @@ Journal
)
(run-program "sh" '("-c" "echo error 1>&2")
:wait t :input nil :output nil :error err))
(test equal '("error") (text-file-contents "TESTERR.TXT"))
(check equal '("error") (text-file-contents "TESTERR.TXT"))
(run-program "printf" '("Hello\\nWorld\\n") :wait t)
......@@ -155,7 +155,7 @@ Journal
(run-program "printf" '("Hello\\nWorld\\n") :wait nil)
(let ((process (run-program "printf" '("Hello\\nWorld\\n") :wait nil :output :stream)))
(test equal '("Hello" "World")
(check equal '("Hello" "World")
(unwind-protect
(loop
:for line = (read-line (process-output process) nil nil)
......@@ -168,14 +168,14 @@ Journal
#+ccl :sharing #+ccl :lock)
(run-program "printf" '("Hello\\nWorld\\n") :wait nil :output out)
(sleep 1))
(test equal '("Hello" "World") (text-file-contents "TESTOUT.TXT"))
(check equal '("Hello" "World") (text-file-contents "TESTOUT.TXT"))
(with-open-file (out "TESTOUT.TXT"
:direction :output :if-does-not-exist :create :if-exists :supersede
#+ccl :sharing #+ccl :lock)
(run-program "printf" '("Hello\\nWorld\\n") :wait t :output out))
(test equal '("Hello" "World") (text-file-contents "TESTOUT.TXT"))
(check equal '("Hello" "World") (text-file-contents "TESTOUT.TXT"))
(run-program "sort" '() :environment '(("LC_CTYPE" . "C") ("LC_COLLATE" . "C"))
......
......@@ -42,7 +42,7 @@
:author "Pascal J. Bourguignon <pjb@informatimago.com>"
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:license "AGPL3"
:version "1.2.2"
:version "1.2.3"
:depends-on ()
:components ())
......@@ -60,7 +60,7 @@ should be made into implementation independant packages).
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.2.2"
:version "1.2.3"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Spring 2014")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clmisc/")
......
......@@ -37,6 +37,7 @@
;;;; along with this program. If not, see <http://www.gnu.org/licenses/>
;;;;
;;;;***************************************************************************
(in-package "COMMON-LISP-USER")
#-clisp
(asdf:defsystem "com.informatimago.clisp.test"
......@@ -46,7 +47,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,9 +59,8 @@
#+asdf-unicode :encoding #+asdf-unicode :utf-8
:depends-on ()
:components ()
:perform (asdf:test-op
(operation system)
(declare (ignore operation system))))
#+asdf3 :perform #+asdf3 (asdf:test-op (o s) (declare (ignore o s))))
#+clisp
(asdf:defsystem "com.informatimago.clisp.test"
......@@ -70,7 +70,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -83,11 +83,10 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.clisp")
:components ((:file "string-test" :depends-on ()))
:perform (asdf:test-op
(operation system)
(declare (ignore operation system))
(dolist (p '("COM.INFORMATIMAGO.CLISP.STRING.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
#+asdf3 :perform #+asdf3 (asdf:test-op (operation system)
(declare (ignore operation system))
(dolist (p '("COM.INFORMATIMAGO.CLISP.STRING.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
;;;; THE END ;;;;
......@@ -354,7 +354,7 @@ LEGAL: Copyright Pascal J. Bourguignon 2003 - 2004
) ;;+TYPE-CONVERSION-HASH+
(proclaim '(inline get-type-conversion-record))
(declaim (inline get-type-conversion-record))
(defun get-type-conversion-record (uffi-type)
"
PRIVATE
......
......@@ -342,7 +342,7 @@ LEGAL: Copyright Pascal J. Bourguignon 2003 - 2004
) ;;+TYPE-CONVERSION-HASH+
(proclaim '(inline get-type-conversion-record))
(declaim (inline get-type-conversion-record))
(defun get-type-conversion-record (uffi-type)
"
PRIVATE
......
......@@ -47,7 +47,7 @@ a format similar to what is used by LISTSERV.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.2.1"
:version "1.2.2"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.clmisc/")
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,11 +58,11 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.clmisc")
:components ((:file "resource-utilization-test" :depends-on ()))
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
(let ((*package* (find-package "COM.INFORMATIMAGO.CLMISC.RESOURCE-UTILIZATION.TEST")))
(uiop/package:symbol-call "COM.INFORMATIMAGO.CLMISC.RESOURCE-UTILIZATION.TEST"
"TEST/ALL"))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
(let ((*package* (find-package "COM.INFORMATIMAGO.CLMISC.RESOURCE-UTILIZATION.TEST")))
(uiop/package:symbol-call "COM.INFORMATIMAGO.CLMISC.RESOURCE-UTILIZATION.TEST"
"TEST/ALL"))))
;;;; THE END ;;;;
......@@ -41,7 +41,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2014")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago/")
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......
......@@ -44,7 +44,7 @@ Read Apple-Single and Apple-Double file formats.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Spring 2013")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.common-lisp.apple-file/")
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,11 +58,11 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.common-lisp.apple-file")
:components ((:file "apple-file-test" :depends-on nil))
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
(dolist (p '("COM.INFORMATIMAGO.COMMON-LISP.APPLE-FILE.APPLE-FILE.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
(dolist (p '("COM.INFORMATIMAGO.COMMON-LISP.APPLE-FILE.APPLE-FILE.TEST"))
(let ((*package* (find-package p)))
(uiop/package:symbol-call p "TEST/ALL")))))
;;;; THE END ;;;;
......@@ -41,7 +41,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.2.1"
:version "1.2.2"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.common-lisp.arithmetic/")
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,12 +58,12 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.common-lisp.arithmetic")
:components ()
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
;; (let ((*package* (find-package "TESTED-PACKAGE")))
;; (uiop/package:symbol-call "TESTED-PACKAGE"
;; "TEST/ALL"))
))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
;; (let ((*package* (find-package "TESTED-PACKAGE")))
;; (uiop/package:symbol-call "TESTED-PACKAGE"
;; "TEST/ALL"))
))
;;;; THE END ;;;;
......@@ -40,7 +40,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.2.1"
:version "1.2.2"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.common-lisp.bank/")
......
......@@ -45,7 +45,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.0.0"
:version "1.0.1"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir)
......@@ -58,12 +58,12 @@
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.common-lisp.bank")
:components ()
:perform (asdf/lisp-action:test-op
(operation system)
(declare (ignore operation system))
;; (let ((*package* (find-package "TESTED-PACKAGE")))
;; (uiop/package:symbol-call "TESTED-PACKAGE"
;; "TEST/ALL"))
))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(declare (ignore operation system))
;; (let ((*package* (find-package "TESTED-PACKAGE")))
;; (uiop/package:symbol-call "TESTED-PACKAGE"
;; "TEST/ALL"))
))
;;;; THE END ;;;;
......@@ -127,7 +127,7 @@ RETURN: A new copy of the ORIGINAL bset.
(defmacro bsref (bsa i) `(aref ,bsa ,i))
(proclaim '(inline last-bitset))
(declaim (inline last-bitset))
(defun last-bitset (bitsets)
"
RETURN: The index of the last bitset in the BITSETS array.
......@@ -135,7 +135,7 @@ RETURN: The index of the last bitset in the BITSETS array.
(1- (array-dimension bitsets 0)))
(proclaim '(inline elem-to-bitset))
(declaim (inline elem-to-bitset))
(defun elem-to-bitset (element)
"
RETURN: The index of the bitset where element is stored.
......@@ -148,12 +148,12 @@ NOTE: 0 --> 0
(truncate element +bit-per-bitset+))
(proclaim '(inline elem-to-bit))
(declaim (inline elem-to-bit))
(defun elem-to-bit (element)
(mod element +bit-per-bitset+))
(proclaim '(inline bitset-to-elem))
(declaim (inline bitset-to-elem))
(defun bitset-to-elem (index)
"
RETURN: The maximum element + 1 that can be stored in the bitset at INDEX.
......
......@@ -62,7 +62,7 @@ all written in 100% conforming Common Lisp.
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.3.3"
:version "1.3.4"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Autumn 2010")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.common-lisp.cesarum/")
......
......@@ -46,7 +46,7 @@
:maintainer "Pascal J. Bourguignon <pjb@informatimago.com>"
:licence "AGPL3"
;; component attributes:
:version "1.3.3"
:version "1.3.4"
:properties ((#:author-email . "pjb@informatimago.com")
(#:date . "Winter 2015")
((#:albert #:output-dir) . "/tmp/documentation/com.informatimago.common-lisp.cesarum-test/")
......@@ -70,24 +70,24 @@
(:file "string-test" :depends-on ())
(:file "set-test" :depends-on ())
(:file "index-set-test" :depends-on ("set-test")))
:perform (asdf:test-op
(operation system)
(dolist (p '("COM.INFORMATIMAGO.COMMON-LISP.CESARUM.A-STAR.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.CACHE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.DATE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.DICTIONARY.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.FILE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LLRBTREE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PEEK-STREAM.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PRIORITY-QUEUE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.SEQUENCE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.STRING.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.SET.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.INDEX-SET.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.ASCII.TEST"))
(let ((*package* (find-package p)))
(uiop:symbol-call p "TEST/ALL")))))
#+asdf3 :perform #+asdf3 (asdf:test-op
(operation system)
(dolist (p '("COM.INFORMATIMAGO.COMMON-LISP.CESARUM.A-STAR.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.CACHE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.DATE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.DICTIONARY.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.FILE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LIST.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.LLRBTREE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PEEK-STREAM.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.PRIORITY-QUEUE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.SEQUENCE.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.STRING.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.SET.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.INDEX-SET.TEST"
"COM.INFORMATIMAGO.COMMON-LISP.CESARUM.ASCII.TEST"))
(let ((*package* (find-package p)))
(uiop:symbol-call p "TEST/ALL")))))
;;;; THE END ;;;;
......@@ -263,7 +263,7 @@ switches to hash-tables, and below which it switches to A-lists."))
:accessor adaptating-dictionary-limit))
(:documentation "A dictionary that changes between an A-list implementation and a hash-table implementation depending on the number of entries."))
(defgeneric adaptating-dictionary-adapt (dictionary))
(defmethod adaptating-dictionary-adapt ((dictionary adaptating-dictionary))
(flet ((copy-dictionary (dictionary type)
(make-dictionary type
......
......@@ -60,71 +60,71 @@
(assert-true (equal-range (make-range :start 0 :end -1)
(make-range :first 0 :last -1)))
(test = (range-start (make-range :start 1 :count 3)) 1)
(test = (range-last (make-range :start 1 :count 3)) 3)
(test = (range-end (make-range :start 1 :count 3)) 4)
(test = (range-count (make-range :start 1 :count 3)) 3)
(test = (range-start (copy-range (make-range :start 1 :count 3))) 1)
(test = (range-last (copy-range (make-range :start 1 :count 3))) 3)
(test = (range-end (copy-range (make-range :start 1 :count 3))) 4)
(test = (range-count (copy-range (make-range :start 1 :count 3))) 3)
(test = (range-start (make-range :start 11 :last 13)) 11)
(test = (range-last (make-range :start 11 :last 13)) 13)
(test = (range-end (make-range :start 11 :last 13)) 14)
(test = (range-count (make-range :start 11 :last 13)) 3)
(test = (range-start (copy-range (make-range :start 11 :last 13))) 11)
(test = (range-last (copy-range (make-range :start 11 :last 13))) 13)
(test = (range-end (copy-range (make-range :start 11 :last 13))) 14)
(test = (range-count (copy-range (make-range :start 11 :last 13))) 3)
(test = (range-start (make-range :start 11 :end 14)) 11)
(test = (range-last (make-range :start 11 :end 14)) 13)
(test = (range-end (make-range :start 11 :end 14)) 14)
(test = (range-count (make-range :start 11 :end 14)) 3)
(test = (range-start (copy-range (make-range :start 11 :end 14))) 11)
(test = (range-last (copy-range (make-range :start 11 :end 14))) 13)
(test = (range-end (copy-range (make-range :start 11 :end 14))) 14)
(test = (range-count (copy-range (make-range :start 11 :end 14))) 3)
(test = (range-start (make-range :count 3 :last 13)) 11)
(test = (range-last (make-range :count 3 :last 13)) 13)
(test = (range-end (make-range :count 3 :last 13)) 14)
(test = (range-count (make-range :count 3 :last 13)) 3)
(test = (range-start (copy-range (make-range :count 3 :last 13))) 11)
(test = (range-last (copy-range (make-range :count 3 :last 13))) 13)
(test = (range-end (copy-range (make-range :count 3 :last 13))) 14)
(test = (range-count (copy-range (make-range :count 3 :last 13))) 3)
(test = (range-start (make-range :count 3 :end 14)) 11)
(test = (range-last (make-range :count 3 :end 14)) 13)
(test = (range-end (make-range :count 3 :end 14)) 14)
(test = (range-count (make-range :count 3 :end 14)) 3)
(test = (range-start (copy-range (make-range :count 3 :end 14))) 11)
(test = (range-last (copy-range (make-range :count 3 :end 14))) 13)
(test = (range-end (copy-range (make-range :count 3 :end 14))) 14)
(test = (range-count (copy-range (make-range :count 3 :end 14))) 3))
(check = (range-start (make-range :start 1 :count 3)) 1)
(check = (range-last (make-range :start 1 :count 3)) 3)
(check = (range-end (make-range :start 1 :count 3)) 4)
(check = (range-count (make-range :start 1 :count 3)) 3)
(check = (range-start (copy-range (make-range :start 1 :count 3))) 1)
(check = (range-last (copy-range (make-range :start 1 :count 3))) 3)
(check = (range-end (copy-range (make-range :start 1 :count 3))) 4)
(check = (range-count (copy-range (make-range :start 1 :count 3))) 3)
(check = (range-start (make-range :start 11 :last 13)) 11)
(check = (range-last (make-range :start 11 :last 13)) 13)
(check = (range-end (make-range :start 11 :last 13)) 14)
(check = (range-count (make-range :start 11 :last 13)) 3)
(check = (range-start (copy-range (make-range :start 11 :last 13))) 11)
(check = (range-last (copy-range (make-range :start 11 :last 13))) 13)
(check = (range-end (copy-range (make-range :start 11 :last 13))) 14)
(check = (range-count (copy-range (make-range :start 11 :last 13))) 3)