tests: add tests for nitin
authorJean Privat <jean@pryen.org>
Tue, 25 Apr 2017 00:17:17 +0000 (20:17 -0400)
committerJean Privat <jean@pryen.org>
Tue, 25 Apr 2017 00:17:17 +0000 (20:17 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

tests/listfull.sh
tests/niti.skip
tests/nitin.inputs [new file with mode: 0644]
tests/nitvm.skip
tests/sav/nitin.res [new file with mode: 0644]

index 841fdad..edbc37e 100755 (executable)
@@ -14,6 +14,7 @@ ls -1 -- "$@" \
        ../contrib/friendz/src/solver_cmd.nit \
        ../contrib/neo_doxygen/src/tests/neo_doxygen_*.nit \
        ../contrib/pep8analysis/src/pep8analysis.nit \
+       ../contrib/nitin/nitin.nit \
        ../contrib/nitiwiki/src/nitiwiki.nit \
        *.nit \
        | grep -v ../lib/popcorn/examples/
index d93ce27..b3a9b20 100644 (file)
@@ -7,6 +7,7 @@ nit_args6
 nit_args8
 nitvm_args1
 nitvm_args3
+nitin
 nitc_args1
 nitc_args3
 nitc_args5
diff --git a/tests/nitin.inputs b/tests/nitin.inputs
new file mode 100644 (file)
index 0000000..266b05c
--- /dev/null
@@ -0,0 +1,47 @@
+print 5+2
+
+for i in [0..5[ do
+print i
+end
+
+do
+var sum = 0
+for i in [0..50[ do
+sum += i
+end
+print sum
+end
+
+class A
+fun foo do
+print "hello"
+end
+end
+(new A).foo
+
+class
+end
+class A
+end
+redef class A
+redef fun foo do print "Bye"
+end
+(new A).foo
+
+foo
+fun foo do
+print "I'm sys"
+end
+foo
+
+redef class Sys
+var my_int: Int is writable
+end
+my_int = 5
+print my_int
+
+print([0..10[.to_a.to_json)
+import json
+print([0..10[.to_a.to_json)
+
+%$^&
index b8ae2ec..b312543 100644 (file)
@@ -7,6 +7,7 @@ nit_args6
 nit_args8
 nitvm_args1
 nitvm_args3
+nitin
 nitc_args1
 nitc_args3
 nitc_args5
diff --git a/tests/sav/nitin.res b/tests/sav/nitin.res
new file mode 100644 (file)
index 0000000..0e83a4c
--- /dev/null
@@ -0,0 +1,26 @@
+\e[0;33m1,7\e[0m: Redef Error: `A` is an imported class. Add the `redef` keyword to refine it.
+       class \e[1;31mA\e[0m
+             ^
+\e[0;33m1,1--3\e[0m: Error: method or variable `foo` unknown in `Sys`.
+       \e[1;31mfoo\e[0m
+       ^
+\e[0;33m1,20--26\e[0m: Error: method `to_json` does not exists in `Array[Int]`.
+       print([0..10[.to_a.\e[1;31mto_json\e[0m)
+                          ^
+-->7
+-->-->......0
+1
+2
+3
+4
+-->-->..................1225
+-->-->............-->hello
+-->-->...      \e[0;31mend\e[0m
+       ^: Syntax Error: unexpected keyword 'end'.
+-->...-->......-->Bye
+-->-->-->......-->I'm sys
+-->-->......-->-->5
+-->-->-->-->[0,1,2,3,4,5,6,7,8,9]
+-->--> \e[0;31m%\e[0m$^&
+       ^: Syntax Error: unexpected operator '%'.
+-->
\ No newline at end of file