change test framework to use files for in and out (s-exp)

This commit is contained in:
Torsten Ruger
2015-09-18 21:55:02 +03:00
parent 396a843a5e
commit 22e3c59674
80 changed files with 946 additions and 13 deletions

View File

@ -0,0 +1,34 @@
while( n > 1)
tmp = a
a = b
b = tmp + b
puts(b)
n = n - 1
end
-- -- --
s(:list, [s(:while,
s(:condition,
s(:operator, ">",
s(:name, "n"),
s(:int, 1))),
s(:expressions,
s(:assign,
s(:name, "tmp"),
s(:name, "a")),
s(:assign,
s(:name, "a"),
s(:name, "b")),
s(:assign,
s(:name, "b"),
s(:operator, "+",
s(:name, "tmp"),
s(:name, "b"))),
s(:call,
s(:name, "puts"),
s(:arguments,
s(:name, "b"))),
s(:assign,
s(:name, "n"),
s(:operator, "-",
s(:name, "n"),
s(:int, 1)))))])

View File

@ -0,0 +1,16 @@
while(1)
tmp = a
puts(b)
end
-- -- --
s(:list, [s(:while,
s(:condition,
s(:int, 1)),
s(:expressions,
s(:assign,
s(:name, "tmp"),
s(:name, "a")),
s(:call,
s(:name, "puts"),
s(:arguments,
s(:name, "b")))))])

View File

@ -0,0 +1,22 @@
while(1)
tmp = String.new()
tmp.puts(i)
end
-- -- --
s(:list, [s(:while,
s(:condition,
s(:int, 1)),
s(:expressions,
s(:assign,
s(:name, "tmp"),
s(:call,
s(:name, "new"),
s(:arguments),
s(:receiver,
s(:module, "String")))),
s(:call,
s(:name, "puts"),
s(:arguments,
s(:name, "i")),
s(:receiver,
s(:name, "tmp")))))])