Jelajahi Sumber

Add tests for IO

Hikaru Ikuta 3 tahun lalu
induk
melakukan
6de7911b7c
2 mengubah file dengan 44 tambahan dan 0 penghapusan
  1. 2 0
      test/Makefile
  2. 42 0
      test/test2.lisp

+ 2 - 0
test/Makefile

@@ -1,5 +1,7 @@
 test1: test1.lisp qemu.sh tcat
 	sh qemu.sh test1.lisp
+test2: test2.lisp qemu.sh tcat
+	sh qemu.sh test2.lisp
 eval10: eval10.lisp qemu.sh tcat
 	sh qemu.sh eval10.lisp
 eval15: eval15.lisp qemu.sh tcat

+ 42 - 0
test/test2.lisp

@@ -0,0 +1,42 @@
+(READ)AAA
+(READ)(1 (2 3) 4)
+(READ)
+
+  AAA
+(READ)
+
+  (1 (2 3) 4)
+(CAR (READ))(1 (2 3) 4)
+(CDR (READ))(1 (2 3) 4)
+(CONS (READ) (CONS (QUOTE A) NIL))B
+(CONS (READ) (CONS (QUOTE A) NIL))(1 (2 3) 4)
+(ATOM (READ))A
+(ATOM (READ))(1 2)
+(EQ (QUOTE A) (READ))A
+(EQ (QUOTE B) (READ))A
+(PRINT (QUOTE A))
+(PRINT (QUOTE (1 2)))
+((LAMBDA () ())
+ (PRINT (QUOTE A))
+ (PRINT (QUOTE B))
+ (PRINT)
+ (PRINT (QUOTE C))
+ (PRINT (QUOTE (1 2 3)))
+ (PRINT))
+(PRINT (READ))AAA
+(PRINT (READ))(1 (2 3) 4)
+(PRINT)
+(PRINT (PRINT))
+(PRINT (PRINT (QUOTE A)))
+((LAMBDA (LOOP) (LOOP LOOP))
+ (QUOTE (LAMBDA (LOOP)
+          ((LAMBDA () ())
+           (PRINT (QUOTE >))
+           (PRINT (CONS (QUOTE INPUT) (CONS (READ) NIL)))
+           (PRINT)
+           (LOOP LOOP)))))
+A
+B
+C
+(1 2)
+(1 (2 3) 4)