tests: add test-ansi suite stub
For now contains readtable case tests. Signed-off-by: Daniel Kochmański <daniel@turtleware.eu>
This commit is contained in:
parent
f9dc27e3d5
commit
18ee04ed2f
2 changed files with 36 additions and 0 deletions
|
|
@ -29,6 +29,7 @@
|
|||
(load "universe.lsp")
|
||||
(load "ansi-aux.lsp")
|
||||
|
||||
(load "test-ansi.lsp")
|
||||
(load "sf262--declaim-type-foo-setf-foo.lsp")
|
||||
(load "sf272--style-warning-argument-order.lsp")
|
||||
(load "sf276--write-hash-readably.lsp")
|
||||
|
|
|
|||
35
src/tests/bugs/test-ansi.lsp
Normal file
35
src/tests/bugs/test-ansi.lsp
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
(in-package :cl-test)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;
|
||||
;; Readtable tests ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(symbol-macrolet ((lookup-table
|
||||
'(:SYMBOL ("zebra" "Zebra" "ZEBRA" "zebr\\a" "zebr\\A" "ZEBR\\a" "ZEBR\\A" "Zebr\\a" "Zebr\\A")
|
||||
:UPCASE (|ZEBRA| |ZEBRA| |ZEBRA| |ZEBRa| |ZEBRA| |ZEBRa| |ZEBRA| |ZEBRa| |ZEBRA|)
|
||||
:DOWNCASE (|zebra| |zebra| |zebra| |zebra| |zebrA| |zebra| |zebrA| |zebra| |zebrA|)
|
||||
:PRESERVE (|zebra| |Zebra| |ZEBRA| |zebra| |zebrA| |ZEBRa| |ZEBRA| |Zebra| |ZebrA|)
|
||||
:INVERT (|ZEBRA| |Zebra| |zebra| |ZEBRa| |ZEBRA| |zebra| |zebrA| |Zebra| |ZebrA|))))
|
||||
(macrolet
|
||||
((def-readtable-case-test (reader-case)
|
||||
`(deftest ,(concatenate 'string "TEST-ANSI.READTABLE.CASE-"
|
||||
(symbol-name reader-case))
|
||||
(let ((*readtable* (copy-readtable)))
|
||||
(setf (readtable-case *readtable*) ,reader-case)
|
||||
(mapcar #'(lambda (x)
|
||||
(read-from-string x))
|
||||
',(getf lookup-table :symbol)))
|
||||
,(getf lookup-table reader-case))))
|
||||
(def-readtable-case-test :upcase)
|
||||
(def-readtable-case-test :downcase)
|
||||
(def-readtable-case-test :preserve)
|
||||
(def-readtable-case-test :invert)))
|
||||
|
||||
;; when readtable was :invert characters got inverted too
|
||||
(deftest test-ansi.readtable.invert-char
|
||||
(let ((*readtable* (copy-readtable)))
|
||||
(setf (readtable-case *readtable*) :invert)
|
||||
(read-from-string "#\\a"))
|
||||
#\a 3)
|
||||
|
||||
|
||||
Loading…
Add table
Reference in a new issue