summaryrefslogtreecommitdiffstats
path: root/embedding/java
diff options
context:
space:
mode:
authorStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2014-08-20 15:25:48 (GMT)
committerStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2014-08-20 15:25:48 (GMT)
commit7454d99f1d02c68706da1ed6237a5f391291942d (patch)
treef0a2b507e16b237b405c7dfc17ef169bf0b93bc5 /embedding/java
parentb9204bad8cc2957bc0ae6201640d2972e9d4c239 (diff)
downloaduscxml-7454d99f1d02c68706da1ed6237a5f391291942d.zip
uscxml-7454d99f1d02c68706da1ed6237a5f391291942d.tar.gz
uscxml-7454d99f1d02c68706da1ed6237a5f391291942d.tar.bz2
Updated documentation
Diffstat (limited to 'embedding/java')
-rw-r--r--embedding/java/src/org/uscxml/tests/TestExceptions.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/embedding/java/src/org/uscxml/tests/TestExceptions.java b/embedding/java/src/org/uscxml/tests/TestExceptions.java
new file mode 100644
index 0000000..95242b8
--- /dev/null
+++ b/embedding/java/src/org/uscxml/tests/TestExceptions.java
@@ -0,0 +1,36 @@
+package org.uscxml.tests;
+
+import org.uscxml.Interpreter;
+import org.uscxml.InterpreterException;
+
+public class TestExceptions {
+
+ public static void main(String[] args) throws InterpreterException {
+ System.load("/Users/sradomski/Documents/TK/Code/uscxml/build/cli/lib/libuscxmlNativeJava64.jnilib");
+
+ String xml =
+ "<scxml datamodel=\"ecmascript\">" +
+ " <state id=\"start\">" +
+ " <transition target=\"done\" />" +
+ " </state>" +
+ " <final id=\"done\" />" +
+ "</scxml>";
+
+ if (false) {
+ // datamodel not available before first step -> dies with segfault
+ Interpreter interpreter = Interpreter.fromXML(xml);
+ System.out.println(interpreter.getDataModel().evalAsString("'FOO'"));
+ }
+
+ if (false) {
+ // datamodel is available but syntactic ecmascript exception is not propagated
+ Interpreter interpreter = Interpreter.fromXML(xml);
+ interpreter.step();
+ System.out.println(interpreter.getDataModel().evalAsString("'FOO' / qwer"));
+ }
+
+
+
+ }
+
+}