summaryrefslogtreecommitdiff
path: root/testing.sh
diff options
context:
space:
mode:
authorkdx <kikoodx@paranoici.org>2023-06-10 01:30:17 +0200
committerkdx <kikoodx@paranoici.org>2023-06-10 01:30:17 +0200
commitdb48a58769ac267a8de49f456cb4e5b27bfddb40 (patch)
treeb42796d9b04049296d451c458adb4105facaf17e /testing.sh
parent0e5b99fbbb46d5e91feca6f6f862f11359b92aa7 (diff)
downloadgolem-db48a58769ac267a8de49f456cb4e5b27bfddb40.tar.gz
global assign
Diffstat (limited to 'testing.sh')
-rwxr-xr-xtesting.sh19
1 files changed, 12 insertions, 7 deletions
diff --git a/testing.sh b/testing.sh
index d579990..e846bde 100755
--- a/testing.sh
+++ b/testing.sh
@@ -1,18 +1,23 @@
#!/bin/sh
function test() {
- CODE="$1"
+ QUIET="$1"
+ CODE="$2"
echo "--- $CODE ---"
./build/golem "$CODE" >"build/tmp.orgaasm"
- cat "build/tmp.orgaasm"
+ [ "$QUIET" != "-q" ] && cat "build/tmp.orgaasm"
orgaasm "build/tmp.orgaasm" "build/tmp.rom"
orgaemu "build/tmp.rom"
- echo ""
+ [ "$QUIET" != "-q" ] && echo ""
}
tup || exit 1
-test "main(){5 + 2; return 4;}"
-test "main(){6 + 3;}"
-test "main(){'a' - 'b';}"
-test "main(){ fizz(50 + buzz() - 3) * 4; } fizz() { return 3; } buzz() { return 42; }"
+test "$1" "main(){5 + 2; return 4;}"
+test "$1" "main(){6 + 3;}"
+test "$1" "main(){'a' - 'b';}"
+test "$1" "main(){ fizz(50 + buzz() - 3) * 4; } fizz() { return 3; } buzz() { return 42; }"
+test "$1" "global abc; main(){ return abc; }"
+test "$1" "global abc = 5; main(){ return abc; }"
+test "$1" "main(){ return abc; } global abc = 5;"
+test "$1" "global abc = 5; main(){ inc(); return abc; } inc() { abc = abc + 1; }"
rm -f build/tmp.*