From 9b8e09c3fde755ec26e5c21b9640f53ed9329d05 Mon Sep 17 00:00:00 2001 From: Stefan Radomski Date: Fri, 9 Dec 2016 13:25:11 +0100 Subject: Removed easylogging due to JNI segfaults --- apps/uscxml-browser.cpp | 4 +- apps/uscxml-transform.cpp | 2 +- src/uscxml/Interpreter.cpp | 5 +- src/uscxml/debug/DebugSession.cpp | 4 +- src/uscxml/debug/DebuggerServlet.cpp | 4 +- src/uscxml/debug/DebuggerServlet.h | 6 +- src/uscxml/interpreter/BasicContentExecutor.cpp | 2 +- src/uscxml/interpreter/BasicEventQueue.cpp | 2 +- src/uscxml/interpreter/FastMicroStep.cpp | 2 +- src/uscxml/interpreter/InterpreterImpl.cpp | 2 +- src/uscxml/interpreter/Logging.cpp | 99 + src/uscxml/interpreter/Logging.h | 96 + src/uscxml/interpreter/LoggingImpl.h | 54 + src/uscxml/interpreter/StdOutLogger.cpp | 41 + src/uscxml/interpreter/StdOutLogger.h | 43 + src/uscxml/messages/Data.cpp | 4 +- src/uscxml/messages/Event.h | 10 +- src/uscxml/plugins/Factory.cpp | 4 +- .../ecmascript/JavaScriptCore/JSCDataModel.cpp | 4 +- .../datamodel/ecmascript/v8/V8DataModel.cpp | 4 +- src/uscxml/plugins/datamodel/lua/LuaDataModel.cpp | 2 +- .../plugins/datamodel/promela/PromelaDataModel.cpp | 2 +- .../plugins/invoker/dirmon/DirMonInvoker.cpp | 4 +- .../ioprocessor/basichttp/BasicHTTPIOProcessor.cpp | 4 +- src/uscxml/server/HTTPServer.cpp | 4 +- src/uscxml/transform/ChartToC.cpp | 2 +- src/uscxml/transform/ChartToJava.cpp | 2 +- src/uscxml/transform/ChartToPromela.cpp | 9 +- src/uscxml/transform/ChartToVHDL.cpp | 2 +- src/uscxml/util/DOM.cpp | 4 +- src/uscxml/util/URL.cpp | 4 +- test/CMakeLists.txt | 2 +- test/src/test-lifecycle.cpp | 2 +- test/src/test-snippets.cpp | 4 +- test/src/test-state-pass.cpp | 4 +- test/src/test-stress.cpp | 4 +- test/src/test-url.cpp | 4 +- test/src/test-validating.cpp | 4 +- test/w3c/TEST-MATRIX.md | 2943 -------------------- test/w3c/TESTS.md | 2772 +++++++++--------- test/w3c/create-test-table.pl | 16 +- 41 files changed, 1908 insertions(+), 4278 deletions(-) create mode 100644 src/uscxml/interpreter/Logging.cpp create mode 100644 src/uscxml/interpreter/Logging.h create mode 100644 src/uscxml/interpreter/LoggingImpl.h create mode 100644 src/uscxml/interpreter/StdOutLogger.cpp create mode 100644 src/uscxml/interpreter/StdOutLogger.h delete mode 100644 test/w3c/TEST-MATRIX.md diff --git a/apps/uscxml-browser.cpp b/apps/uscxml-browser.cpp index 5f48842..dff207b 100644 --- a/apps/uscxml-browser.cpp +++ b/apps/uscxml-browser.cpp @@ -6,7 +6,7 @@ #include "uscxml/interpreter/InterpreterMonitor.h" #include "uscxml/util/DOM.h" -#include +#include "uscxml/interpreter/Logging.h" #include "uscxml/plugins/Factory.h" #include "uscxml/server/HTTPServer.h" @@ -122,4 +122,4 @@ int main(int argc, char** argv) { std::this_thread::sleep_for(std::chrono::seconds(1)); } return EXIT_SUCCESS; -} \ No newline at end of file +} diff --git a/apps/uscxml-transform.cpp b/apps/uscxml-transform.cpp index d9be7cf..a4c5e3e 100644 --- a/apps/uscxml-transform.cpp +++ b/apps/uscxml-transform.cpp @@ -16,7 +16,7 @@ #include "uscxml/server/HTTPServer.h" #include "getopt.h" -#include +#include "uscxml/interpreter/Logging.h" #define ANNOTATE(envKey, annotationParam) \ envVarIsTrue(envKey) || std::find(options.begin(), options.end(), annotationParam) != options.end() diff --git a/src/uscxml/Interpreter.cpp b/src/uscxml/Interpreter.cpp index 1e8c931..9f4322f 100644 --- a/src/uscxml/Interpreter.cpp +++ b/src/uscxml/Interpreter.cpp @@ -30,7 +30,7 @@ #include #include #include -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" #include #include @@ -40,9 +40,6 @@ #include #include -#include "easylogging++.h" -INITIALIZE_EASYLOGGINGPP - #define VERBOSE 0 namespace uscxml { diff --git a/src/uscxml/debug/DebugSession.cpp b/src/uscxml/debug/DebugSession.cpp index 4d64443..116e20e 100644 --- a/src/uscxml/debug/DebugSession.cpp +++ b/src/uscxml/debug/DebugSession.cpp @@ -21,7 +21,7 @@ #include "uscxml/debug/Debugger.h" #include "uscxml/util/Predicates.h" -#include +#include "uscxml/interpreter/Logging.h" namespace uscxml { @@ -416,4 +416,4 @@ Data DebugSession::debugEval(const Data& data) { } -} \ No newline at end of file +} diff --git a/src/uscxml/debug/DebuggerServlet.cpp b/src/uscxml/debug/DebuggerServlet.cpp index 34c1eca..5e3159b 100644 --- a/src/uscxml/debug/DebuggerServlet.cpp +++ b/src/uscxml/debug/DebuggerServlet.cpp @@ -238,10 +238,10 @@ void DebuggerServlet::processListSessions(const HTTPServer::Request& request) { returnData(request, replyData); } + /* void DebuggerServlet::handle(const el::LogDispatchData* data) { } -/* void DebuggerServlet::send(google::LogSeverity severity, const char* full_filename, const char* base_filename, int line, const struct ::tm* tm_time, @@ -261,4 +261,4 @@ void DebuggerServlet::send(google::LogSeverity severity, const char* full_filena } */ -} \ No newline at end of file +} diff --git a/src/uscxml/debug/DebuggerServlet.h b/src/uscxml/debug/DebuggerServlet.h index a1f18e3..7e0f66b 100644 --- a/src/uscxml/debug/DebuggerServlet.h +++ b/src/uscxml/debug/DebuggerServlet.h @@ -21,7 +21,7 @@ #define DEBUGGERSERVLET_H_ATUMDA3G #include "uscxml/Common.h" -#include +#include "uscxml/interpreter/Logging.h" #include "uscxml/util/BlockingQueue.h" #include "uscxml/server/HTTPServer.h" @@ -29,7 +29,7 @@ namespace uscxml { -class USCXML_API DebuggerServlet : public Debugger, public HTTPServlet, public el::LogDispatchCallback { +class USCXML_API DebuggerServlet : public Debugger, public HTTPServlet, public Logger { public: class LogMessage : public Data { public: @@ -91,8 +91,8 @@ public: const char* base_filename, int line, const struct ::tm* tm_time, const char* message, size_t message_len); + void handle(const el::LogDispatchData* data); */ - void handle(const el::LogDispatchData* data); protected: void serverPushData(std::shared_ptr); diff --git a/src/uscxml/interpreter/BasicContentExecutor.cpp b/src/uscxml/interpreter/BasicContentExecutor.cpp index a2ebc5c..1cf9c2f 100644 --- a/src/uscxml/interpreter/BasicContentExecutor.cpp +++ b/src/uscxml/interpreter/BasicContentExecutor.cpp @@ -29,7 +29,7 @@ #include #include -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" namespace uscxml { diff --git a/src/uscxml/interpreter/BasicEventQueue.cpp b/src/uscxml/interpreter/BasicEventQueue.cpp index 78b2321..04ffc7c 100644 --- a/src/uscxml/interpreter/BasicEventQueue.cpp +++ b/src/uscxml/interpreter/BasicEventQueue.cpp @@ -22,7 +22,7 @@ #include #include -#include +#include "uscxml/interpreter/Logging.h" namespace uscxml { diff --git a/src/uscxml/interpreter/FastMicroStep.cpp b/src/uscxml/interpreter/FastMicroStep.cpp index 90b93ee..8711b62 100644 --- a/src/uscxml/interpreter/FastMicroStep.cpp +++ b/src/uscxml/interpreter/FastMicroStep.cpp @@ -26,7 +26,7 @@ #include "uscxml/util/Convenience.h" #include "uscxml/interpreter/InterpreterMonitor.h" -#include +#include "uscxml/interpreter/Logging.h" #define BIT_ANY_SET(b) (!b.none()) #define BIT_HAS(idx, bitset) (bitset[idx]) diff --git a/src/uscxml/interpreter/InterpreterImpl.cpp b/src/uscxml/interpreter/InterpreterImpl.cpp index d3b044a..7b79988 100644 --- a/src/uscxml/interpreter/InterpreterImpl.cpp +++ b/src/uscxml/interpreter/InterpreterImpl.cpp @@ -28,7 +28,7 @@ #include "uscxml/util/Predicates.h" #include "uscxml/plugins/InvokerImpl.h" -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" #include diff --git a/src/uscxml/interpreter/Logging.cpp b/src/uscxml/interpreter/Logging.cpp new file mode 100644 index 0000000..bdb847a --- /dev/null +++ b/src/uscxml/interpreter/Logging.cpp @@ -0,0 +1,99 @@ +/** + * @file + * @author 2016 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de) + * @copyright Simplified BSD + * + * @cond + * This program is free software: you can redistribute it and/or modify + * it under the terms of the FreeBSD license as published by the FreeBSD + * project. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the FreeBSD license along with this + * program. If not, see . + * @endcond + */ + +#include "Logging.h" +#include "LoggingImpl.h" + +// for default logger +#include "StdOutLogger.h" + +namespace uscxml { + +std::shared_ptr LoggerImpl::_defaultLogger; + +std::shared_ptr LoggerImpl::getDefault() { + if (!_defaultLogger) + _defaultLogger = std::shared_ptr(new StdOutLogger()); + return _defaultLogger; +} + +Logger Logger::getDefault() { + return LoggerImpl::getDefault(); +} + +void log(LogSeverity severity, const Event& event) { + LoggerImpl::getDefault()->log(severity, event); +} + +void log(LogSeverity severity, const Data& data) { + LoggerImpl::getDefault()->log(severity, data); +} + +void Logger::log(LogSeverity severity, const Event& event) { + _impl->log(severity, event); +} + +void Logger::log(LogSeverity severity, const Data& data) { + _impl->log(severity, data); +} + +void Logger::log(LogSeverity severity, const std::string& message) { + _impl->log(severity, message); +} + +StreamLogger Logger::log(LogSeverity severity) { + return StreamLogger(severity, _impl); +} + +StreamLogger::~StreamLogger() { + _logger->log(_severity, ss.str()); +} + +std::shared_ptr Logger::getImpl() const { + return _impl; +} + +std::ostream& StreamLogger::operator<<(const std::string& message) { + ss << message; //_logger->log(_severity, event); + return ss; +} + +std::string Logger::severityToString(LogSeverity severity) { + switch (severity) { + case USCXML_SCXML: + return "Interpreter"; + case USCXML_TRACE: + return "Trace"; + case USCXML_DEBUG: + return "Debug"; + case USCXML_INFO: + return "Info"; + case USCXML_WARN: + return "Warning"; + case USCXML_ERROR: + return "Error"; + case USCXML_FATAL: + return "Fatal"; + default: + return "Unknown"; + + } +} + +} diff --git a/src/uscxml/interpreter/Logging.h b/src/uscxml/interpreter/Logging.h new file mode 100644 index 0000000..7746998 --- /dev/null +++ b/src/uscxml/interpreter/Logging.h @@ -0,0 +1,96 @@ +/** + * @file + * @author 2016 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de) + * @copyright Simplified BSD + * + * @cond + * This program is free software: you can redistribute it and/or modify + * it under the terms of the FreeBSD license as published by the FreeBSD + * project. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the FreeBSD license along with this + * program. If not, see . + * @endcond + */ + +#ifndef LOGGING_H_3B1A3A0F +#define LOGGING_H_3B1A3A0F + +#include "uscxml/config.h" +#include "uscxml/Common.h" + +#include "uscxml/messages/Data.h" +#include "uscxml/messages/Event.h" + +#include + +#define LOG(lvl) uscxml::Logger::getDefault().log(lvl) +#define LOG2(lvl, thing) uscxml::Logger::getDefault().log(lvl, thing); + +#define SCXML USCXML_SCXML +#define TRACE USCXML_TRACE +#define DEBUG USCXML_DEBUG +#define INFO USCXML_INFO +#define WARNING USCXML_WARN +#define ERROR USCXML_ERROR +#define FATAL USCXML_FATAL + +namespace uscxml { + +enum LogSeverity { + USCXML_SCXML, + USCXML_TRACE, + USCXML_DEBUG, + USCXML_INFO, + USCXML_WARN, + USCXML_ERROR, + USCXML_FATAL +}; + +class LoggerImpl; + +void log(LogSeverity severity, const Event& event); +void log(LogSeverity severity, const Data& data); + +class StreamLogger { +public: + std::ostream& operator<<(const std::string& message); + ~StreamLogger(); + +protected: + StreamLogger(LogSeverity severity, std::shared_ptr logger) : _severity(severity), _logger(logger) {} + StreamLogger(const StreamLogger& other) : _severity(other._severity), _logger(other._logger) {} + + LogSeverity _severity; + std::shared_ptr _logger; + std::stringstream ss; + + friend class Logger; +}; + +class USCXML_API Logger { +public: + PIMPL_OPERATORS(Logger); + + virtual void log(LogSeverity severity, const Event& event); + virtual void log(LogSeverity severity, const Data& data); + virtual void log(LogSeverity severity, const std::string& message); + + virtual StreamLogger log(LogSeverity severity); + static std::string severityToString(LogSeverity severity); + + static Logger getDefault(); + + std::shared_ptr getImpl() const; +protected: + std::shared_ptr _impl; + +}; + +} + +#endif /* end of include guard: LOGGING_H_3B1A3A0F */ diff --git a/src/uscxml/interpreter/LoggingImpl.h b/src/uscxml/interpreter/LoggingImpl.h new file mode 100644 index 0000000..c6003ca --- /dev/null +++ b/src/uscxml/interpreter/LoggingImpl.h @@ -0,0 +1,54 @@ +/** + * @file + * @author 2016 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de) + * @copyright Simplified BSD + * + * @cond + * This program is free software: you can redistribute it and/or modify + * it under the terms of the FreeBSD license as published by the FreeBSD + * project. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the FreeBSD license along with this + * program. If not, see . + * @endcond + */ + +#ifndef LOGGINGIMPL_H_CF00F49B +#define LOGGINGIMPL_H_CF00F49B + +#include "uscxml/config.h" +#include "uscxml/Common.h" + +#include "Logging.h" + +#include "uscxml/messages/Data.h" +#include "uscxml/messages/Event.h" + +namespace uscxml { + +/** +* @ingroup impl +*/ +class USCXML_API LoggerImpl { +public: + + LoggerImpl() {} + virtual std::shared_ptr create() = 0; + + virtual void log(LogSeverity severity, const Event& event) = 0; + virtual void log(LogSeverity severity, const Data& data) = 0; + virtual void log(LogSeverity severity, const std::string& message) = 0; + + static std::shared_ptr getDefault(); + +private: + static std::shared_ptr _defaultLogger; +}; + +} + +#endif /* end of include guard: LOGGINGIMPL_H_CF00F49B */ diff --git a/src/uscxml/interpreter/StdOutLogger.cpp b/src/uscxml/interpreter/StdOutLogger.cpp new file mode 100644 index 0000000..1794c1f --- /dev/null +++ b/src/uscxml/interpreter/StdOutLogger.cpp @@ -0,0 +1,41 @@ +/** + * @file + * @author 2016 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de) + * @copyright Simplified BSD + * + * @cond + * This program is free software: you can redistribute it and/or modify + * it under the terms of the FreeBSD license as published by the FreeBSD + * project. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the FreeBSD license along with this + * program. If not, see . + * @endcond + */ + +#include "StdOutLogger.h" +#include + +namespace uscxml { + +std::shared_ptr StdOutLogger::create() { + return std::shared_ptr(new StdOutLogger()); +} + +void StdOutLogger::log(LogSeverity severity, const std::string& message) { + std::cout << Logger::severityToString(severity) << ": " << message << std::endl; +} + +void StdOutLogger::log(LogSeverity severity, const Event& event) { + std::cout << Logger::severityToString(severity) << ": " << event << std::endl; +} + +void StdOutLogger::log(LogSeverity severity, const Data& data) { + std::cout << Logger::severityToString(severity) << ": " << data << std::endl; +} + +} diff --git a/src/uscxml/interpreter/StdOutLogger.h b/src/uscxml/interpreter/StdOutLogger.h new file mode 100644 index 0000000..fbc006f --- /dev/null +++ b/src/uscxml/interpreter/StdOutLogger.h @@ -0,0 +1,43 @@ +/** + * @file + * @author 2016 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de) + * @copyright Simplified BSD + * + * @cond + * This program is free software: you can redistribute it and/or modify + * it under the terms of the FreeBSD license as published by the FreeBSD + * project. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * You should have received a copy of the FreeBSD license along with this + * program. If not, see . + * @endcond + */ + +#ifndef STDOUTLOGGER_H_1A28C761 +#define STDOUTLOGGER_H_1A28C761 + +#include "LoggingImpl.h" + +namespace uscxml { + +class USCXML_API StdOutLogger : public LoggerImpl { +public: + StdOutLogger() {} + virtual ~StdOutLogger() {} + + virtual std::shared_ptr create(); + + virtual void log(LogSeverity severity, const std::string& message); + virtual void log(LogSeverity severity, const Event& event); + virtual void log(LogSeverity severity, const Data& data); + +}; + + +} + +#endif /* end of include guard: STDOUTLOGGER_H_1A28C761 */ diff --git a/src/uscxml/messages/Data.cpp b/src/uscxml/messages/Data.cpp index 089de96..a75e774 100644 --- a/src/uscxml/messages/Data.cpp +++ b/src/uscxml/messages/Data.cpp @@ -24,7 +24,7 @@ #include "uscxml/util/DOM.h" -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" #ifdef HAS_STRING_H #include @@ -290,4 +290,4 @@ std::string Data::toJSON(const Data& data) { return os.str(); } -} \ No newline at end of file +} diff --git a/src/uscxml/messages/Event.h b/src/uscxml/messages/Event.h index 8b7bb91..2edbd3e 100644 --- a/src/uscxml/messages/Event.h +++ b/src/uscxml/messages/Event.h @@ -90,7 +90,7 @@ public: }; Event() : eventType(INTERNAL), hideSendId(false), uuid(UUID::getUUID()) {} - Event(const std::string& name, Type type = INTERNAL) : name(name), eventType(type), hideSendId(false) {} + explicit Event(const std::string& name, Type type = INTERNAL) : name(name), eventType(type), hideSendId(false) {} bool operator< (const Event& other) const { return this < &other; } @@ -109,6 +109,12 @@ public: return name.size() > 0; } + operator std::string() { + std::stringstream ss; + ss << *this; + return ss.str(); + } + typedef std::multimap params_t; typedef std::map namelist_t; @@ -192,7 +198,7 @@ class USCXML_API ErrorEvent : public Event { public: ErrorEvent() : Event() {} ErrorEvent(const std::string& msg) : Event("error.platform") { - data.compound["msg"] = msg; + data.compound["msg"] = Data(msg, Data::VERBATIM); } }; diff --git a/src/uscxml/plugins/Factory.cpp b/src/uscxml/plugins/Factory.cpp index a60fe4c..443cb59 100644 --- a/src/uscxml/plugins/Factory.cpp +++ b/src/uscxml/plugins/Factory.cpp @@ -22,7 +22,7 @@ #include "uscxml/plugins/Factory.h" #include "uscxml/messages/Data.h" #include "uscxml/Interpreter.h" -#include +#include "uscxml/interpreter/Logging.h" #include "uscxml/plugins/ExecutableContentImpl.h" @@ -525,4 +525,4 @@ void InvokerImpl::eventToSCXML(Event& event, Factory* Factory::_instance = NULL; std::string Factory::_defaultPluginPath; -} \ No newline at end of file +} diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp index bdb8939..aae0111 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp +++ b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp @@ -26,7 +26,7 @@ #include "uscxml/messages/Event.h" #include "uscxml/util/DOM.h" -#include +#include "uscxml/interpreter/Logging.h" #include @@ -879,4 +879,4 @@ void JSCDataModel::jsInvokerListProps(JSContextRef ctx, JSObjectRef object, JSPr } } -} \ No newline at end of file +} diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp index 0205674..3ff48c4 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp +++ b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp @@ -31,7 +31,7 @@ #include "uscxml/messages/Event.h" #include "uscxml/util/DOM.h" -#include +#include "uscxml/interpreter/Logging.h" #include @@ -866,4 +866,4 @@ void V8DataModel::throwExceptionEvent(const v8::TryCatch& tryCatch) { throw(exceptionEvent); } -} \ No newline at end of file +} diff --git a/src/uscxml/plugins/datamodel/lua/LuaDataModel.cpp b/src/uscxml/plugins/datamodel/lua/LuaDataModel.cpp index ed96622..6429cba 100644 --- a/src/uscxml/plugins/datamodel/lua/LuaDataModel.cpp +++ b/src/uscxml/plugins/datamodel/lua/LuaDataModel.cpp @@ -31,7 +31,7 @@ #include "uscxml/messages/Event.h" #include "uscxml/util/DOM.h" -#include +#include "uscxml/interpreter/Logging.h" #include //#include "LuaDOM.cpp.inc" diff --git a/src/uscxml/plugins/datamodel/promela/PromelaDataModel.cpp b/src/uscxml/plugins/datamodel/promela/PromelaDataModel.cpp index 458e372..4c5674e 100644 --- a/src/uscxml/plugins/datamodel/promela/PromelaDataModel.cpp +++ b/src/uscxml/plugins/datamodel/promela/PromelaDataModel.cpp @@ -29,7 +29,7 @@ #include "PromelaParser.h" #include "parser/promela.tab.hpp" -#include +#include "uscxml/interpreter/Logging.h" #ifdef BUILD_AS_PLUGINS #include diff --git a/src/uscxml/plugins/invoker/dirmon/DirMonInvoker.cpp b/src/uscxml/plugins/invoker/dirmon/DirMonInvoker.cpp index 08a0be8..fca6e11 100644 --- a/src/uscxml/plugins/invoker/dirmon/DirMonInvoker.cpp +++ b/src/uscxml/plugins/invoker/dirmon/DirMonInvoker.cpp @@ -33,7 +33,7 @@ #endif #include -#include +#include "uscxml/interpreter/Logging.h" namespace uscxml { @@ -446,4 +446,4 @@ void DirectoryWatch::updateEntries(bool reportAsExisting) { } } -} \ No newline at end of file +} diff --git a/src/uscxml/plugins/ioprocessor/basichttp/BasicHTTPIOProcessor.cpp b/src/uscxml/plugins/ioprocessor/basichttp/BasicHTTPIOProcessor.cpp index 564977d..d6993dc 100644 --- a/src/uscxml/plugins/ioprocessor/basichttp/BasicHTTPIOProcessor.cpp +++ b/src/uscxml/plugins/ioprocessor/basichttp/BasicHTTPIOProcessor.cpp @@ -30,7 +30,7 @@ #include -#include +#include "uscxml/interpreter/Logging.h" #include #ifdef _WIN32 @@ -315,4 +315,4 @@ void BasicHTTPIOProcessor::downloadFailed(const URL& url, int errorCode) { } -} \ No newline at end of file +} diff --git a/src/uscxml/server/HTTPServer.cpp b/src/uscxml/server/HTTPServer.cpp index 679ab67..a5dcb8b 100644 --- a/src/uscxml/server/HTTPServer.cpp +++ b/src/uscxml/server/HTTPServer.cpp @@ -40,7 +40,7 @@ extern "C" { #include } -#include +#include "uscxml/interpreter/Logging.h" #include #ifndef _WIN32 @@ -791,4 +791,4 @@ void HTTPServer::sslGeneralBufferEventCallback (struct evhttp_request *req, void } #endif -} \ No newline at end of file +} diff --git a/src/uscxml/transform/ChartToC.cpp b/src/uscxml/transform/ChartToC.cpp index 10eee0c..932ac73 100644 --- a/src/uscxml/transform/ChartToC.cpp +++ b/src/uscxml/transform/ChartToC.cpp @@ -26,7 +26,7 @@ #include "uscxml/util/String.h" #include #include -#include +#include "uscxml/interpreter/Logging.h" #include #include diff --git a/src/uscxml/transform/ChartToJava.cpp b/src/uscxml/transform/ChartToJava.cpp index f31db71..8d4d61e 100644 --- a/src/uscxml/transform/ChartToJava.cpp +++ b/src/uscxml/transform/ChartToJava.cpp @@ -22,7 +22,7 @@ #include "uscxml/util/String.h" #include -#include +#include "uscxml/interpreter/Logging.h" #include namespace uscxml { diff --git a/src/uscxml/transform/ChartToPromela.cpp b/src/uscxml/transform/ChartToPromela.cpp index 5dcf9f0..a140386 100644 --- a/src/uscxml/transform/ChartToPromela.cpp +++ b/src/uscxml/transform/ChartToPromela.cpp @@ -24,19 +24,20 @@ #include "uscxml/plugins/datamodel/promela/parser/promela.tab.hpp" #include -#include +#include "uscxml/interpreter/Logging.h" #include +#include #define ADAPT_SRC(code) _analyzer->adaptCode(code, _prefix) -#define BIT_WIDTH(number) (number > 1 ? (int)ceil(log((double)number) / log((double)2.0)) : 1) +#define BIT_WIDTH(number) (number > 1 ? (int)ceil(log2((double)number)) : 1) #define EVENT_NAME (_analyzer->usesComplexEventStruct() ? "_event.name" : "_event") #define TMP_EVENT_NAME (_analyzer->usesComplexEventStruct() ? "_tmpE.name" : "_tmpE") #define MAX(X,Y) ((X) > (Y) ? (X) : (Y)) -#define TRACE +#define TRACE_PML -#ifdef TRACE +#ifdef TRACE_PML #define TRACE_EXECUTION_V(fmt, ...) \ stream << std::endl; \ stream << "#if TRACE_EXECUTION" << std::endl; \ diff --git a/src/uscxml/transform/ChartToVHDL.cpp b/src/uscxml/transform/ChartToVHDL.cpp index a55a4ca..4922f22 100644 --- a/src/uscxml/transform/ChartToVHDL.cpp +++ b/src/uscxml/transform/ChartToVHDL.cpp @@ -24,7 +24,7 @@ #include #include -#include +#include "uscxml/interpreter/Logging.h" #include #include diff --git a/src/uscxml/util/DOM.cpp b/src/uscxml/util/DOM.cpp index 1de6423..cc1e2d7 100644 --- a/src/uscxml/util/DOM.cpp +++ b/src/uscxml/util/DOM.cpp @@ -29,7 +29,7 @@ #include #include -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" //#include //#include @@ -392,4 +392,4 @@ std::list DOMUtils::filterChildType(const DOMNode::NodeType type, } -} \ No newline at end of file +} diff --git a/src/uscxml/util/URL.cpp b/src/uscxml/util/URL.cpp index 79a0ad9..1dd6154 100644 --- a/src/uscxml/util/URL.cpp +++ b/src/uscxml/util/URL.cpp @@ -23,7 +23,7 @@ #include #include -#include +#include "uscxml/interpreter/Logging.h" #include "uscxml/config.h" @@ -784,4 +784,4 @@ URLFetcher* URLFetcher::getInstance() { } -} \ No newline at end of file +} diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 32d1165..a6f9265 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -300,7 +300,7 @@ if (NOT BUILD_MINIMAL) ${ANT_BIN} -Dtest.file=${W3C_TEST} -Duscxml.jar=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/uscxml.jar - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/java + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/contrib/java/bindings ) set_tests_properties("${TEST_NAME}" PROPERTIES DEPENDS jar) set(TEST_ADDED ON) diff --git a/test/src/test-lifecycle.cpp b/test/src/test-lifecycle.cpp index 55a524e..59ef1d8 100644 --- a/test/src/test-lifecycle.cpp +++ b/test/src/test-lifecycle.cpp @@ -1,7 +1,7 @@ #include "uscxml/config.h" #include "uscxml/Interpreter.h" #include "uscxml/interpreter/InterpreterMonitor.h" -#include +#include "uscxml/interpreter/Logging.h" #include #include diff --git a/test/src/test-snippets.cpp b/test/src/test-snippets.cpp index a9625b1..4b0fafe 100644 --- a/test/src/test-snippets.cpp +++ b/test/src/test-snippets.cpp @@ -7,6 +7,7 @@ #include "uscxml/config.h" #include "uscxml/Interpreter.h" +#include "uscxml/interpreter/LoggingImpl.h" using namespace uscxml; @@ -31,5 +32,6 @@ void microstep_snippet() { } int main(int argc, char** argv) { + Logger::getDefault().log(USCXML_FATAL) << "Foo!" << " BAR?"; microstep_snippet(); -} \ No newline at end of file +} diff --git a/test/src/test-state-pass.cpp b/test/src/test-state-pass.cpp index 163e5b9..33f13ac 100644 --- a/test/src/test-state-pass.cpp +++ b/test/src/test-state-pass.cpp @@ -14,7 +14,7 @@ #include "uscxml/util/Predicates.h" #include "uscxml/util/Convenience.h" // iequals -#include "easylogging++.h" +#include "uscxml/interpreter/Logging.h" #include "uscxml/messages/Event.h" #include "uscxml/server/HTTPServer.h" @@ -43,7 +43,7 @@ int main(int argc, char** argv) { size_t iterations = 1; std::string documentURI; - el::Loggers::reconfigureAllLoggers(el::ConfigurationType::Format, "%datetime %level %fbase:%line: %msg"); +// el::Loggers::reconfigureAllLoggers(el::ConfigurationType::Format, "%datetime %level %fbase:%line: %msg"); if (argc < 2) { exit(EXIT_FAILURE); diff --git a/test/src/test-stress.cpp b/test/src/test-stress.cpp index d3209e2..6312ae4 100644 --- a/test/src/test-stress.cpp +++ b/test/src/test-stress.cpp @@ -3,7 +3,7 @@ //#include "uscxml/Factory.h" #include "uscxml/server/HTTPServer.h" -#include +#include "uscxml/interpreter/Logging.h" #include "uscxml/plugins/invoker/dirmon/DirMonInvoker.h" #include @@ -106,4 +106,4 @@ int main(int argc, char** argv) { delete watcher; return EXIT_SUCCESS; -} \ No newline at end of file +} diff --git a/test/src/test-url.cpp b/test/src/test-url.cpp index 0e1d115..3d46c03 100644 --- a/test/src/test-url.cpp +++ b/test/src/test-url.cpp @@ -5,7 +5,7 @@ #include "uscxml/config.h" #include -#include +#include "uscxml/interpreter/Logging.h" #include #include @@ -295,4 +295,4 @@ int main(int argc, char** argv) { assert(iequals(url.scheme(), "file")); } #endif -} \ No newline at end of file +} diff --git a/test/src/test-validating.cpp b/test/src/test-validating.cpp index 609ac42..fa660b9 100644 --- a/test/src/test-validating.cpp +++ b/test/src/test-validating.cpp @@ -2,7 +2,7 @@ #include "uscxml/Interpreter.h" #include "uscxml/interpreter/InterpreterImpl.h" #include "uscxml/debug/InterpreterIssue.h" -#include +#include "uscxml/interpreter/Logging.h" #include using namespace uscxml; @@ -815,4 +815,4 @@ int main(int argc, char** argv) { } return EXIT_SUCCESS; -} \ No newline at end of file +} diff --git a/test/w3c/TEST-MATRIX.md b/test/w3c/TEST-MATRIX.md deleted file mode 100644 index ec82f49..0000000 --- a/test/w3c/TEST-MATRIX.md +++ /dev/null @@ -1,2943 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Test (Req. / Man.)NSLuaPromelaSpinC (Lua)ECMAC (ECMA)
Core Constructs
§3.10 The History Element 
   387Xpasspasspasspasspasspasspass
   388XpasspassFAILpasspasspasspass
   579Xpasspasspasspasspasspasspass
   580XpasspassFAILpasspasspasspass
