summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2017-07-13 20:29:09 (GMT)
committerStefan Radomski <github@mintwerk.de>2017-07-13 20:29:09 (GMT)
commit04b04aa6624caf73ffe4fc33f918e7f48b27da37 (patch)
tree40a8f92a0abd081f59a8aacc4b726dabf3c8f2f5 /test
parente0d6ac8097bfd148a9956128a48b7d1addf81e68 (diff)
downloaduscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.zip
uscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.tar.gz
uscxml-04b04aa6624caf73ffe4fc33f918e7f48b27da37.tar.bz2
LambdaMonitors and prepared use-case examples
Diffstat (limited to 'test')
-rw-r--r--test/src/test-snippets.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/test/src/test-snippets.cpp b/test/src/test-snippets.cpp
index f26b730..5eb680f 100644
--- a/test/src/test-snippets.cpp
+++ b/test/src/test-snippets.cpp
@@ -9,6 +9,8 @@
#include "uscxml/Interpreter.h"
#include "uscxml/interpreter/LoggingImpl.h"
+#include <iostream>
+
using namespace uscxml;
void microstep_snippet() {
@@ -31,9 +33,30 @@ void microstep_snippet() {
}
+void lambda_snippet() {
+ InterpreterState state = uscxml::USCXML_UNDEF;
+ Interpreter scxml = Interpreter::fromURL("https://raw.githubusercontent.com/tklab-tud/uscxml/master/test/w3c/null/test436.scxml");
+
+ scxml.on().enterState([](const std::string& sessionId,
+ const std::string& stateName,
+ const xercesc_3_1::DOMElement* state) {
+ std::cout << "Entered " << stateName << std::endl;
+ });
+
+ scxml.on().exitState([](const std::string& sessionId,
+ const std::string& stateName,
+ const xercesc_3_1::DOMElement* state) {
+ std::cout << "Exited " << stateName << std::endl;
+ });
+
+
+ while((state = scxml.step()) != uscxml::USCXML_FINISHED) {}
+
+}
+
int main(int argc, char** argv) {
try {
- Logger::getDefault().log(USCXML_FATAL) << "Foo!" << " BAR?" << std::endl;
+ lambda_snippet();
microstep_snippet();
} catch (...) {
exit(EXIT_FAILURE);