on master help sign in
* Make regression test029 work by adding a wrapper loading environment variables to properties

* Include sugar004

commit884c5b87330afe443e136c7691608ca220ef0698 authorJan Bessai <Jan.Bessai@tu-dortmund.de> dateMon 14 Apr 2014, 12:44 (13 years ago) parenta3221e3
4 files changed+28−3
test/Makefile+1−1 test/reg029/Reg029Wrapper.java+17 test/reg029/reg029.idr+1 test/reg029/run+9−2
test/Makefile+1−1
@@ -8,7 +8,7 @@ test: $(TESTS)
88 @perl ./runtest.pl $(patsubst %.test,%,$@)
99
1010test_java:
11− perl ./runtest.pl without sugar004 buffer001 --codegen Java
11+ perl ./runtest.pl without buffer001 reg039 --codegen Java
1212
1313test_js:
1414 @perl ./runtest.pl without sugar004 reg029 io001 dsl002 io003 effects001 effects002 buffer001 bounded001 folding002 --codegen node
test/reg029/Reg029Wrapper.javanew file+17
@@ -0,0 +1,17 @@
1+import java.util.Map;
2+
3+/**
4+ * The Java back end uses properties
5+ * instead of environment variables.
6+ * This wrapper loads the env variables
7+ * into the standard set of properties.
8+ */
9+public class Reg029Wrapper {
10+ public static void main(String [] args) {
11+ Map<String, String> env = System.getenv();
12+ for (String key : env.keySet()) {
13+ System.setProperty(key, env.get(key));
14+ }
15+ reg029.main(args);
16+ }
17+}
test/reg029/reg029.idr+1
@@ -2,6 +2,7 @@ module Main
22
33import System
44
5+-- necessary to find the getenv symbol
56%dynamic "libm"
67
78main : IO ()
test/reg029/run+9−2
@@ -2,6 +2,13 @@
22idris $@ reg029.idr -o reg029
33unset IDRIS_REG029_NONEXISTENT_VAR
44export IDRIS_REG029_EXISTENT_VAR='exists!'
5−./reg029
5+case "$@" in
6+*\-\-codegen\ Java*)
7+ javac -cp reg029 Reg029Wrapper.java
8+ java -cp .:reg029 Reg029Wrapper
9+ ;;
10+*)
11+ ./reg029
12+esac
613idris $@ reg029.idr --exec
7−rm -f reg029 *.ibc
14+rm -f reg029 *.ibc *.class