§3.12 SCXML Events 
   396Xpasspasspasspasspasspasspass
   399Xpasspasspasspasspasspasspass
   401XpasspasspassN/Apasspasspass
   402XpasspasspassN/Apasspasspass
§3.13 Selecting and Executing Transitions 
   403bXpasspasspasspasspasspasspass
   403cXpasspasspasspasspasspasspass
   403aXpasspasspasspasspasspasspass
   404Xpasspasspasspasspasspasspass
   405Xpasspasspasspasspasspasspass
   406Xpasspasspasspasspasspasspass
   407Xpasspasspasspasspasspasspass
   409Xpasspasspasspasspasspasspass
   411Xpasspasspasspasspasspasspass
   412Xpasspasspasspasspasspasspass
   413Xpasspasspasspasspasspasspass
   415XXpassN/AN/AN/ApassN/Apass
   416Xpasspasspasspasspasspasspass
   417Xpasspasspasspasspasspasspass
   419Xpasspasspasspasspasspasspass
   421Xpasspasspasspasspasspasspass
   422Xpasspasspasspasspasspasspass
   423Xpasspasspasspasspasspasspass
   503Xpasspasspasspasspasspasspass
   504Xpasspasspasspasspasspasspass
   505Xpasspasspasspasspasspasspass
   506Xpasspasspasspasspasspasspass
   533Xpasspasspasspasspasspasspass
