From 6774610569ba2145ae44c0e592a3fb4f39e9a171 Mon Sep 17 00:00:00 2001 From: Mitchell Plamann Date: Sat, 28 Mar 2015 18:35:43 -0400 Subject: [PATCH] Added unit tests. Meant to be run with nodeunit --- test/ishr.c0 | 3 +++ test/ishr.c0.bc0 | 24 ++++++++++++++++++++++++ test/ishr.c0.bc0out | 1 + test/ishr.c0.c0out | 1 + test/ishr.c0.ex | Bin 0 -> 13263 bytes test/tests.js | 23 +++++++++++++++++++++++ 6 files changed, 52 insertions(+) create mode 100644 test/ishr.c0 create mode 100644 test/ishr.c0.bc0 create mode 100644 test/ishr.c0.bc0out create mode 100644 test/ishr.c0.c0out create mode 100755 test/ishr.c0.ex create mode 100644 test/tests.js diff --git a/test/ishr.c0 b/test/ishr.c0 new file mode 100644 index 0000000..884a533 --- /dev/null +++ b/test/ishr.c0 @@ -0,0 +1,3 @@ +int main () { + return -1 >> 1; /* should return -1 */ +} diff --git a/test/ishr.c0.bc0 b/test/ishr.c0.bc0 new file mode 100644 index 0000000..34f85f9 --- /dev/null +++ b/test/ishr.c0.bc0 @@ -0,0 +1,24 @@ +C0 C0 FF EE # magic number +00 09 # version 4, arch = 1 (64 bits) + +00 00 # int pool count +# int pool + +00 00 # string pool total size +# string pool + +00 01 # function count +# function_pool + +#
+00 00 # number of arguments = 0 +00 00 # number of local variables = 0 +00 06 # code length = 6 bytes +10 FF # bipush -1 # -1 +10 01 # bipush 1 # 1 +7A # ishr # (-(1) >> 1) +B0 # return # + +00 00 # native count +# native pool + diff --git a/test/ishr.c0.bc0out b/test/ishr.c0.bc0out new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/test/ishr.c0.bc0out @@ -0,0 +1 @@ +-1 diff --git a/test/ishr.c0.c0out b/test/ishr.c0.c0out new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/test/ishr.c0.c0out @@ -0,0 +1 @@ +-1 diff --git a/test/ishr.c0.ex b/test/ishr.c0.ex new file mode 100755 index 0000000000000000000000000000000000000000..a8e8013efbe76f579332b956c4a8936fb19d0f63 GIT binary patch literal 13263 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 1 gave " + result + ", not -1"); + test.done(); +}