tests: new base_vararg, remove test_star
authorJean Privat <jean@pryen.org>
Thu, 23 Jul 2009 03:03:18 +0000 (23:03 -0400)
committerJean Privat <jean@pryen.org>
Fri, 24 Jul 2009 10:36:56 +0000 (06:36 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

12 files changed:
tests/base_vararg.nit [new file with mode: 0644]
tests/sav/base_vararg.sav [new file with mode: 0644]
tests/sav/base_vararg_alt1.sav [new file with mode: 0644]
tests/sav/base_vararg_alt2.sav [new file with mode: 0644]
tests/sav/base_vararg_alt3.sav [new file with mode: 0644]
tests/sav/base_vararg_alt4.sav [new file with mode: 0644]
tests/sav/base_vararg_alt5.sav [new file with mode: 0644]
tests/sav/base_vararg_alt6.sav [new file with mode: 0644]
tests/sav/base_vararg_alt7.sav [new file with mode: 0644]
tests/sav/base_vararg_alt8.sav [new file with mode: 0644]
tests/sav/test_star.sav [deleted file]
tests/test_star.nit [deleted file]

diff --git a/tests/base_vararg.nit b/tests/base_vararg.nit
new file mode 100644 (file)
index 0000000..67c5a63
--- /dev/null
@@ -0,0 +1,66 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Copyright 2004-2009 Jean Privat <jean@pryen.org>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import array
+
+fun foo(a: Char...)
+do
+       for x in a do x.output
+       '\n'.output
+end
+
+fun bar(b: Char, a: Char...)
+do
+       b.output
+       ','.output
+       for x in a do x.output
+       '\n'.output
+end
+
+fun baz(a: Char..., b: Char)
+do
+       for x in a do x.output
+       ','.output
+       b.output
+       '\n'.output
+end
+
+fun foobar(b: Char, a: Char..., c: Char)
+do
+       b.output
+       ','.output
+       for x in a do x.output
+       ','.output
+       c.output
+       '\n'.output
+end
+
+#alt1#foo
+foo('1')
+foo('1','2')
+#alt2#bar
+#alt3#bar('1')
+bar('1','2')
+bar('1','2','3')
+#alt4#baz
+#alt5#baz('1')
+baz('1','2')
+baz('1','2','3')
+#alt6#foobar
+#alt7#foobar('1')
+#alt8#foobar('1','2')
+foobar('1','2','3')
+foobar('1','2','3','4')
diff --git a/tests/sav/base_vararg.sav b/tests/sav/base_vararg.sav
new file mode 100644 (file)
index 0000000..fe829c9
--- /dev/null
@@ -0,0 +1,8 @@
+1
+12
+1,2
+1,23
+1,2
+12,3
+1,2,3
+1,23,4
diff --git a/tests/sav/base_vararg_alt1.sav b/tests/sav/base_vararg_alt1.sav
new file mode 100644 (file)
index 0000000..40af9db
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt1.nit:51,1--3: Error: 'foo' arity missmatch.
diff --git a/tests/sav/base_vararg_alt2.sav b/tests/sav/base_vararg_alt2.sav
new file mode 100644 (file)
index 0000000..fc8b14f
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt2.nit:54,1--3: Error: 'bar' arity missmatch.
diff --git a/tests/sav/base_vararg_alt3.sav b/tests/sav/base_vararg_alt3.sav
new file mode 100644 (file)
index 0000000..7a7fbfe
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt3.nit:55,1--7: Error: 'bar' arity missmatch.
diff --git a/tests/sav/base_vararg_alt4.sav b/tests/sav/base_vararg_alt4.sav
new file mode 100644 (file)
index 0000000..7858a66
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt4.nit:58,1--3: Error: 'baz' arity missmatch.
diff --git a/tests/sav/base_vararg_alt5.sav b/tests/sav/base_vararg_alt5.sav
new file mode 100644 (file)
index 0000000..74bc803
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt5.nit:59,1--7: Error: 'baz' arity missmatch.
diff --git a/tests/sav/base_vararg_alt6.sav b/tests/sav/base_vararg_alt6.sav
new file mode 100644 (file)
index 0000000..04f59cc
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt6.nit:62,1--6: Error: 'foobar' arity missmatch.
diff --git a/tests/sav/base_vararg_alt7.sav b/tests/sav/base_vararg_alt7.sav
new file mode 100644 (file)
index 0000000..2e037d4
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt7.nit:63,1--10: Error: 'foobar' arity missmatch.
diff --git a/tests/sav/base_vararg_alt8.sav b/tests/sav/base_vararg_alt8.sav
new file mode 100644 (file)
index 0000000..aca986c
--- /dev/null
@@ -0,0 +1 @@
+alt/base_vararg_alt8.nit:64,1--14: Error: 'foobar' arity missmatch.
diff --git a/tests/sav/test_star.sav b/tests/sav/test_star.sav
deleted file mode 100644 (file)
index 8e1756f..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-1
-12
-1, 2
-1, 23
-1, 2
-12, 3
-3, 2, 1
-4, 23, 1
diff --git a/tests/test_star.nit b/tests/test_star.nit
deleted file mode 100644 (file)
index c6dfc74..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-# This file is part of NIT ( http://www.nitlanguage.org ).
-#
-# Copyright 2004-2008 Jean Privat <jean@pryen.org>
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-fun foo(a: Int...)
-    do
-       print(a)
-    end
-
-fun bar(b: Int, a: Int...)
-    do
-       print("{b}, {a}")
-    end
-
-fun baz(a: Int..., b: Int)
-    do
-       print("{a}, {b}")
-    end
-
-fun foobar(b: Int, a: Int..., c: Int)
-    do
-       print("{c}, {a}, {b}")
-    end
-
-foo(1)
-foo(1,2)
-bar(1,2)
-bar(1,2,3)
-baz(1,2)
-baz(1,2,3)
-foobar(1,2,3)
-foobar(1,2,3,4)