§3.2 The SCXML Element 
   355Xpasspasspasspasspasspasspass
   576Xpasspasspasspasspasspasspass
§3.3 The State Element 
   364Xpasspasspasspasspasspasspass
§3.7 The Final Element 
   372Xpasspasspasspasspasspasspass
   570Xpasspasspasspasspasspasspass
§3.8 The Onentry Element 
   375Xpasspasspasspasspasspasspass
   376Xpasspasspasspasspasspasspass
§3.9 The Onexit Element 
   377Xpasspasspasspasspasspasspass
   378Xpasspasspasspasspasspasspass
Executable Content
§4.2 The Raise Element 
   144Xpasspasspasspasspasspasspass
§4.3 The If Element 
   147Xpasspasspasspasspasspasspass
   148Xpasspasspasspasspasspasspass
   149Xpasspasspasspasspasspasspass
§4.6 The Foreach Element 
   150Xpasspasspasspasspasspasspass
   151Xpasspasspasspasspasspasspass
   152XpasspasspassN/Apasspasspass
   153Xpasspasspasspasspasspasspass
   155Xpasspasspasspasspasspasspass
   156XpasspasspassN/AFAILpasspass
   525XpasspasspassN/Apasspasspass
§4.9 Evaluation of Executable Content 
   158Xpasspasspasspasspasspasspass
   159XpasspasspassN/Apasspasspass
