Add a whole bunch of tests I've been using for recent additions

Mon, 22 Nov 2010 04:56:38 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Mon, 22 Nov 2010 04:56:38 +0000
changeset 126
07ec490c7a6f
parent 125
39b6ba804009
child 127
9a4c549c7828

Add a whole bunch of tests I've been using for recent additions

tests/fail/assert.lua file | annotate | diff | comparison | revisions
tests/pass/assert.lua file | annotate | diff | comparison | revisions
tests/pass/concat.lua file | annotate | diff | comparison | revisions
tests/pass/gmatch.lua file | annotate | diff | comparison | revisions
tests/pass/length.lua file | annotate | diff | comparison | revisions
tests/pass/op_close.lua file | annotate | diff | comparison | revisions
tests/pass/upvalue.lua file | annotate | diff | comparison | revisions
tests/pass/vararg.lua file | annotate | diff | comparison | revisions
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/fail/assert.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,1 @@
+assert(false, "Yep, assert works.");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/assert.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,1 @@
+assert(true, "true is not true!");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/concat.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,1 @@
+assert(("foo".."bar") == "foobar");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/gmatch.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,10 @@
+local i = 1;
+local s = "the rain in spain stays mainly in the plain";
+local st = { "the", "rain", "in", "spain", "stays", "mainly", "in", "the", "plain" };
+for word in string.gmatch(s, "%a+") do
+	print(word)
+	assert(word == st[i], word.." == "..st[i]);
+	i = i + 1;
+end
+
+assert(i == 10, i.." == 10");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/length.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,1 @@
+assert(#("hello") == 5, "#('hello') == 5");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/op_close.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,15 @@
+local f = {};
+for i=1,2 do
+	local p;
+	f[i] = function (set)
+		if set then
+			p = set;
+		end
+		return p;
+	end;
+end
+
+assert(f[1]("foo") == "foo");
+assert(f[2]("bar") == "bar");
+assert(f[1]() == "foo");
+assert(f[2]() == "bar");
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/upvalue.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,17 @@
+local u;
+local f = {};
+for i=1,2 do
+	f[i] = function (set)
+		if set then
+			u = set;
+		end
+		return u;
+	end;
+end
+
+assert(f[1]("foo") == "foo");
+assert(f[2]() == "foo");
+
+assert(f[2]("bar") == "bar");
+assert(f[1]() == "bar");
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/pass/vararg.lua	Mon Nov 22 04:56:38 2010 +0000
@@ -0,0 +1,16 @@
+function foo(a, b, ...)
+	assert(a == 1);
+	assert(b == 2);
+	local c, d = ...;
+	assert(c == 3);
+	assert(d == 4);
+	return a, b, ...;
+end
+
+local a, b, c, d = foo(1, 2, 3, 4);
+assert(a == 1);
+assert(b == 2);
+print("c is", c);
+assert(c == 3);
+assert(d == 4);
+

mercurial