Data Model and Manipulation
§5.10 System Variables 
   318Xpasspasspasspasspasspasspass
   319Xpasspasspasspasspasspasspass
   321Xpasspasspasspasspasspasspass
   322XpasspasspassN/Apasspasspass
   323Xpasspasspasspasspasspasspass
   324XpasspasspassN/Apasspasspass
   325XpasspasspassN/AFAILpassFAIL
   326XpasspasspassN/AFAILpassFAIL
   329XpasspasspassN/AFAILpassFAIL
   330Xpasspasspasspasspasspasspass
   331XpasspassFAILN/Apasspasspass
   332XpasspasspassN/Apasspasspass
   333Xpasspasspasspasspasspasspass
   335Xpasspasspasspasspasspasspass
   336XpasspasspasspassFAILpassFAIL
   337Xpasspasspasspasspasspasspass
   338Xpasspasspasspasspasspasspass
   339Xpasspasspasspasspasspasspass
   342Xpasspasspasspasspasspasspass
   346XpasspasspassN/Apasspasspass
§5.3 The Data Element 
   276Xpasspasspasspasspasspasspass
   277XpasspasspassN/AFAILpasspass
   279Xpasspasspasspasspasspasspass
   280XpasspasspassN/Apasspasspass
   550Xpasspasspasspasspasspasspass
   551Xpasspasspasspasspasspasspass
   552Xpasspasspasspasspasspasspass
§5.4 The Assign Element 
   286XpasspasspassN/Apasspasspass
   287Xpasspasspasspasspasspasspass
   288Xpasspasspasspasspasspasspass
   487XpasspasspassN/AFAILpasspass
§5.5 The Donedata Element 
   294XFAILpasspassN/ApassFAILpass
§5.6 The Content Element 
   527Xpasspasspasspasspasspasspass
   528XpasspasspassN/ApasspassFAIL
   529XpasspasspasspassFAILpasspass
§5.7 The Param Element 
   298XpasspasspassN/Apasspasspass
   343XpasspasspassN/Apasspasspass
   488XpasspasspassN/AFAILpasspass
§5.8 The Script Element 
   301XXpassN/AN/AN/AFAILN/AN/A
   302Xpasspasspasspasspasspasspass
   303Xpasspasspasspasspasspasspass
   304Xpasspasspasspasspasspasspass
§5.9 Expressions 
   307XXN/AN/AN/AN/AN/AN/AN/A
   309XpasspasspassN/Apasspasspass
   310Xpasspasspasspasspasspasspass
   311XpasspasspassN/Apasspasspass
   312XpasspasspassN/AFAILpasspass
   313XXpassN/AN/AN/AFAILN/Apass
   314XXpassN/AN/AN/AFAILN/Apass
   344XpasspasspassN/Apasspasspass
External Communications
§6.2 The Send Element 
   172Xpasspasspasspasspasspasspass
   173Xpasspasspasspasspasspasspass
   174Xpasspasspasspasspasspasspass
   175Xpasspasspasspasspasspasspass
   176Xpasspasspasspasspasspasspass
   178XXpassN/AN/AN/ApassN/Apass
   179Xpasspasspasspasspasspasspass
   183Xpasspasspasspasspasspasspass
   185Xpasspasspasspasspasspasspass
   186Xpasspasspasspasspasspasspass
   187Xpasspasspasspasspasspasspass
   194XpasspasspassN/Apasspasspass
   198Xpasspasspasspasspasspasspass
   199XpasspasspassN/Apasspasspass
   200Xpasspasspasspasspasspasspass
   201passpasspasspassFAILpassN/A
   205Xpasspasspasspasspasspasspass
   521XpasspasspassN/Apasspasspass
   553XpasspasspassN/Apasspasspass
§6.3 The Cancel Element 
   207Xpasspasspasspasspasspasspass
   208Xpasspasspasspasspasspasspass
   210Xpasspasspasspasspasspasspass
§6.4 The Invoke Element 
   215Xpasspasspasspasspasspasspass
   216XpasspasspassN/AFAILpassN/A
   220Xpasspasspasspasspasspasspass
   223Xpasspasspasspasspasspasspass
   224XpasspassFAILN/Apasspasspass
   225Xpasspasspasspasspasspasspass
   226Xpasspasspasspasspasspasspass
   228Xpasspasspasspasspasspasspass
   229Xpasspasspasspasspasspasspass
   230XXpassN/AN/AN/ApassN/Apass
   232Xpasspasspasspasspasspasspass
   233Xpasspasspasspasspasspasspass
   234Xpasspasspasspasspasspasspass
   235Xpasspasspasspasspasspasspass
   236Xpasspasspasspasspasspasspass
   237Xpasspasspasspasspasspasspass
   239Xpasspasspasspasspasspasspass
   240Xpasspasspasspasspasspasspass
   241Xpasspasspasspasspasspasspass
   242Xpasspasspasspasspasspasspass
   243Xpasspasspasspasspasspasspass
   244Xpasspasspasspasspasspasspass
   245Xpasspasspasspasspasspasspass
   247Xpasspasspasspasspasspasspass
   250XXpassN/AN/AN/ApassN/Apass
   252Xpasspasspasspasspasspasspass
   253Xpasspasspasspasspasspasspass
   530XpasspasspassN/AFAILpassN/A
   554XpasspasspassN/Apasspasspass
Data Models
§C.1 The Null Data Model 
   436XN/AN/AN/AN/AN/AN/AN/A
§C.2 The ECMAScript Data Model 
   278passpasspasspasspasspasspass
   444passN/AN/AN/AN/Apasspass
   445passN/AN/AN/AN/Apasspass
   446passN/AN/AN/AN/Apasspass
   448passN/AN/AN/AN/Apasspass
   449passN/AN/AN/AN/Apasspass
   451passN/AN/AN/AN/Apasspass
   452passN/AN/AN/AN/Apasspass
   453passN/AN/AN/AN/ApassFAIL
   456passN/AN/AN/AN/Apasspass
   457passN/AN/AN/AN/Apasspass
   459passN/AN/AN/AN/Apasspass
   460passN/AN/AN/AN/Apasspass
   557passN/AN/AN/AN/ApassN/A
   558passN/AN/AN/AN/Apasspass
   560passN/AN/AN/AN/Apasspass
   561passN/AN/AN/AN/ApassN/A
   562FAILN/AN/AN/AN/AFAILFAIL
   569passN/AN/AN/AN/ApassN/A
   578passN/AN/AN/AN/Apasspass
§C.3 The XPath Data Model 
   463N/AN/AN/AN/AN/AN/AN/A
   464N/AN/AN/AN/AN/AN/AN/A
   465N/AN/AN/AN/AN/AN/AN/A
   466N/AN/AN/AN/AN/AN/AN/A
   467N/AN/AN/AN/AN/AN/AN/A
   468N/AN/AN/AN/AN/AN/AN/A
   469N/AN/AN/AN/AN/AN/AN/A
   470N/AN/AN/AN/AN/AN/AN/A
   473N/AN/AN/AN/AN/AN/AN/A
   474N/AN/AN/AN/AN/AN/AN/A
   475N/AN/AN/AN/AN/AN/AN/A
   476N/AN/AN/AN/AN/AN/AN/A
   477N/AN/AN/AN/AN/AN/AN/A
   478N/AN/AN/AN/AN/AN/AN/A
   479N/AN/AN/AN/AN/AN/AN/A
   480N/AN/AN/AN/AN/AN/AN/A
   481N/AN/AN/AN/AN/AN/AN/A
   482N/AN/AN/AN/AN/AN/AN/A
   483N/AN/AN/AN/AN/AN/AN/A
   537N/AN/AN/AN/AN/AN/AN/A
   539N/AN/AN/AN/AN/AN/AN/A
   540N/AN/AN/AN/AN/AN/AN/A
   542N/AN/AN/AN/AN/AN/AN/A
   543N/AN/AN/AN/AN/AN/AN/A
   544N/AN/AN/AN/AN/AN/AN/A
   545N/AN/AN/AN/AN/AN/AN/A
   546N/AN/AN/AN/AN/AN/AN/A
   547N/AN/AN/AN/AN/AN/AN/A
   555N/AN/AN/AN/AN/AN/AN/A
   568N/AN/AN/AN/AN/AN/AN/A
Event I/O Processor
§D.1 SCXML Event I/O Processor 
   189Xpasspasspasspasspasspasspass
   190Xpasspasspasspasspasspasspass
   191Xpasspasspasspasspasspasspass
   192Xpasspasspasspasspasspasspass
   193passpasspasspasspasspasspass
   347Xpasspasspasspasspasspasspass
   348Xpasspasspasspasspasspasspass
   349XpasspasspasspassFAILpassFAIL
   350XpasspasspassN/Apasspasspass
   351Xpasspasspasspasspasspasspass
   352Xpasspasspasspasspasspasspass
   354XpasspasspassN/Apasspasspass
   495Xpasspasspasspasspasspasspass
   496XpasspasspassN/Apasspasspass
   500XpasspasspasspassFAILpassN/A
   501XpasspasspasspassFAILpassN/A
§D.2 Basic HTTP Event I/O Processor 
   509passpassFAILN/AFAILpassN/A
   510passpasspasspassFAILpassN/A
   513XN/AN/AN/AN/AN/AN/AN/A
   518passpassFAILN/AFAILpassN/A
   519passpassFAILN/AFAILpassN/A
   520passpassFAILN/AFAILpassN/A
   522passpasspasspassFAILpassN/A
   531passpasspassN/AFAILpassN/A
   532passpasspassN/AFAILpassN/A
   534passpassFAILN/AFAILpassN/A
   567passpasspasspassFAILpassN/A
   577passpasspassN/AFAILpassN/A
diff --git a/test/w3c/TESTS.md b/test/w3c/TESTS.md index 1a03c88..cb50028 100644 --- a/test/w3c/TESTS.md +++ b/test/w3c/TESTS.md @@ -1,1246 +1,1342 @@ - +
- - + + + - - + + - + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - + - - - - + - - + + + + + + - + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - + - - + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + @@ -1253,724 +1349,783 @@ + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - - - + + + + - - - + + + + - - - - + - - + + + + + + - + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - + - - - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - + - - + + + + + + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - + - - - - - - - + + + + + + + + - - + - + + + + - - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - + - + + + + - - + - - - - + - - + + + + + + - + - + @@ -1983,175 +2138,190 @@ + - + - - - - - - - + + + + + + + + - + + - - + + - + + - - + + - + - - + + + - + + - - + + - + + - - + + - + - - + + + - + + - - + + - + + - - + + - + - - + + + - + + - - + + - + + - - + + - + - - + + + - + + - + @@ -2160,34 +2330,37 @@ - + + - - + + - + - - + + + - + + - + @@ -2196,22 +2369,24 @@ - + + - - + + - + - + + @@ -2220,17 +2395,18 @@ - + + - - + + - + @@ -2243,6 +2419,7 @@ + @@ -2255,6 +2432,7 @@ + @@ -2267,6 +2445,7 @@ + @@ -2279,6 +2458,7 @@ + @@ -2291,6 +2471,7 @@ + @@ -2303,6 +2484,7 @@ + @@ -2315,6 +2497,7 @@ + @@ -2327,6 +2510,7 @@ + @@ -2339,6 +2523,7 @@ + @@ -2351,6 +2536,7 @@ + @@ -2363,6 +2549,7 @@ + @@ -2375,6 +2562,7 @@ + @@ -2387,6 +2575,7 @@ + @@ -2399,6 +2588,7 @@ + @@ -2411,6 +2601,7 @@ + @@ -2423,6 +2614,7 @@ + @@ -2435,6 +2627,7 @@ + @@ -2447,6 +2640,7 @@ + @@ -2459,6 +2653,7 @@ + @@ -2471,6 +2666,7 @@ + @@ -2483,6 +2679,7 @@ + @@ -2495,6 +2692,7 @@ + @@ -2507,6 +2705,7 @@ + @@ -2519,6 +2718,7 @@ + @@ -2531,6 +2731,7 @@ + @@ -2543,6 +2744,7 @@ + @@ -2555,6 +2757,7 @@ + @@ -2567,6 +2770,7 @@ + @@ -2579,6 +2783,7 @@ + @@ -2591,233 +2796,252 @@ + - + - + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - - - - - - + + + + + + + + - - - - + - - + + + + + + - - + + + + + + - - - - + - - + - - - - + + + + + + - + - - + - + + + + - - + - - + + + + + + - - - - + @@ -2830,114 +3054,124 @@ + - - + - + + + + - - + - - + - + + + + - - + - - + - + + + + - - + - - + - - - - + + + + + + - - + - + + + + - - + - - + - + + + + - - + - - + - + + + + - - + - - + + + + + + - - - - + - - + - + + + + - - +
Test (Req. / Man.) NSC (Lua)C (ECMA)VHDL PromelaJava (JEXL)Lua ECMASpin PromelaLuaC (ECMA)C (Lua)
Core ConstructsCore Constructs
§3.10 The History Element  The History Element 
   387 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   388 X passpasspasspasspassFAILpassOKN/AOKOKOKFAILOKOK
   579 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   580 X passpasspasspasspassFAILpassOKN/AOKOKOKFAILOKOK
§3.12 SCXML Events  SCXML Events 
   396 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   399 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   401 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   402 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§3.13 Selecting and Executing Transitions  Selecting and Executing Transitions 
   403a X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   403c X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   403b X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   404 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   405 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   406 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   407 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   409 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   411 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   412 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   413 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   415 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   416 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   417 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   419 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   421 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   422 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   423 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   503 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   504 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   505 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   506 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   533 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§3.2 The SCXML Element  The SCXML Element 
   355 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   576 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§3.3 The State Element  The State Element 
   364 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§3.7 The Final Element  The Final Element 
   372 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   570 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§3.8 The Onentry Element  The Onentry Element 
   375 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   376 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§3.9 The Onexit Element  The Onexit Element 
   377 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   378 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
Executable ContentExecutable Content
§4.2 The Raise Element  The Raise Element 
   144 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§4.3 The If Element  The If Element 
   147 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   148 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   149 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§4.6 The Foreach Element  The Foreach Element 
   150 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   151 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   152 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   153 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   155 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   156 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   525 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§4.9 Evaluation of Executable Content  Evaluation of Executable Content 
   158 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   159 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
Data Model and ManipulationData Model and Manipulation
§5.10 System Variables  System Variables 
   318 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   319 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   321 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   322 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   323 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   324 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   325 X passFAILFAILpassOK N/ApasspassOKOKOKOKFAILFAIL
   326 X passFAILFAILpassOK N/ApasspassOKOKOKOKFAILFAIL
   329 X passFAILFAILpassOK N/ApasspassOKOKOKOKFAILFAIL
   330 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   331 X passpasspasspassOK N/AFAILpassOKOKOKFAILOKOK
   332 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   333 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   335 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   336 X passFAILFAILpasspasspasspassOKN/AOKOKOKOKFAILFAIL
   337 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   338 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   339 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   342 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   346 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§5.3 The Data Element  The Data Element 
   276 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   277 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   279 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   280 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   550 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   551 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   552 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§5.4 The Assign Element  The Assign Element 
   286 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   287 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   288 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   487 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§5.5 The Donedata Element  The Donedata Element 
   294 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§5.6 The Content Element  The Content Element 
   527 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   528 X passpassFAILpassOK N/ApasspassOKOKOKOKFAILOK
   529 X passFAILpasspasspasspasspassOKN/AOKOKOKOKOKFAIL
§5.7 The Param Element  The Param Element 
   298 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   343 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   488 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§5.8 The Script Element  The Script Element 
   301 X XpassFAILOK N/AOK N/A N/A N/A N/AFAIL
   302 X passFAILpasspasspasspasspassOKN/AOKOKOKOKOKFAIL
   303 X passFAILpasspasspasspasspassOKN/AOKOKOKOKOKFAIL
   304 X passFAILpasspasspasspasspassOKN/AOKOKOKOKOKFAIL
§5.9 Expressions  Expressions 
   307N/A N/A N/AN/A
   309 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   310 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   311 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   312 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   313 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   314 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   344 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
External CommunicationsExternal Communications
§6.2 The Send Element  The Send Element 
   172 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   173 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   174 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   175 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   176 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   178 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   179 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   183 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   185 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   186 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   187 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   194 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   198 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   199 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   200 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   201 passFAILOK N/ApasspasspasspassOKOKOKOKN/AFAIL
   205 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   521 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   553 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
§6.3 The Cancel Element  The Cancel Element 
   207 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   208 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   210 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
§6.4 The Invoke Element  The Invoke Element 
   215 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   216 X passFAILOK N/ApassOKOKOKOK N/ApasspassFAIL
   220 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   223 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   224 X passpasspasspassOK N/AFAILpassOKOKOKFAILOKOK
   225 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   226 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   228 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   229 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   230 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   232 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   233 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   234 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   235 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   236 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   237 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   239 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   240 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   241 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   242 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   243 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   244 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   245 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   247 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   250 X XpasspasspassOK N/AOK N/A N/A N/AOKOK
   252 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   253 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   530 X passFAILOK N/ApassOKOKOKOK N/ApasspassFAIL
   554 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
Data ModelsData Models
§C.1 The Null Data Model  The Null Data Model 
   436N/A N/A N/AN/A
§C.2 The ECMAScript Data Model  The ECMAScript Data Model 
   278 passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   444 passOKN/A N/Apasspass N/AOK N/AOK N/A
   445 passOKN/A N/Apasspass N/AOK N/AOK N/A
   446 passOK N/Apasspass N/A N/AOKN/AOK N/A
   448 passOKN/A N/Apasspass N/AOK N/AOK N/A
   449 passOKN/A N/Apasspass N/AOK N/AOK N/A
   451 passOK N/Apasspass N/A N/AOKN/AOK N/A
   452 passOKN/A N/Apasspass N/AOK N/AOK N/A
   453 passOKN/A N/AFAILpass N/AOK N/AFAIL N/A
   456 passOK N/Apasspass N/A N/AOKN/AOK N/A
   457 passOKN/A N/Apasspass N/AOK N/AOK N/A
   459 passOKN/A N/Apasspass N/AOK N/AOK N/A
   460 passOK N/Apasspass N/A N/AOKN/AOK N/A
   557 passOKN/A N/A N/ApassOK N/A N/A N/A   558 passOKN/A N/Apasspass N/AOK N/AOK N/A
   560 passOK N/Apasspass N/A N/AOKN/AOK N/A
   561 passOKN/A N/A N/ApassOK N/A N/A N/A   562 passOKN/A N/AFAILpass N/AOK N/AFAIL N/A
   569 passOK N/A N/ApassN/AOK N/A N/A N/A   578 passOKN/A N/Apasspass N/AOK N/AOK N/A
§C.3 The XPath Data Model  The XPath Data Model 
   463N/A N/A N/AN/A
   464N/A N/A N/AN/A
   465N/A N/A N/AN/A
   466N/A N/A N/AN/A
   467N/A N/A N/AN/A
   468N/A N/A N/AN/A
   469N/A N/A N/AN/A
   470N/A N/A N/AN/A
   473N/A N/A N/AN/A
   474N/A N/A N/AN/A
   475N/A N/A N/AN/A
   476N/A N/A N/AN/A
   477N/A N/A N/AN/A
   478N/A N/A N/AN/A
   479N/A N/A N/AN/A
   480N/A N/A N/AN/A
   481N/A N/A N/AN/A
   482N/A N/A N/AN/A
   483N/A N/A N/AN/A
   537N/A N/A N/AN/A
   539N/A N/A N/AN/A
   540N/A N/A N/AN/A
   542N/A N/A N/AN/A
   543N/A N/A N/AN/A
   544N/A N/A N/AN/A
   545N/A N/A N/AN/A
   546N/A N/A N/AN/A
   547N/A N/A N/AN/A
   555N/A N/A N/AN/A
   568N/A N/A N/AN/A
Event I/O ProcessorEvent I/O Processor
§D.1 SCXML Event I/O Processor  SCXML Event I/O Processor 
   189 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   190 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   191 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   192 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   193 passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   347 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   348 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   349 X passFAILFAILpasspasspasspassOKN/AOKOKOKOKFAILFAIL
   350 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   351 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   352 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   354 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   495 X passpasspasspasspasspasspassOKN/AOKOKOKOKOKOK
   496 X passpasspasspassOK N/ApasspassOKOKOKOKOKOK
   500 X passFAILOKN/AOKOKOKOK N/ApasspasspasspassFAIL
   501 X passFAILOK N/ApasspasspasspassOKOKOKOKN/AFAIL
§D.2 Basic HTTP Event I/O Processor  Basic HTTP Event I/O Processor 
   509 passFAILOK N/ApassOKOKOKFAIL N/AFAILpassFAIL
   510 passFAILOKN/AOKOKOKOK N/ApasspasspasspassFAIL
   513N/A N/A N/AN/A
   518 passFAILOK N/ApassOKOKOKFAIL N/AFAILpassFAIL
   519 passFAILOK N/ApassOKOKOKFAIL N/AFAILpassFAIL
   520 passFAILOK N/ApassOKOKOKFAIL N/AFAILpassFAIL
   522 passFAILOK N/ApasspasspasspassOKOKOKOKN/AFAIL
   531 passFAILOK N/ApassOKOKOKOK N/ApasspassFAIL
   532 passFAILOK N/ApassOKOKOKOK N/ApasspassFAIL
   534 passFAILOK N/ApassOKOKOKFAIL N/AFAILpassFAIL
   567 passFAILOKN/AOKOKOKOK N/ApasspasspasspassFAIL
   577 passFAILOK N/ApassOKOKOKOK N/ApasspassFAIL
diff --git a/test/w3c/create-test-table.pl b/test/w3c/create-test-table.pl index c16cd35..bca8f87 100755 --- a/test/w3c/create-test-table.pl +++ b/test/w3c/create-test-table.pl @@ -24,15 +24,15 @@ my $manifest = XMLin("manifest.xml"); my %testClasses = ( 'w3c/ecma' => 'ECMA', 'w3c/lua' => 'Lua', -#'w3c/namespace' => 'NS', +'w3c/namespace' => 'NS', 'w3c/promela' => 'Promela', # 'w3c/c89' => 'C89', -#'w3c/gen/c/ecma' => 'C (ECMA)', -#'w3c/gen/c/lua' => 'C (Lua)', -# 'w3c/binding/java/jexl' => 'JEXL', -#'w3c/spin/promela' => 'Spin' +'w3c/gen/c/ecma' => 'C (ECMA)', +'w3c/gen/c/lua' => 'C (Lua)', +'w3c/binding/java/jexl' => 'Java (JEXL)', +# 'w3c/spin/promela' => 'Spin' 'w3c/gen/vhdl/promela' => 'VHDL Promela', -'w3c/gen/vhdl/ecma' => 'VHDL ECMA', +# 'w3c/gen/vhdl/ecma' => 'VHDL ECMA', ); my %specClass = ( @@ -198,8 +198,8 @@ EOF my $output; - my $pass = 'pass'; - my $fail = 'FAIL'; + my $pass = 'OK'; + my $fail = 'FAIL'; $link = "https://github.com/tklab-tud/uscxml/tree/master/test/w3c/txml/test${test}.txml"; -- cgit v0.12