diff options
700 files changed, 474 insertions, 19826 deletions
diff --git a/apps/mmi-browser.cpp b/apps/mmi-browser.cpp index b62aaee..ef813af 100644 --- a/apps/mmi-browser.cpp +++ b/apps/mmi-browser.cpp @@ -57,7 +57,7 @@ int main(int argc, char** argv) { } bool verbose = false; - + #ifndef _WIN32 opterr = 0; #endif @@ -95,7 +95,7 @@ int main(int argc, char** argv) { VerboseMonitor* vm = new VerboseMonitor(); interpreter->addMonitor(vm); } - + interpreter->start(); while(interpreter->runOnMainThread(25)); delete interpreter; diff --git a/contrib/dom/idl/NodeList.idl b/contrib/dom/idl/NodeList.idl index 9d1aa2c..cef2f90 100644 --- a/contrib/dom/idl/NodeList.idl +++ b/contrib/dom/idl/NodeList.idl @@ -1,4 +1,6 @@ -interface NodeList { +[ + CustomIndexedGetter +] interface NodeList { Node item(in unsigned long index); readonly attribute unsigned long length; }; diff --git a/src/bindings/swig/php/uscxml.i b/src/bindings/swig/php/uscxml.i index 6180d05..ba58678 100644 --- a/src/bindings/swig/php/uscxml.i +++ b/src/bindings/swig/php/uscxml.i @@ -31,6 +31,7 @@ void*** tsrm_ls; %feature("director") uscxml::InterpreterMonitor; %ignore uscxml::NumAttr; +%ignore uscxml::SCXMLParser; //*********************************************** // Parse the header file to generate wrappers diff --git a/src/uscxml/Interpreter.cpp b/src/uscxml/Interpreter.cpp index e59ef5f..089406d 100644 --- a/src/uscxml/Interpreter.cpp +++ b/src/uscxml/Interpreter.cpp @@ -108,7 +108,7 @@ Interpreter* Interpreter::fromURI(const std::string& uri) { Interpreter* Interpreter::fromInputSource(Arabica::SAX::InputSource<std::string>& source) { Interpreter* interpreter = new InterpreterDraft6(); - + SCXMLParser* parser = new SCXMLParser(interpreter); if(!parser->parse(source) || !parser->getDocument().hasChildNodes()) { if(parser->_errorHandler.errorsReported()) { @@ -260,24 +260,24 @@ void Interpreter::init() { NodeList<std::string> scxmls = _document.getElementsByTagNameNS(_nsURL, "scxml"); if (scxmls.getLength() > 0) { _scxml = (Arabica::DOM::Element<std::string>)scxmls.item(0); - + // setup xpath and check that it works _xpath.setNamespaceContext(_nsContext); Arabica::XPath::NodeSet<std::string> scxmls = _xpath.evaluate("/" + _xpathPrefix + "scxml", _document).asNodeSet(); assert(scxmls.size() > 0); assert(scxmls[0] == _scxml); - + if (_name.length() == 0) _name = (HAS_ATTR(_scxml, "name") ? ATTR(_scxml, "name") : getUUID()); - + normalize(_document); - + if (_capabilities & CAN_GENERIC_HTTP) _httpServlet = new InterpreterServlet(this); - + _sendQueue = new DelayedEventQueue(); _sendQueue->start(); - + } else { LOG(ERROR) << "Cannot find SCXML element" << std::endl; } @@ -552,6 +552,7 @@ void Interpreter::send(const Arabica::DOM::Node<std::string>& element) { if (contents.size() > 0) { if (HAS_ATTR(contents[0], "expr")) { if (_dataModel) { + /// this is out of spec std::string contentValue = _dataModel.evalAsString(ATTR(contents[0], "expr")); sendReq.content = contentValue; // sendReq.data.atom = contentValue; @@ -560,9 +561,50 @@ void Interpreter::send(const Arabica::DOM::Node<std::string>& element) { LOG(ERROR) << "content element has expr attribute but no datamodel is specified."; } } else if (contents[0].hasChildNodes()) { - sendReq.content = contents[0].getFirstChild().getNodeValue(); -// sendReq.data.atom = sendReq.content; -// sendReq.data.type = Data::VERBATIM; + bool presentAsDOM = false; + NodeList<std::string> contentChilds = contents[0].getChildNodes(); + for (int i = 0; i < contentChilds.getLength(); i++) { + if (contentChilds.item(i).getNodeType() == Node_base::ELEMENT_NODE) { + presentAsDOM = true; + break; + } + } + if (presentAsDOM) { + // use the whole dom + Arabica::DOM::DOMImplementation<std::string> domFactory = Arabica::SimpleDOM::DOMImplementation<std::string>::getDOMImplementation(); + sendReq.dom = domFactory.createDocument(contents[0].getNamespaceURI(), "", 0); + for (int i = 0; i < contentChilds.getLength(); i++) { + try { + Node<std::string> newNode = sendReq.dom.importNode(contentChilds.item(i), true); + sendReq.dom.appendChild(newNode); + } catch (...) { + + } + } + std::cout << sendReq.dom << std::endl; + } else { + Node<std::string> textChild = contents[0].getFirstChild(); + while(textChild && textChild.getNodeType() != Node_base::TEXT_NODE) { + textChild = textChild.getNextSibling(); + } + if (textChild && textChild.getNodeType() == Node_base::TEXT_NODE) { + /// create space normalized string + std::istringstream iss(contents[0].getFirstChild().getNodeValue()); + std::stringstream content; + std::string seperator; + do { + std::string token; + iss >> token; + if (token.length() > 0) { + content << seperator << token; + seperator = " "; + } + } while (iss); + sendReq.content = content.str(); + } else { + LOG(ERROR) << "content element has neither text nor element children."; + } + } } else { LOG(ERROR) << "content element does not specify any content."; } @@ -587,6 +629,7 @@ void Interpreter::delayedSend(void* userdata, std::string eventName) { Interpreter* INSTANCE = data->first; SendRequest sendReq = data->second; + // see http://www.w3.org/TR/scxml/#SendTargets if (boost::iequals(sendReq.target, "#_parent")) { // send to parent scxml session if (INSTANCE->_parentQueue != NULL) { @@ -611,7 +654,12 @@ void Interpreter::delayedSend(void* userdata, std::string eventName) { LOG(ERROR) << "Can not send to invoked component '" << invokeId << "', no such invokeId" << std::endl; } } else if (sendReq.target.length() == 0) { - INSTANCE->receive(sendReq); + /** + * If neither the 'target' nor the 'targetexpr' attribute is specified, the + * SCXML Processor must add the event will be added to the external event + * queue of the sending session. + */ + INSTANCE->_externalQueue.push(sendReq); } else { IOProcessor ioProc = INSTANCE->getIOProcessor(sendReq.type); if (ioProc) { @@ -628,7 +676,11 @@ void Interpreter::delayedSend(void* userdata, std::string eventName) { void Interpreter::invoke(const Arabica::DOM::Node<std::string>& element) { InvokeRequest invokeReq; - invokeReq.dom = element; + + Arabica::DOM::DOMImplementation<std::string> domFactory = Arabica::SimpleDOM::DOMImplementation<std::string>::getDOMImplementation(); + invokeReq.dom = domFactory.createDocument(element.getNamespaceURI(), "", 0); + Node<std::string> newNode = invokeReq.dom.importNode(element, true); + invokeReq.dom.appendChild(newNode); try { // type @@ -891,7 +943,7 @@ void Interpreter::executeContent(const Arabica::DOM::Node<std::string>& content) if (childs.item(i).getNodeType() != Node_base::ELEMENT_NODE) continue; if (boost::iequals(TAGNAME(childs.item(i)), _xmlNSPrefix + "elseif") || - boost::iequals(TAGNAME(childs.item(i)), _xmlNSPrefix + "else")) { + boost::iequals(TAGNAME(childs.item(i)), _xmlNSPrefix + "else")) { if (blockIsTrue) { // last block was true, break here break; @@ -917,25 +969,34 @@ void Interpreter::executeContent(const Arabica::DOM::Node<std::string>& content) std::string array = ATTR(content, "array"); std::string item = ATTR(content, "item"); std::string index = (HAS_ATTR(content, "index") ? ATTR(content, "index") : ""); - uint32_t iterations = _dataModel.getLength(array); - _dataModel.pushContext(); // copy old and enter new context - for (uint32_t iteration = 0; iteration < iterations; iteration++) { - { - // assign array element to item - std::stringstream ss; - ss << array << "[" << iteration << "]"; - _dataModel.assign(item, ss.str()); - } - if (index.length() > 0) { - // assign iteration element to index - std::stringstream ss; - ss << iteration; - _dataModel.assign(index,ss.str()); + uint32_t iterations = 0; + try { + iterations = _dataModel.getLength(array); + try { + _dataModel.pushContext(); // copy old and enter new context + for (uint32_t iteration = 0; iteration < iterations; iteration++) { + { + // assign array element to item + std::stringstream ss; + ss << array << "[" << iteration << "]"; + _dataModel.assign(item, ss.str()); + } + if (index.length() > 0) { + // assign iteration element to index + std::stringstream ss; + ss << iteration; + _dataModel.assign(index,ss.str()); + } + if (content.hasChildNodes()) + executeContent(content.getChildNodes()); + } + _dataModel.popContext(); // leave stacked context + } catch (Event e) { + LOG(ERROR) << "Syntax error in foreach element:" << std::endl << e << std::endl; } - if (content.hasChildNodes()) - executeContent(content.getChildNodes()); + } catch (Event e) { + LOG(ERROR) << "Syntax error in array attribute of foreach element:" << std::endl << e << std::endl; } - _dataModel.popContext(); // leave stacked context } else { LOG(ERROR) << "Expected array and item attributes with foreach element!" << std::endl; } @@ -1225,7 +1286,7 @@ Arabica::XPath::NodeSet<std::string> Interpreter::getInitialStates(Arabica::DOM: assert(isCompound(state) || isParallel(state)); Arabica::XPath::NodeSet<std::string> initialStates; - + // initial attribute at element Arabica::DOM::Element<std::string> stateElem = (Arabica::DOM::Element<std::string>)state; if (stateElem.hasAttribute("initial")) { @@ -1233,7 +1294,7 @@ Arabica::XPath::NodeSet<std::string> Interpreter::getInitialStates(Arabica::DOM: } Arabica::XPath::NodeSet<std::string> initStates; - + // initial element as child - but not the implicit generated one NodeSet<std::string> initElems = filterChildElements(_xmlNSPrefix + "initial", state); if(initElems.size() == 1 && !boost::iequals(ATTR(initElems[0], "generated"), "true")) { diff --git a/src/uscxml/Interpreter.h b/src/uscxml/Interpreter.h index 353233d..5d45e4c 100644 --- a/src/uscxml/Interpreter.h +++ b/src/uscxml/Interpreter.h @@ -77,7 +77,7 @@ public: Arabica::SAX::CatchErrorHandler<std::string> _errorHandler; Interpreter* _interpreter; }; - + class Interpreter { public: enum Binding { @@ -176,10 +176,10 @@ public: void setConfiguration(const std::vector<std::string>& states) { _userDefinedStartConfiguration = states; } - + Arabica::DOM::Node<std::string> getState(const std::string& stateId); Arabica::XPath::NodeSet<std::string> getStates(const std::vector<std::string>& stateIds); - + Arabica::DOM::Document<std::string>& getDocument() { return _document; } @@ -213,7 +213,7 @@ public: static bool isParallel(const Arabica::DOM::Node<std::string>& state); static bool isCompound(const Arabica::DOM::Node<std::string>& state); static bool isDescendant(const Arabica::DOM::Node<std::string>& s1, const Arabica::DOM::Node<std::string>& s2); - + static std::vector<std::string> tokenizeIdRefs(const std::string& idRefs); bool isInitial(const Arabica::DOM::Node<std::string>& state); @@ -256,7 +256,7 @@ protected: Arabica::XPath::NodeSet<std::string> _configuration; Arabica::XPath::NodeSet<std::string> _statesToInvoke; std::vector<std::string> _userDefinedStartConfiguration; - + DataModel _dataModel; std::map<std::string, Arabica::XPath::NodeSet<std::string> > _historyValue; @@ -309,7 +309,7 @@ protected: /// TODO: We need to remember to adapt them when the DOM is operated upon std::map<std::string, Arabica::DOM::Node<std::string> > _cachedStates; std::map<std::string, URL> _cachedURLs; - + friend class SCXMLParser; }; diff --git a/src/uscxml/Message.cpp b/src/uscxml/Message.cpp index 845118b..3ada20c 100644 --- a/src/uscxml/Message.cpp +++ b/src/uscxml/Message.cpp @@ -182,7 +182,7 @@ Data Data::fromJSON(const std::string& jsonString) { if (jsonString.length() == 0) return data; - + jsmn_parser p; jsmntok_t* t = NULL; diff --git a/src/uscxml/Message.h b/src/uscxml/Message.h index 2a49264..176ae86 100644 --- a/src/uscxml/Message.h +++ b/src/uscxml/Message.h @@ -40,19 +40,35 @@ public: return ss.str(); } - std::map<std::string, Data> getCompund() { return compound; } - void setCompound(const std::map<std::string, Data>& compound) { this->compound = compound; } + std::map<std::string, Data> getCompund() { + return compound; + } + void setCompound(const std::map<std::string, Data>& compound) { + this->compound = compound; + } - std::list<Data> getArray() { return array; } - void setArray(const std::list<Data>& array) { this->array = array; } + std::list<Data> getArray() { + return array; + } + void setArray(const std::list<Data>& array) { + this->array = array; + } + + std::string getAtom() { + return atom; + } + void setAtom(const std::string& atom) { + this->atom = atom; + } - std::string getAtom() { return atom; } - void setAtom(const std::string& atom) { this->atom = atom; } + Type getType() { + return type; + } + void setType(const Type type) { + this->type = type; + } - Type getType() { return type; } - void setType(const Type type) { this->type = type; } - #ifdef SWIGIMPORTED protected: #endif @@ -84,29 +100,68 @@ public: return this < &other; } - std::string getName() { return name; } - void setName(const std::string& name) { this->name = name; } + std::string getName() { + return name; + } + void setName(const std::string& name) { + this->name = name; + } + + Type getType() { + return type; + } + void setType(const Type type) { + this->type = type; + } - Type getType() { return type; } - void setType(const Type type) { this->type = type; } + std::string getOrigin() { + return origin; + } + void setOrigin(const std::string& origin) { + this->origin = origin; + } - std::string getOrigin() { return origin; } - void setOrigin(const std::string& origin) { this->origin = origin; } + std::string getOriginType() { + return origintype; + } + void setOriginType(const std::string& originType) { + this->origintype = originType; + } - std::string getOriginType() { return origintype; } - void setOriginType(const std::string& originType) { this->origintype = originType; } + Arabica::DOM::Document<std::string> getDOM() { + return dom; + } + void setDOM(const Arabica::DOM::Document<std::string>& dom) { + this->dom = dom; + } - Arabica::DOM::Node<std::string> getDOM() { return dom; } - void setDOM(const Arabica::DOM::Node<std::string>& dom) { this->dom = dom; } + std::string getContent() { + return content; + } + void setContent(const std::string& content) { + this->content = content; + } - std::string getSendId() { return sendid; } - void setSendId(const std::string& sendId) { this->sendid = sendId; } + std::string getSendId() { + return sendid; + } + void setSendId(const std::string& sendId) { + this->sendid = sendId; + } - std::string getInvokeId() { return invokeid; } - void setInvokeId(const std::string& invokeId) { this->invokeid = invokeId; } + std::string getInvokeId() { + return invokeid; + } + void setInvokeId(const std::string& invokeId) { + this->invokeid = invokeId; + } - Data getData() { return data; } - void setData(const Data& invokeId) { this->data = data; } + Data getData() { + return data; + } + void setData(const Data& invokeId) { + this->data = data; + } static Event fromXML(const std::string& xmlString); Arabica::DOM::Document<std::string> toDocument(); @@ -124,10 +179,11 @@ protected: Type type; std::string origin; std::string origintype; - Arabica::DOM::Node<std::string> dom; + Arabica::DOM::Document<std::string> dom; std::string sendid; std::string invokeid; Data data; + std::string content; #ifndef SWIG friend std::ostream& operator<< (std::ostream& os, const Event& event); @@ -138,22 +194,33 @@ class InvokeRequest : public Event { public: InvokeRequest(Event event) : Event(event) {} InvokeRequest() {} - - std::string getType() { return type; } - void setType(const std::string& type) { this->type = type; } - std::string getSource() { return src; } - void setSource(const std::string& src) { this->src = src; } + std::string getType() { + return type; + } + void setType(const std::string& type) { + this->type = type; + } - std::string getContent() { return content; } - void setContent(const std::string& content) { this->content = content; } - - bool isAutoForwarded() { return autoForward; } - void setAutoForwarded(bool autoForward) { this->autoForward = autoForward; } + std::string getSource() { + return src; + } + void setSource(const std::string& src) { + this->src = src; + } + + bool isAutoForwarded() { + return autoForward; + } + void setAutoForwarded(bool autoForward) { + this->autoForward = autoForward; + } #ifdef SWIG /// TODO: Do we want to set namelist and params as well? - std::map<std::string, std::string> getNameList() { return namelist; } + std::map<std::string, std::string> getNameList() { + return namelist; + } const std::vector<std::string> getNameListKeys() { std::set<std::string> keys; @@ -175,7 +242,7 @@ public: } return paramsMap; } - + const std::vector<std::string> getParamKeys() { std::set<std::string> keys; params_t::iterator paramIter = params.begin(); @@ -185,10 +252,14 @@ public: } return std::vector<std::string>(keys.begin(), keys.end()); } - + #else - std::map<std::string, std::string>& getNameList() { return namelist; } - std::multimap<std::string, std::string>& getParams() { return params; } + std::map<std::string, std::string>& getNameList() { + return namelist; + } + std::multimap<std::string, std::string>& getParams() { + return params; + } #endif static InvokeRequest fromXML(const std::string& xmlString); @@ -204,7 +275,6 @@ protected: #endif std::string type; std::string src; - std::string content; bool autoForward; std::map<std::string, std::string> namelist; std::multimap<std::string, std::string> params; @@ -223,21 +293,32 @@ public: SendRequest() {} SendRequest(Event event) : Event(event) {} - std::string getTarget() { return target; } - void setTarget(const std::string& target) { this->target = target; } + std::string getTarget() { + return target; + } + void setTarget(const std::string& target) { + this->target = target; + } - std::string getType() { return type; } - void setType(const std::string& type) { this->type = type; } + std::string getType() { + return type; + } + void setType(const std::string& type) { + this->type = type; + } - uint32_t getDelayMs() { return delayMs; } - void setDelayMs(uint32_t delayMs) { this->delayMs = delayMs; } - - std::string getContent() { return content; } - void setContent(const std::string& content) { this->content = content; } + uint32_t getDelayMs() { + return delayMs; + } + void setDelayMs(uint32_t delayMs) { + this->delayMs = delayMs; + } #ifdef SWIG /// TODO: Do we want to set namelist and params as well? - std::map<std::string, std::string> getNameList() { return namelist; } + std::map<std::string, std::string> getNameList() { + return namelist; + } const std::vector<std::string> getNameListKeys() { std::set<std::string> keys; @@ -259,7 +340,7 @@ public: } return paramsMap; } - + const std::vector<std::string> getParamKeys() { std::set<std::string> keys; params_t::iterator paramIter = params.begin(); @@ -269,10 +350,14 @@ public: } return std::vector<std::string>(keys.begin(), keys.end()); } - + #else - std::map<std::string, std::string>& getNameList() { return namelist; } - std::multimap<std::string, std::string>& getParams() { return params; } + std::map<std::string, std::string>& getNameList() { + return namelist; + } + std::multimap<std::string, std::string>& getParams() { + return params; + } #endif static SendRequest fromXML(const std::string& xmlString); @@ -290,11 +375,10 @@ protected: std::string target; std::string type; uint32_t delayMs; - std::string content; std::map<std::string, std::string> namelist; std::multimap<std::string, std::string> params; - + typedef std::map<std::string, std::string> namelist_t; typedef std::multimap<std::string, std::string> params_t; diff --git a/src/uscxml/interpreter/InterpreterDraft6.cpp b/src/uscxml/interpreter/InterpreterDraft6.cpp index d95ae4c..18a42fd 100644 --- a/src/uscxml/interpreter/InterpreterDraft6.cpp +++ b/src/uscxml/interpreter/InterpreterDraft6.cpp @@ -67,12 +67,12 @@ void InterpreterDraft6::interpret() { } NodeSet<std::string> initialTransitions; - + if (_userDefinedStartConfiguration.size() == 0) { // try to get initial transition form initial element - initialTransitions = _xpath.evaluate("/" + _xpathPrefix + "scxml/" + _xpathPrefix + "initial/" + _xpathPrefix + "transition", _document).asNodeSet(); + initialTransitions = _xpath.evaluate("/" + _xpathPrefix + "scxml/" + _xpathPrefix + "initial/" + _xpathPrefix + "transition", _document).asNodeSet(); } - + if (initialTransitions.size() == 0) { Arabica::XPath::NodeSet<std::string> initialStates; if (_userDefinedStartConfiguration.size() > 0) { @@ -82,7 +82,7 @@ void InterpreterDraft6::interpret() { // or fetch per draft initialStates = getInitialStates(); } - + assert(initialStates.size() > 0); for (int i = 0; i < initialStates.size(); i++) { Arabica::DOM::Element<std::string> initialElem = _document.createElementNS(_nsURL, "initial"); @@ -94,18 +94,18 @@ void InterpreterDraft6::interpret() { initialTransitions.push_back(transitionElem); } } - + assert(initialTransitions.size() > 0); enterStates(initialTransitions); - - assert(hasLegalConfiguration()); + +// assert(hasLegalConfiguration()); mainEventLoop(); if (_parentQueue) { - // send one final event to unblock eventual listeners - Event quit; - quit.name = "done.state.scxml"; - _parentQueue->push(quit); + // send one final event to unblock eventual listeners + Event quit; + quit.name = "done.state.scxml"; + _parentQueue->push(quit); } // set datamodel to null from this thread @@ -234,7 +234,7 @@ void InterpreterDraft6::mainEventLoop() { continue; // assume that we have a legal configuration as soon as the internal queue is empty - assert(hasLegalConfiguration()); + assert(hasLegalConfiguration()); monIter = _monitors.begin(); // if (!_sendQueue || _sendQueue->isEmpty()) { @@ -844,8 +844,8 @@ void InterpreterDraft6::enterStates(const Arabica::XPath::NodeSet<std::string>& } void InterpreterDraft6::addStatesToEnter(const Arabica::DOM::Node<std::string>& state, - Arabica::XPath::NodeSet<std::string>& statesToEnter, - Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { + Arabica::XPath::NodeSet<std::string>& statesToEnter, + Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { std::string stateId = ((Arabica::DOM::Element<std::string>)state).getAttribute("id"); #if VERBOSE diff --git a/src/uscxml/interpreter/InterpreterDraft6.h b/src/uscxml/interpreter/InterpreterDraft6.h index 10ff10a..476da05 100644 --- a/src/uscxml/interpreter/InterpreterDraft6.h +++ b/src/uscxml/interpreter/InterpreterDraft6.h @@ -8,17 +8,17 @@ namespace uscxml { class InterpreterDraft6 : public Interpreter { void interpret(); void mainEventLoop(); - + void initializeData(const Arabica::DOM::Node<std::string>& data); void microstep(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); void enterStates(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); void addStatesToEnter(const Arabica::DOM::Node<std::string>& state, Arabica::XPath::NodeSet<std::string>& statesToEnter, Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); - + void exitStates(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); void exitInterpreter(); - + Arabica::XPath::NodeSet<std::string> selectEventlessTransitions(); Arabica::XPath::NodeSet<std::string> selectTransitions(const std::string& event); Arabica::XPath::NodeSet<std::string> filterPreempted(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); diff --git a/src/uscxml/interpreter/InterpreterDraft7.cpp b/src/uscxml/interpreter/InterpreterDraft7.cpp index 9542146..7af2d39 100644 --- a/src/uscxml/interpreter/InterpreterDraft7.cpp +++ b/src/uscxml/interpreter/InterpreterDraft7.cpp @@ -27,12 +27,12 @@ procedure interpret(doc): void InterpreterDraft7::interpret() { if (!_isInitialized) init(); - + if (!_scxml) return; - + _sessionId = getUUID(); - + std::string datamodelName; if (datamodelName.length() == 0 && HAS_ATTR(_scxml, "datamodel")) datamodelName = ATTR(_scxml, "datamodel"); @@ -43,7 +43,7 @@ void InterpreterDraft7::interpret() { if(datamodelName.length() > 0 && !_dataModel) { LOG(ERROR) << "No datamodel for " << datamodelName << " registered"; } - + if (_dataModel) { _dataModel.assign("_x.args", _cmdLineOptions); if (_httpServlet) { @@ -52,14 +52,14 @@ void InterpreterDraft7::interpret() { _dataModel.assign("_ioprocessors['http']", data); } } - + setupIOProcessors(); - + _running = true; _binding = (HAS_ATTR(_scxml, "binding") && boost::iequals(ATTR(_scxml, "binding"), "late") ? LATE : EARLY); - + // @TODO: Reread http://www.w3.org/TR/scxml/#DataBinding - + if (_dataModel && _binding == EARLY) { // initialize all data elements NodeSet<std::string> dataElems = _xpath.evaluate("//" + _xpathPrefix + "data", _document).asNodeSet(); @@ -73,14 +73,14 @@ void InterpreterDraft7::interpret() { initializeData(topDataElems[i]); } } - + // executeGlobalScriptElements NodeSet<std::string> globalScriptElems = _xpath.evaluate("/" + _xpathPrefix + "scxml/" + _xpathPrefix + "script", _document).asNodeSet(); for (unsigned int i = 0; i < globalScriptElems.size(); i++) { if (_dataModel) executeContent(globalScriptElems[i]); } - + // initial transition might be implict NodeSet<std::string> initialTransitions = _xpath.evaluate("/" + _xpathPrefix + "scxml/" + _xpathPrefix + "initial/" + _xpathPrefix + "transition", _document).asNodeSet(); if (initialTransitions.size() == 0) { @@ -97,21 +97,21 @@ void InterpreterDraft7::interpret() { } } enterStates(initialTransitions); - + // assert(hasLegalConfiguration()); mainEventLoop(); - + if (_parentQueue) { // send one final event to unblock eventual listeners Event quit; quit.name = "done.state.scxml"; _parentQueue->push(quit); } - + // set datamodel to null from this thread if(_dataModel) _dataModel = DataModel(); - + } /** @@ -127,7 +127,7 @@ void InterpreterDraft7::initializeData(const Arabica::DOM::Node<std::string>& da LOG(ERROR) << "Data element has no id!"; return; } - + if (HAS_ATTR(data, "expr")) { std::string value = ATTR(data, "expr"); _dataModel.assign(ATTR(data, "id"), value); @@ -135,7 +135,7 @@ void InterpreterDraft7::initializeData(const Arabica::DOM::Node<std::string>& da URL srcURL(ATTR(data, "src")); if (!srcURL.isAbsolute()) toAbsoluteURI(srcURL); - + std::stringstream ss; if (_cachedURLs.find(srcURL.asString()) != _cachedURLs.end()) { ss << _cachedURLs[srcURL.asString()]; @@ -144,7 +144,7 @@ void InterpreterDraft7::initializeData(const Arabica::DOM::Node<std::string>& da _cachedURLs[srcURL.asString()] = srcURL; } _dataModel.assign(ATTR(data, "id"), ss.str()); - + } else if (data.hasChildNodes()) { // search for the text node with the actual script NodeList<std::string> dataChilds = data.getChildNodes(); @@ -156,7 +156,7 @@ void InterpreterDraft7::initializeData(const Arabica::DOM::Node<std::string>& da } } } - + } catch (Event e) { LOG(ERROR) << "Syntax error in data element:" << std::endl << e << std::endl; } @@ -167,12 +167,12 @@ procedure mainEventLoop(): while running: enabledTransitions = null macrostepDone = false - # Here we handle eventless transitions and transitions + # Here we handle eventless transitions and transitions # triggered by internal events until macrostep is complete while running and not macrostepDone: enabledTransitions = selectEventlessTransitions() if enabledTransitions.isEmpty(): - if internalQueue.isEmpty(): + if internalQueue.isEmpty(): macrostepDone = true else: internalEvent = internalQueue.dequeue() @@ -180,7 +180,7 @@ procedure mainEventLoop(): enabledTransitions = selectTransitions(internalEvent) if not enabledTransitions.isEmpty(): microstep(enabledTransitions.toList()) - # either we're in a final state, and we break out of the loop + # either we're in a final state, and we break out of the loop if not running: break; # or we've completed a macrostep, so we start a new macrostep by waiting for an external event @@ -189,7 +189,7 @@ procedure mainEventLoop(): for inv in state.invoke: invoke(inv) statesToInvoke.clear() - # Invoking may have raised internal error events and we iterate to handle them + # Invoking may have raised internal error events and we iterate to handle them if not internalQueue.isEmpty(): continue # A blocking wait for an external event. Alternatively, if we have been invoked @@ -205,12 +205,12 @@ procedure mainEventLoop(): if inv.invokeid == externalEvent.invokeid: applyFinalize(inv, externalEvent) if inv.autoforward: - send(inv.id, externalEvent) + send(inv.id, externalEvent) enabledTransitions = selectTransitions(externalEvent) if not enabledTransitions.isEmpty(): - microstep(enabledTransitions.toList()) - # End of outer while running loop. If we get here, we have reached a top-level final state or have been cancelled - exitInterpreter() + microstep(enabledTransitions.toList()) + # End of outer while running loop. If we get here, we have reached a top-level final state or have been cancelled + exitInterpreter() */ void InterpreterDraft7::mainEventLoop() { } @@ -224,7 +224,7 @@ procedure exitInterpreter(): for inv in s.invoke: cancelInvoke(inv) configuration.delete(s) - if isFinalState(s) and isScxmlState(s.parent): + if isFinalState(s) and isScxmlState(s.parent): returnDoneEvent(s.donedata) */ void InterpreterDraft7::exitInterpreter() { @@ -246,7 +246,7 @@ function selectEventlessTransitions(): for state in atomicStates: loop: for s in [state].append(getProperAncestors(state, null)): for t in s.transition: - if not t.event and conditionMatch(t): + if not t.event and conditionMatch(t): enabledTransitions.add(t) break loop enabledTransitions = filterPreempted(enabledTransitions) @@ -275,7 +275,7 @@ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::selectTransitions(const procedure enterStates(enabledTransitions): statesToEnter = new OrderedSet() statesForDefaultEntry = new OrderedSet() - computeEntrySet(enabledTransitions, statesToEnter, statesForDefaultEntry) + computeEntrySet(enabledTransitions, statesToEnter, statesForDefaultEntry) for s in statesToEnter.toList().sort(entryOrder): configuration.add(s) statesToInvoke.add(s) @@ -302,14 +302,14 @@ void InterpreterDraft7::enterStates(const Arabica::XPath::NodeSet<std::string>& /** procedure exitStates(enabledTransitions): - statesToExit = computeExitSet(enabledTransitions) + statesToExit = computeExitSet(enabledTransitions) for s in statesToExit: statesToInvoke.delete(s) statesToExit = statesToExit.toList().sort(exitOrder) for s in statesToExit: for h in s.history: if h.type == "deep": - f = lambda s0: isAtomicState(s0) and isDescendant(s0,s) + f = lambda s0: isAtomicState(s0) and isDescendant(s0,s) else: f = lambda s0: s0.parent == s historyValue[h.id] = configuration.toList().filter(f) @@ -330,27 +330,27 @@ function computeExitSet(transitions) domain = getTransitionDomain(t) for s in configuration: if isDescendant(s,domain): - statesToExit.add(s) - return statesToExit + statesToExit.add(s) + return statesToExit */ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::computeExitSet(const Arabica::XPath::NodeSet<std::string>& enabledTransitions, - const Arabica::XPath::NodeSet<std::string>& statesToExit) { + const Arabica::XPath::NodeSet<std::string>& statesToExit) { } /** procedure computeEntrySet(transitions, statesToEnter, statesForDefaultEntry) for t in transitions: - statesToEnter.union(getTargetStates(t.target)) + statesToEnter.union(getTargetStates(t.target)) for s in statesToEnter: - addDescendentStatesToEnter(s,statesToEnter,statesForDefaultEntry) - for t in transitions: - ancestor = getTransitionDomain(t) - for s in getTargetStates(t.target)): + addDescendentStatesToEnter(s,statesToEnter,statesForDefaultEntry) + for t in transitions: + ancestor = getTransitionDomain(t) + for s in getTargetStates(t.target)): addAncestorStatesToEnter(s, ancestor, statesToEnter, statesForDefaultEntry) */ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::computeEntrySet(const Arabica::XPath::NodeSet<std::string>& transitions, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { } /** @@ -364,14 +364,14 @@ function removeConflictingTransitions(enabledTransitions): if computeExitSet(t1).hasIntersection(computeExitSet(t2)): if isDescendent(t1.source, t2.source): transitionsToRemove.add(t2) - else: + else: t1Preempted = true break if not t1Preempted: for t3 in transitionsToRemove.toList(): filteredTransitions.delete(t3) filteredTransitions.add(t1) - + return filteredTransitions */ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::removeConflictingTransitions(const Arabica::XPath::NodeSet<std::string>& enabledTransitions) { @@ -413,11 +413,11 @@ Arabica::DOM::Node<std::string> InterpreterDraft7::getTransitionDomain(const Ara if isParallelState(state): for child in getChildStates(state): if not statesToEnter.some(lambda s: isDescendant(s,child)): - addDescendentStatesToEnter(child,statesToEnter,statesForDefaultEntry) + addDescendentStatesToEnter(child,statesToEnter,statesForDefaultEntry) */ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::addDescendentStatesToEnter(const Arabica::DOM::Node<std::string>& state, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { } /** @@ -427,12 +427,12 @@ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::addDescendentStatesToEnt if isParallelState(anc): for child in getChildStates(anc): if not statesToEnter.some(lambda s: isDescendant(s,child)): - addStatesToEnter(child,statesToEnter,statesForDefaultEntry) + addStatesToEnter(child,statesToEnter,statesForDefaultEntry) */ Arabica::XPath::NodeSet<std::string> InterpreterDraft7::addAncestorsStatesToEnter(const Arabica::DOM::Node<std::string>& state, - const Arabica::DOM::Node<std::string>& ancestor, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { + const Arabica::DOM::Node<std::string>& ancestor, + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry) { } diff --git a/src/uscxml/interpreter/InterpreterDraft7.h b/src/uscxml/interpreter/InterpreterDraft7.h index e784e84..1dc9350 100644 --- a/src/uscxml/interpreter/InterpreterDraft7.h +++ b/src/uscxml/interpreter/InterpreterDraft7.h @@ -19,23 +19,23 @@ class InterpreterDraft7 : public Interpreter { void exitStates(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); Arabica::XPath::NodeSet<std::string> computeExitSet(const Arabica::XPath::NodeSet<std::string>& enabledTransitions, - const Arabica::XPath::NodeSet<std::string>& statesToExit); + const Arabica::XPath::NodeSet<std::string>& statesToExit); Arabica::XPath::NodeSet<std::string> computeEntrySet(const Arabica::XPath::NodeSet<std::string>& transitions, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); Arabica::XPath::NodeSet<std::string> removeConflictingTransitions(const Arabica::XPath::NodeSet<std::string>& enabledTransitions); Arabica::DOM::Node<std::string> getTransitionDomain(const Arabica::DOM::Node<std::string>& transition); Arabica::XPath::NodeSet<std::string> addDescendentStatesToEnter(const Arabica::DOM::Node<std::string>& state, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); Arabica::XPath::NodeSet<std::string> addAncestorsStatesToEnter(const Arabica::DOM::Node<std::string>& state, - const Arabica::DOM::Node<std::string>& ancestor, - const Arabica::XPath::NodeSet<std::string>& statesToEnter, - const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); + const Arabica::DOM::Node<std::string>& ancestor, + const Arabica::XPath::NodeSet<std::string>& statesToEnter, + const Arabica::XPath::NodeSet<std::string>& statesForDefaultEntry); void initializeData(const Arabica::DOM::Node<std::string>& data); diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp index 407988e..4072862 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp +++ b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.cpp @@ -1,6 +1,8 @@ #include "uscxml/Common.h" #include "V8DataModel.h" +#include "dom/V8DOM.h" #include "dom/V8Document.h" +#include "dom/V8Node.h" #include "dom/V8SCXMLEvent.h" #include "uscxml/Message.h" @@ -118,8 +120,23 @@ void V8DataModel::setEvent(const Event& event) { privData->dom = _dom; eventObj->SetInternalField(0, Arabica::DOM::V8DOM::toExternal(privData)); eventObj.MakeWeak(0, Arabica::DOM::V8SCXMLEvent::jsDestructor); + if (event.dom) { + v8::Handle<v8::Function> retCtor = Arabica::DOM::V8Document::getTmpl()->GetFunction(); + v8::Persistent<v8::Object> retObj = v8::Persistent<v8::Object>::New(retCtor->NewInstance()); - eventObj->Set(v8::String::New("data"), getDataAsValue(event.data)); // set data part of _event + struct Arabica::DOM::V8Document::V8DocumentPrivate* retPrivData = new Arabica::DOM::V8Document::V8DocumentPrivate(); + retPrivData->dom = privData->dom; + retPrivData->nativeObj = (Arabica::DOM::Document<std::string>*)&event.dom; + + retObj->SetInternalField(0, Arabica::DOM::V8DOM::toExternal(retPrivData)); + retObj.MakeWeak(0, Arabica::DOM::V8Document::jsDestructor); + + eventObj->Set(v8::String::New("data"), retObj); // set data part of _event + } else if (event.content.length() > 0) { + eventObj->Set(v8::String::New("data"), v8::String::New(event.content.c_str())); // set data part of _event + } else { + eventObj->Set(v8::String::New("data"), getDataAsValue(event.data)); // set data part of _event + } global->Set(v8::String::New("_event"), eventObj); } @@ -247,9 +264,18 @@ bool V8DataModel::validate(const std::string& location, const std::string& schem uint32_t V8DataModel::getLength(const std::string& expr) { v8::Locker locker; v8::HandleScope handleScope; + v8::TryCatch tryCatch; v8::Context::Scope contextScope(_contexts.back()); - v8::Handle<v8::Array> result = evalAsValue(expr).As<v8::Array>(); - return result->Length(); + v8::Handle<v8::Value> result = evalAsValue(expr); + if (!result.IsEmpty() && result->IsArray()) + return result.As<v8::Array>()->Length(); + + Event exceptionEvent; + exceptionEvent.name = "error.execution"; + exceptionEvent.data.compound["exception"] = Data("'" + expr + "' does not evaluate to an array.", Data::VERBATIM);; + + _interpreter->receiveInternal(exceptionEvent); + throw(exceptionEvent); } void V8DataModel::eval(const std::string& expr) { @@ -280,6 +306,17 @@ std::string V8DataModel::evalAsString(const std::string& expr) { return std::string(*data); } +double V8DataModel::evalAsNumber(const std::string& expr) { + v8::Locker locker; + v8::HandleScope handleScope; + v8::Context::Scope contextScope(_contexts.back()); + v8::Handle<v8::Value> result = evalAsValue(expr); + if (result->IsNumber()) { + return result->ToNumber()->NumberValue(); + } + return 0; +} + void V8DataModel::assign(const std::string& location, const Data& data) { v8::Locker locker; v8::HandleScope handleScope; @@ -308,49 +345,54 @@ v8::Handle<v8::Value> V8DataModel::evalAsValue(const std::string& expr) { if (script.IsEmpty() || result.IsEmpty()) { // throw an exception - assert(tryCatch.HasCaught()); - Event exceptionEvent; - exceptionEvent.name = "error.execution"; - - std::string exceptionString(*v8::String::AsciiValue(tryCatch.Exception())); - exceptionEvent.data.compound["exception"] = Data(exceptionString, Data::VERBATIM);; - - v8::Handle<v8::Message> message = tryCatch.Message(); - if (!message.IsEmpty()) { - std::string filename(*v8::String::AsciiValue(message->GetScriptResourceName())); - exceptionEvent.data.compound["filename"] = Data(filename, Data::VERBATIM); - - std::string sourceLine(*v8::String::AsciiValue(message->GetSourceLine())); - size_t startpos = sourceLine.find_first_not_of(" \t"); - if(std::string::npos != startpos) // removoe leading white space - sourceLine = sourceLine.substr(startpos); - - exceptionEvent.data.compound["sourceline"] = Data(sourceLine, Data::VERBATIM); - - std::stringstream ssLineNumber; - int lineNumber = message->GetLineNumber(); - ssLineNumber << lineNumber; - exceptionEvent.data.compound["linenumber"] = Data(ssLineNumber.str()); - - int startColumn = message->GetStartColumn(); - int endColumn = message->GetEndColumn(); - std::stringstream ssUnderline; - for (int i = 0; i < startColumn; i++) - ssUnderline << " "; - for (int i = startColumn; i < endColumn; i++) - ssUnderline << "^"; - exceptionEvent.data.compound["sourcemark"] = Data(ssUnderline.str(), Data::VERBATIM); - - std::string stackTrace(*v8::String::AsciiValue(tryCatch.StackTrace())); - exceptionEvent.data.compound["stacktrace"] = Data(stackTrace, Data::VERBATIM); + if (tryCatch.HasCaught()) + throwExceptionEvent(tryCatch); + } - } + return result; +} + +void V8DataModel::throwExceptionEvent(const v8::TryCatch& tryCatch) { + assert(tryCatch.HasCaught()); + Event exceptionEvent; + exceptionEvent.name = "error.execution"; + + std::string exceptionString(*v8::String::AsciiValue(tryCatch.Exception())); + exceptionEvent.data.compound["exception"] = Data(exceptionString, Data::VERBATIM);; + + v8::Handle<v8::Message> message = tryCatch.Message(); + if (!message.IsEmpty()) { + std::string filename(*v8::String::AsciiValue(message->GetScriptResourceName())); + exceptionEvent.data.compound["filename"] = Data(filename, Data::VERBATIM); + + std::string sourceLine(*v8::String::AsciiValue(message->GetSourceLine())); + size_t startpos = sourceLine.find_first_not_of(" \t"); + if(std::string::npos != startpos) // removoe leading white space + sourceLine = sourceLine.substr(startpos); + + exceptionEvent.data.compound["sourceline"] = Data(sourceLine, Data::VERBATIM); + + std::stringstream ssLineNumber; + int lineNumber = message->GetLineNumber(); + ssLineNumber << lineNumber; + exceptionEvent.data.compound["linenumber"] = Data(ssLineNumber.str()); + + int startColumn = message->GetStartColumn(); + int endColumn = message->GetEndColumn(); + std::stringstream ssUnderline; + for (int i = 0; i < startColumn; i++) + ssUnderline << " "; + for (int i = startColumn; i < endColumn; i++) + ssUnderline << "^"; + exceptionEvent.data.compound["sourcemark"] = Data(ssUnderline.str(), Data::VERBATIM); + + std::string stackTrace(*v8::String::AsciiValue(tryCatch.StackTrace())); + exceptionEvent.data.compound["stacktrace"] = Data(stackTrace, Data::VERBATIM); - _interpreter->receiveInternal(exceptionEvent); - throw(exceptionEvent); } - return result; + _interpreter->receiveInternal(exceptionEvent); + throw(exceptionEvent); } }
\ No newline at end of file diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h index 18e1ea4..6d4ca63 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h +++ b/src/uscxml/plugins/datamodel/ecmascript/v8/V8DataModel.h @@ -52,6 +52,7 @@ public: virtual std::string evalAsString(const std::string& expr); virtual bool evalAsBool(const std::string& expr); + virtual double evalAsNumber(const std::string& expr); static v8::Handle<v8::Value> jsIn(const v8::Arguments& args); static v8::Handle<v8::Value> jsPrint(const v8::Arguments& args); @@ -63,6 +64,7 @@ protected: v8::Handle<v8::Value> evalAsValue(const std::string& expr); virtual v8::Handle<v8::Value> getDataAsValue(const Data& data); + void throwExceptionEvent(const v8::TryCatch& tryCatch); }; diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeList.h b/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeList.h index fb1b510..c454e65 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeList.h +++ b/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeList.h @@ -43,6 +43,7 @@ public: static v8::Handle<v8::Value> itemCallback(const v8::Arguments&); static v8::Handle<v8::Value> lengthAttrGetter(v8::Local<v8::String> property, const v8::AccessorInfo& info); + static v8::Handle<v8::Value> indexedPropertyCustomGetter(uint32_t, const v8::AccessorInfo&); static v8::Persistent<v8::FunctionTemplate> Tmpl; static v8::Handle<v8::FunctionTemplate> getTmpl() { @@ -60,6 +61,7 @@ public: instance->SetAccessor(v8::String::NewSymbol("length"), V8NodeList::lengthAttrGetter, 0, v8::External::New(0), static_cast<v8::AccessControl>(v8::DEFAULT), static_cast<v8::PropertyAttribute>(v8::None)); + instance->SetIndexedPropertyHandler(V8NodeList::indexedPropertyCustomGetter, 0); prototype->Set(v8::String::NewSymbol("item"), v8::FunctionTemplate::New(V8NodeList::itemCallback, v8::Undefined()), static_cast<v8::PropertyAttribute>(v8::DontDelete)); diff --git a/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeListCustom.cpp b/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeListCustom.cpp new file mode 100644 index 0000000..c05c5a4 --- /dev/null +++ b/src/uscxml/plugins/datamodel/ecmascript/v8/dom/V8NodeListCustom.cpp @@ -0,0 +1,52 @@ +#include "V8NodeList.h" +#include "V8Element.h" +#include "V8Node.h" + +namespace Arabica { +namespace DOM { + +v8::Handle<v8::Value> V8NodeList::indexedPropertyCustomGetter(uint32_t index, const v8::AccessorInfo &info) { + v8::Local<v8::Object> self = info.Holder(); + V8NodeListPrivate* privData = V8DOM::toClassPtr<V8NodeListPrivate >(self->GetInternalField(0)); + + if (privData->nativeObj->getLength() >= index) { + switch(privData->nativeObj->item(index).getNodeType()) { + case Node_base::ELEMENT_NODE: { + Arabica::DOM::Element<std::string>* retVal = new Arabica::DOM::Element<std::string>(privData->nativeObj->item(index)); + + v8::Handle<v8::Function> retCtor = V8Element::getTmpl()->GetFunction(); + v8::Persistent<v8::Object> retObj = v8::Persistent<v8::Object>::New(retCtor->NewInstance()); + + struct V8Element::V8ElementPrivate* retPrivData = new V8Element::V8ElementPrivate(); + retPrivData->dom = privData->dom; + retPrivData->nativeObj = retVal; + + retObj->SetInternalField(0, V8DOM::toExternal(retPrivData)); + + retObj.MakeWeak(0, V8Element::jsDestructor); + return retObj; + } + default: { + Arabica::DOM::Node<std::string>* retVal = new Arabica::DOM::Node<std::string>(privData->nativeObj->item(index)); + + v8::Handle<v8::Function> retCtor = V8Node::getTmpl()->GetFunction(); + v8::Persistent<v8::Object> retObj = v8::Persistent<v8::Object>::New(retCtor->NewInstance()); + + struct V8Node::V8NodePrivate* retPrivData = new V8Node::V8NodePrivate(); + retPrivData->dom = privData->dom; + retPrivData->nativeObj = retVal; + + retObj->SetInternalField(0, V8DOM::toExternal(retPrivData)); + + retObj.MakeWeak(0, V8Node::jsDestructor); + return retObj; + } + } + } + + return v8::Undefined(); + +} + +} +}
\ No newline at end of file diff --git a/test/run-scxml-test-framework.sh b/test/run-scxml-test-framework.sh index 804eb9f..d8d41f7 100755 --- a/test/run-scxml-test-framework.sh +++ b/test/run-scxml-test-framework.sh @@ -14,11 +14,11 @@ fi SCXML_TEST_FRAMEWORK_FULL="$( cd "$(dirname "$1")" && pwd)/$(basename $1)" SCXML_TEST_FRAMEWORK_NAME=$(basename $1) -if [[ ! -x "${SCXML_TEST_FRAMEWORK_FULL}" ]]; then - echo - echo "${SCXML_TEST_FRAMEWORK_FULL} not an executable file" - echo -fi +# if [[ ! -x "${SCXML_TEST_FRAMEWORK_FULL}" ]]; then +# echo +# echo "${SCXML_TEST_FRAMEWORK_FULL} not an executable file" +# echo +# fi TESTS="" # TESTS="${TESTS} scxml-test-framework/test/actionSend/send1.scxml" # passed @@ -158,11 +158,11 @@ TESTS="" # TESTS="${TESTS} scxml-test-framework/test/targetless-transition/test3.scxml" # failed # TESTS="${TESTS} scxml-test-framework/test/*/*.scxml" -TESTS="${TESTS} scxml-test-framework/test/w3c/*.scxml" +TESTS="${TESTS} scxml-test-framework/test/w3c-ecma/*.scxml" #trap 'killall ${SCXML_TEST_FRAMEWORK_NAME}' 0 #$SCXML_TEST_FRAMEWORK_FULL & #sleep 1 -cd $DIR +#cd $DIR node scxml-test-framework --test-server-url http://localhost:8080/test $TESTS diff --git a/test/samples/w3c/txml/test144.txml b/test/samples/w3c/txml/test144.txml deleted file mode 100644 index 73e50b0..0000000 --- a/test/samples/w3c/txml/test144.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that events are inserted into the queue in the order in which they are raised. If -foo occurs before bar, success, otherwise failure --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition event="foo" target="s1"/> - <transition event="*" conf:targetfail=""/> - - </state> - -<state id="s1"> - <transition event="bar" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test147.txml b/test/samples/w3c/txml/test147.txml deleted file mode 100644 index 20363a0..0000000 --- a/test/samples/w3c/txml/test147.txml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that the first clause that evaluates to true - and only that clause - is executed. -Only one event should be raised, and it should be bar --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if conf:false=""> - <raise event="foo"/> - <conf:incrementID id="1"/> - <elseif conf:true=""/> - <raise event="bar"/> - <conf:incrementID id="1"/> - <else/> - <raise event="baz"/> - <conf:incrementID id="1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="bar" conf:idVal="1=1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test148.txml b/test/samples/w3c/txml/test148.txml deleted file mode 100644 index 8d19e56..0000000 --- a/test/samples/w3c/txml/test148.txml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that the else clause executes if <if> and <elseif> evaluate to false. -Baz should be the only event generated by the <if>. bat is raised to catch the case where the <else> clause -fails and baz is not generated, i.e. it makes sure that the test doesn't hang. --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if conf:false=""> - <raise event="foo"/> - <conf:incrementID id="1"/> - <elseif conf:false=""/> - <raise event="bar"/> - <conf:incrementID id="1"/> - <else/> - <raise event="baz"/> - <conf:incrementID id="1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="baz" conf:idVal="1=1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test149.txml b/test/samples/w3c/txml/test149.txml deleted file mode 100644 index c971eea..0000000 --- a/test/samples/w3c/txml/test149.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that neither if clause executes, so that bat is the only event raised. --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if conf:false=""> - <raise event="foo"/> - <conf:incrementID id="1"/> - <elseif conf:false=""/> - <raise event="bar"/> - <conf:incrementID id="1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="bat" conf:idVal="1=0" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test150.txml b/test/samples/w3c/txml/test150.txml deleted file mode 100644 index ff290dd..0000000 --- a/test/samples/w3c/txml/test150.txml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that foreach causes a new variable to be declared if 'item' doesn't already exist. Also -test that it will use an existing var if it does exist. --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - <data conf:id="3"> - <conf:array123/> - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- first use declared variables --> - <foreach conf:item="1" conf:index="2" conf:arrayVar="3"/> - <raise event="foo"/> - </onentry> - <transition event="error" conf:targetfail=""/> - <transition event="*" target="s1"/> - </state> - -<state id="s1"> - <onentry> -<!-- now use undeclared variables --> - <foreach conf:item="4" conf:index="5" conf:arrayVar="3"/> - <raise event="bar"/> - </onentry> - <transition event="error" conf:targetfail=""/> - <transition event="*" target="s2"/> - </state> - -<state id="s2"> - <!-- check that var4 is bound --> - <transition conf:isBound="4" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test151.txml b/test/samples/w3c/txml/test151.txml deleted file mode 100644 index 6f95692..0000000 --- a/test/samples/w3c/txml/test151.txml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that foreach causes a new variable to be declared if 'item' doesn't already exist. Also -test that it will use an existing var if it does exist. --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - <data conf:id="3"> - <conf:array123/> - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- first use declared variables --> - <foreach conf:item="1" conf:index="2" conf:arrayVar="3"/> - <raise event="foo"/> - </onentry> - <transition event="error" conf:targetfail=""/> - <transition event="*" target="s1"/> - </state> - -<state id="s1"> - <onentry> -<!-- now use undeclared variables --> - <foreach conf:item="4" conf:index="5" conf:arrayVar="3"/> - <raise event="bar"/> - </onentry> - <transition event="error" conf:targetfail=""/> - <transition event="*" target="s2"/> - </state> - -<state id="s2"> - <!-- check that var5 is bound --> - <transition conf:isBound="5" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test152.txml b/test/samples/w3c/txml/test152.txml deleted file mode 100644 index 86b50e9..0000000 --- a/test/samples/w3c/txml/test152.txml +++ /dev/null @@ -1,52 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an illegal array or item value causes error.execution and results in executable content -not being executed. --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - <data conf:id="2"/> - <data conf:id="3"/> - <data conf:id="4" conf:illegalArray=""/> - <data conf:id="5"> - <conf:array123/> - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- invalid array, legal item --> - <foreach conf:item="2" conf:index="3" conf:arrayTextVar="4"> - <conf:incrementID id="1"/> - </foreach> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s1"> - <onentry> -<!-- illegal item, legal array --> - <foreach conf:illegalItem="" conf:index="3" conf:arrayVar="5"> - <conf:incrementID id="1"/> - </foreach> - <raise event="bar"/> - </onentry> - <transition event="error.execution" target="s2"/> - <transition event="bar" conf:targetfail=""/> - </state> - -<state id="s2"> - <!-- check that var1 has its original value (so executable content never got executed --> - <transition conf:idVal="1=0" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test153.txml b/test/samples/w3c/txml/test153.txml deleted file mode 100644 index e9f8038..0000000 --- a/test/samples/w3c/txml/test153.txml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that foreach goes over the array in the right order. since the array contains 1 2 3, we compare the current -value with the previous value, which is stored in var1. The current value should always be larger. If -it ever isn't, set Var4 to 0, indicating failure --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- contains the previous value --> - <data conf:id="2"/> <!-- the item which will contain the current value --> - <data conf:id="3"> - <conf:array123/> - </data> - <data conf:id="4" conf:expr="1"/> <!-- 1 if success, 0 if failure --> - </datamodel> - - <state id="s0"> - <onentry> - <foreach conf:item="2" conf:arrayVar="3"> - <if conf:compareIDVal="1<2"> - <assign conf:location="1" conf:varExpr="2"/> - <else/> - <!-- values are out of order, record failure --> - <assign conf:location="4" conf:expr="0"/> - </if> - </foreach> - </onentry> - - <!-- check that var1 has its original value --> - <transition conf:idVal="4=0" conf:targetfail=""/> - <transition conf:targetpass=""/> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test155.txml b/test/samples/w3c/txml/test155.txml deleted file mode 100644 index 8444442..0000000 --- a/test/samples/w3c/txml/test155.txml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that foreach executes the executable content once for each item in the list '(1,2,3)'. The executable -content sums the items into var1 so it should be 6 at the end --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<datamodel> - <data conf:id="1" conf:expr="0"/> - <data conf:id="2"/> - <data conf:id="3"> - <conf:array123/> - </data> - </datamodel> - - <state id="s0"> - <onentry> - <foreach conf:item="2" conf:arrayVar="3"> - <conf:sumVars id1="1" id2="2"/> - </foreach> - </onentry> - - <transition conf:idVal="1=6" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test156.txml b/test/samples/w3c/txml/test156.txml deleted file mode 100644 index 316f879..0000000 --- a/test/samples/w3c/txml/test156.txml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an error causes the foreach to stop execution. The second piece of executable content -should cause an error, so var1 should be incremented only once --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<datamodel> - <data conf:id="1" conf:expr="0"/> - <data conf:id="2"/> - <data conf:id="3"> - <conf:array123/> - </data> - </datamodel> - - <state id="s0"> - <onentry> - <foreach conf:item="2" conf:arrayVar="3"> - <conf:incrementID id="1"/> - <!-- assign an illegal value to a non-existent var --> - <assign conf:location="5" conf:illegalExpr=""/> - </foreach> - </onentry> - - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test158.txml b/test/samples/w3c/txml/test158.txml deleted file mode 100644 index cff220d..0000000 --- a/test/samples/w3c/txml/test158.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that executable content executes in document order. if event1 occurs then event2, succeed, otherwise fail --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <raise event="event1"/> - <raise event="event2"/> - </onentry> - <transition event="event1" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test159.txml b/test/samples/w3c/txml/test159.txml deleted file mode 100644 index abf1925..0000000 --- a/test/samples/w3c/txml/test159.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that any error raised by an element of executable content causes all subsequent elements to be skipped. -The send tag will raise an error so var1 should not be incremented. If it is fail, otherwise succeed --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="thisWillFail" conf:illegaltarget=""/> - <conf:incrementId id="1"/> - </onentry> - <transition conf:idVal="1=1" conf:targetfail=""/> - <transition conf:targetpass=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test172.txml b/test/samples/w3c/txml/test172.txml deleted file mode 100644 index 45075a0..0000000 --- a/test/samples/w3c/txml/test172.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that eventexpr uses the current value of var1, not its initial value --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:quoteExpr="event1"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:quoteExpr="event2"/> - <send conf:eventExpr="1"/> - </onentry> - - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test173.txml b/test/samples/w3c/txml/test173.txml deleted file mode 100644 index c770856..0000000 --- a/test/samples/w3c/txml/test173.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that targetexpr uses the current value of var1, not its initial value -(If it uses the initial value, it will generate an error. If it uses the current value, event1 will be raised --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:invalidSessionID=""/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:quoteExpr="#_internal"/> - <send conf:targetExpr="1" event="event1"/> - </onentry> - - <transition event="event1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test174.txml b/test/samples/w3c/txml/test174.txml deleted file mode 100644 index 3d33d5b..0000000 --- a/test/samples/w3c/txml/test174.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that typeexpr uses the current value of var1, not its initial value -(If it uses the initial value, it will generate an error. If it uses the current value, event1 will be raised --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:invalidSendTypeExpr=""/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:quoteExpr="http://www.w3.org/TR/scxml/#SCXMLEventProcessor"/> - <send conf:typeExpr="1" event="event1"/> - </onentry> - - <transition event="event1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test175.txml b/test/samples/w3c/txml/test175.txml deleted file mode 100644 index aba7ac4..0000000 --- a/test/samples/w3c/txml/test175.txml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that delayexpr uses the current value of var1, not its initial value -(If it uses the initial value, event2 will be generated first, before event1. If it uses the current value, -event1 will be raised first. Succeed if event1 occurs before event2, otherwise fail --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:quoteExpr="0s"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:quoteExpr="3s"/> - <send conf:delayExpr="1" event="event2"/> - <send delay="1s" event="event1"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="event2" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test176.txml b/test/samples/w3c/txml/test176.txml deleted file mode 100644 index 8d084d4..0000000 --- a/test/samples/w3c/txml/test176.txml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <param> uses the current value of var1, not its initial value. If the value of -aParam in event1 is 2 so that var2 gets set to 2, success, otherwise failure --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - <data conf:id="2"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:expr="2"/> - <send event="event1"> - <param name="aParam" conf:varExpr="1"/> - </send> - </onentry> - - <transition event="event1" target="s1"> - <assign conf:location="2" conf:eventDataFieldValue="aParam"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition conf:idVal="2=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test178.txml b/test/samples/w3c/txml/test178.txml deleted file mode 100644 index de7a334..0000000 --- a/test/samples/w3c/txml/test178.txml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that multiple key/value pairs are included, even when the keys are the same. -This is a manual test. The tester must look at the log output and verify that both -keys are there. (This test uses the SCXML Event I/O processor, which is the only -one that all platforms must support. It does not specify the message format, so -we cannot test _event.raw directly. Therefore we print it out for visual -inspection.) --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <send event="event1"> - <param conf:name="1" conf:expr="2"/> - <param conf:name="1" conf:expr="3"/> - </send> - </onentry> - - <transition event="event1" target="final"> - <log label="_event " conf:eventRaw=""/> - </transition> - <transition event="*" conf:targetfail=""/> - - </state> - - -<final id="final"/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test179.txml b/test/samples/w3c/txml/test179.txml deleted file mode 100644 index 02b74f6..0000000 --- a/test/samples/w3c/txml/test179.txml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <content> can be used to populate body of a message --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="event1"> - <content>123</content> - </send> - </onentry> - - <transition event="event1" conf:eventdataVal="123" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test183.txml b/test/samples/w3c/txml/test183.txml deleted file mode 100644 index bb6e44a..0000000 --- a/test/samples/w3c/txml/test183.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> stores the value of the sendid in idlocation. If it does, -var1 has a value and we pass. Otherwise we fail --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1" conf:idlocation="1"/> - </onentry> - - <transition conf:isBound="1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test185.txml b/test/samples/w3c/txml/test185.txml deleted file mode 100644 index c036cbf..0000000 --- a/test/samples/w3c/txml/test185.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> respects the delay specification. If it does, event1 arrives before event2 - and we pass. Otherwise we fail --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="event2" delay="2s"/> - <send event="event1"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test186.txml b/test/samples/w3c/txml/test186.txml deleted file mode 100644 index e91c290..0000000 --- a/test/samples/w3c/txml/test186.txml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> evals its args when it is evaluated, not when the delay interval expires and the -message is actually sent. If it does, aParam will have the value of 1 (even though var1 has been incremented -in the interval.) If var2 ends up == 1, we pass. Otherwise we fail --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - <data conf:id="2"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1" delay="2s"> - <param name="aParam" conf:varExpr="1"/> - </send> - <assign conf:location="1" conf:expr="2"/> - </onentry> - - <transition event="event1" target="s1"> - <assign conf:location="2" conf:eventDataFieldValue="aParam"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition conf:idVal="2=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test187.txml b/test/samples/w3c/txml/test187.txml deleted file mode 100644 index 994a489..0000000 --- a/test/samples/w3c/txml/test187.txml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that delayed <send> is not sent if the sending session terminates. In this case, -a subscript is invoked which sends the event childToParent delayed by 1 second, and then terminates. The -parent session, should not receive childToParent. If it does, we fail. Otherwise the -10 sec timer expires and we pass --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" > - <onentry> - <send event="timeout" delay="10s"/> - </onentry> - <invoke type="scxml" > - <content> - <!-- exit before the delayed send can execute --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send event="childToParent" target="#_parent" delay="1s"/> - </onentry> - <transition target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="childToParent" conf:targetfail=""/> - <transition event="timeout" conf:targetpass=""/> -</state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test194.txml b/test/samples/w3c/txml/test194.txml deleted file mode 100644 index 9e660a5..0000000 --- a/test/samples/w3c/txml/test194.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that specifying an illegal target for <send> causes the event error.execution to be raised. If it does, -we succeed. Otherwise we eventually timeout and fail. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <!-- should cause an error --> - <send conf:illegalTarget="" event="event2"/> - <!-- this will get added to the external event queue after the error has been raised --> - <send event="timeout"/> - </onentry> - - <!-- once we've entered the state, we should check for internal events first --> - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test198.txml b/test/samples/w3c/txml/test198.txml deleted file mode 100644 index 706ea93..0000000 --- a/test/samples/w3c/txml/test198.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that if type is not provided <send> uses the scxml event i/o processor. The only way to tell -what processor was used is to look at the origintype of the resulting event --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <send event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" conf:originTypeEq="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test199.txml b/test/samples/w3c/txml/test199.txml deleted file mode 100644 index dadd5b0..0000000 --- a/test/samples/w3c/txml/test199.txml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that using an invalid send type results in error.execution --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <send conf:invalidSendType="" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test200.txml b/test/samples/w3c/txml/test200.txml deleted file mode 100644 index 4aed203..0000000 --- a/test/samples/w3c/txml/test200.txml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor supports the scxml event i/o processor --> - - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test201.txml b/test/samples/w3c/txml/test201.txml deleted file mode 100644 index c21eb7e..0000000 --- a/test/samples/w3c/txml/test201.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor supports the basic http event i/o processor. This is an optional -test since platforms are not required to support basic http event i/o --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <send type="http://www.w3.org/TR/scxml/#BasicHTTPEventProcessor" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test205.txml b/test/samples/w3c/txml/test205.txml deleted file mode 100644 index 6cc06f4..0000000 --- a/test/samples/w3c/txml/test205.txml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor doesn't change the message. We can't test that it never does this, but -at least we can check that the event name and included data are the same as we sent. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1"> - <param name="aParam" conf:expr="1"/> - </send> - <send event="timeout"/> - </onentry> - - - <transition event="event1" target="s1"> - <assign conf:location="1" conf:eventDataFieldValue="aParam"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test207.txml b/test/samples/w3c/txml/test207.txml deleted file mode 100644 index 6893dcf..0000000 --- a/test/samples/w3c/txml/test207.txml +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that that we can't cancel an event in another session. We invoke a child process. It notifies -us when it has generated a delayed event with sendid foo. We try to cancel foo. The child process sends us event - event success if the event is not cancelled, event fail otherwise. This doesn't test that there is absolutely no way to cancel an event -raised in another session, but the spec doesn't define any way to refer to an event in another process --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="10s"/> - </onentry> - <invoke type="scxml"> - <content> - <!-- when invoked, we raise a delayed event1 with sendid 'foo' and notify our parent. Then we wait. - If event1 occurs, the parent hasn't succeeded in canceling it and we return pass. If event2 occurs - it means event1 was canceled (because event2 is delayed longer than event1) and we return 'fail'. --> - - - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send event="event1" id="foo" delay="3s"/> - <send event="event2" delay="5s"/> - <send target="#_parent" event="childToParent"/> - </onentry> - - <transition event="event1" target="subFinal"> - <send target="#_parent" event="pass"/> - </transition> - <transition event="*" target="subFinal"> - <send target="#_parent" event="fail"/> - </transition> - - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <state id="s01"> - <transition event="childToParent" target="s02"> - <cancel sendid="foo"/> - </transition> - </state> - - <state id="s02"> - <transition event="pass" conf:targetpass=""/> - <transition event="fail" conf:targetfail=""/> - <transition event="timeout" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test208.txml b/test/samples/w3c/txml/test208.txml deleted file mode 100644 index 5a86e6d..0000000 --- a/test/samples/w3c/txml/test208.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that cancel works. We cancel delayed event1. If cancel works, we get event2 first and pass. If -we get event1 or an error first, cancel didn't work and we fail. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send id="foo" event="event1" delay="1s"/> - <send event="event2" delay="5s"/> - <cancel sendid="foo"/> - </onentry> - - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test210.txml b/test/samples/w3c/txml/test210.txml deleted file mode 100644 index 402ed36..0000000 --- a/test/samples/w3c/txml/test210.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that sendidexpr works with cancel. If it takes the most recent value of var1, it should cancel -delayed event1. Thus we get event2 first and pass. If we get event1 or an error first, cancel didn't work and we fail. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:quoteExpr="bar"/> - </datamodel> - -<state id="s0"> - <onentry> - <send id="foo" event="event1" delay="1s"/> - <send event="event2" delay="5s"/> - <assign conf:location="1" conf:quoteExpr="foo"/> - <cancel conf:sendIDExpr="1"/> - </onentry> - - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test215.txml b/test/samples/w3c/txml/test215.txml deleted file mode 100644 index afb8df5..0000000 --- a/test/samples/w3c/txml/test215.txml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that typexpr is evaluated at runtime. If the original value of var1 is used, the invocation -will fail (test215sub1.scxml is not of type 'foo', even if the platform supports foo as a type). If -the runtime value is used, the invocation will succeed --> - - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<datamodel> - <data conf:id="1" conf:quoteExpr="foo"/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="5s"/> - <assign conf:location="1" conf:quoteExpr="http://www.w3.org/TR/scxml/"/> - </onentry> - <invoke conf:typeExpr="1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="done.invoke" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test216.txml b/test/samples/w3c/txml/test216.txml deleted file mode 100644 index e65818e..0000000 --- a/test/samples/w3c/txml/test216.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that srcexpr is evaluated at runtime. If the original value of var1 is used, the invocation -will fail (assuming that there is no script named 'foo'). If -the runtime value is used, the invocation will succeed --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<datamodel> - <data conf:id="1" conf:quoteExpr="foo"/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="5s"/> - <assign conf:location="1" conf:quoteExpr="file:test216sub1.scxml"/> - </onentry> - <invoke conf:srcExpr="1" type="http://www.w3.org/TR/scxml"/> - <transition event="done.invoke" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test220.txml b/test/samples/w3c/txml/test220.txml deleted file mode 100644 index 4c79e4d..0000000 --- a/test/samples/w3c/txml/test220.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the scxml type is supported. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0" > - <onentry> - <send event="timeout" delay="5s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml></content> - </invoke> - <transition event="done.invoke" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test223.txml b/test/samples/w3c/txml/test223.txml deleted file mode 100644 index 9cdc499..0000000 --- a/test/samples/w3c/txml/test223.txml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that idlocation is supported. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" conf:idlocation="1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition conf:isBound="1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test224.txml b/test/samples/w3c/txml/test224.txml deleted file mode 100644 index 0ffe8eb..0000000 --- a/test/samples/w3c/txml/test224.txml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the automatically generated id has the form stateid.platformid. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - <data conf:id="2" conf:quoteExpr="s0."/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" conf:idlocation="1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml version="1.0" initial="subFinal" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition conf:varPrefix="2 1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test225.txml b/test/samples/w3c/txml/test225.txml deleted file mode 100644 index 548ff46..0000000 --- a/test/samples/w3c/txml/test225.txml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the automatically generated id is unique, we call invoke twice and compare the ids. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" conf:idlocation="1"> - <content> - <scxml initial="subFinal1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <invoke type="http://www.w3.org/TR/scxml/" conf:idlocation="2" > - <content> - <scxml initial="subFinal2" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition conf:VarEqVar="1 2" conf:targetfail=""/> - <transition conf:targetpass=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test226.txml b/test/samples/w3c/txml/test226.txml deleted file mode 100644 index 843bfdc..0000000 --- a/test/samples/w3c/txml/test226.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- this is basically just a test that invoke works correctly and that you can pass data -to the invoked process. If the invoked session finds aParam==1, it exits, signalling -success. otherwise it will hang and the timeout in this doc signifies failure. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" > - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - - <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.txml"> - <param conf:name="1" conf:expr="1"/> - </invoke> - - <transition event="varBound" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test228.txml b/test/samples/w3c/txml/test228.txml deleted file mode 100644 index 40021bb..0000000 --- a/test/samples/w3c/txml/test228.txml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the invokeid is included in events returned from the invoked process. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - </datamodel> - -<state id="s0" > - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" id="foo"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke" target="s1"> - <assign conf:location="1" conf:eventField="invokeid"/> - </transition> - <transition event="*" conf:targetfail=""/> -</state> - -<state id="s1"> - <transition conf:idQuoteVal="1=foo" conf:targetpass=""/> - <transition conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test229.txml b/test/samples/w3c/txml/test229.txml deleted file mode 100644 index 3837b69..0000000 --- a/test/samples/w3c/txml/test229.txml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0"?> -<!-- test that autofoward works. If the child process receives back a copy of the -childToParent event that it sends to this doc, it sends eventReceived, signalling success. (Note -that this doc is not required to process that event explicitly. It should be forwarded in any case.) Otherwise -it eventually times out and the done.invoke signals failure --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" > - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" autoforward="true"> - <content> - <!-- when invoked, send childToParent to parent. - If it is forwarded back to us, send - eventReceived to signal success and terminate. - Otherwise wait for timer to expire and terminate. --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childToParent"/> - <send event="timeout" delay="3s"/> - </onentry> - <transition event="childToParent" target="subFinal"> - <send target="#_parent" event="eventReceived"/> - </transition> - <transition event="*" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="childToParent"/> - <transition event="eventReceived" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test230.txml b/test/samples/w3c/txml/test230.txml deleted file mode 100644 index fc27220..0000000 --- a/test/samples/w3c/txml/test230.txml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0"?> -<!-- a manual test that an autofowarded event has the same fields and values as the original event. -the child process sends the parent process an event which is forwarded back to it. -Both the parent and child process print out the contents of the event. The tester -must check if they are the same and report his result. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" autoforward="true"> - <content> - <!-- when invoked, send childToParent to parent. If it is forwarded back to us, print out its - fields and terminate. --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childToParent"/> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="childToParent" target="subFinal"> - <log label="name is " conf:eventField="name" /> - <log label="type is " conf:eventField="type" /> - <log label="sendid is " conf:eventField="sendid"/> - <log label="origin is " conf:eventField="origin" /> - <log label="origintype is " conf:eventField="origintype" /> - <log label="invokeid is " conf:eventField="invokeid" /> - <log label="data is " conf:eventField="data"/> - </transition> - <transition event="*" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="timeout" target="final"/> - - - <state id="s01"> - <transition event="childToParent" target="s02"> - <log label="name is " conf:eventField="name" /> - <log label="type is " conf:eventField="type" /> - <log label="sendid is " conf:eventField="sendid"/> - <log label="origin is " conf:eventField="origin" /> - <log label="origintype is " conf:eventField="origintype" /> - <log label="invokeid is " conf:eventField="invokeid" /> - <log label="data is " conf:eventField="data"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s02"> - <!-- wait till we get the done event to ensure that the child process has time to print out its results --> - <transition event="done.invoke" target="final"/> - </state> - -</state> - -<final id="final"/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test232.txml b/test/samples/w3c/txml/test232.txml deleted file mode 100644 index 1cbc14f..0000000 --- a/test/samples/w3c/txml/test232.txml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a parent process can receive multiple events from a child process --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"> - <onentry> - <send target="#_parent" event="childToParent1"/> - <send target="#_parent" event="childToParent2"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - <transition event="timeout" conf:targetfail=""/> - - - <state id="s01"> - <transition event="childToParent1" target="s02"/> - </state> - - <state id="s02"> - <transition event="childToParent2" target="s03"/> - </state> - -<state id="s03"> - <transition event="done.invoke" conf:targetpass=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test233.txml b/test/samples/w3c/txml/test233.txml deleted file mode 100644 index 94b219b..0000000 --- a/test/samples/w3c/txml/test233.txml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0"?> -<!-- test that finalize markup runs before the event is processed. The invoked process will -return 2 in _event.data.aParam, so that new value should be in force when we select -the transtitions. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"> - <onentry> - <send target="#_parent" event="childToParent"> - <param name="aParam" conf:expr="2"/> - </send> - </onentry> - </final> - </scxml> - </content> - <finalize> - <assign conf:location="1" conf:eventDataFieldValue="aParam"/> - </finalize> - </invoke> - - <transition event="childToParent" conf:idVal="1 2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test234.txml b/test/samples/w3c/txml/test234.txml deleted file mode 100644 index 27d4626..0000000 --- a/test/samples/w3c/txml/test234.txml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0"?> -<!-- test that only finalize markup in the invoking state runs. the first invoked process will -return 2 in _event.data.aParam, while second invoked process sleeps without returning any events. -Only the first finalize should execute. So when we get to s1 var1 should have value 2 but -var2 should still be set to 1 --> - - -<scxml initial="p0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - <data conf:id="2" conf:expr="1"/> - </datamodel> -<parallel id="p0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="p01"> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="subFinal1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal1"> - <onentry> - <send target="#_parent" event="childToParent"> - <param name="aParam" conf:expr="2"/> - </send> - </onentry> - </final> - </scxml> - </content> - <finalize> - <assign conf:location="1" conf:eventDataFieldValue="aParam"/> - </finalize> - </invoke> - - <transition event="childToParent" conf:idVal="1=2" target="s1"/> - <transition event="childToParent" conf:targetfail=""/> - </state> - - <state id="p02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="sub0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal2"/> - </state> - <final id="subFinal2"/> - </scxml> - </content> - <finalize> - <assign conf:location="2" conf:eventDataFieldValue="aParam"/> - </finalize> - </invoke> - </state> - -</parallel> - - -<state id="s1"> - <transition conf:idVal="2=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test235.txml b/test/samples/w3c/txml/test235.txml deleted file mode 100644 index 84b8680..0000000 --- a/test/samples/w3c/txml/test235.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that done.invoke.id event has the right id. the invoked child terminates immediately -and should generate done.invoke.foo --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" id="foo"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke.foo" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test236.txml b/test/samples/w3c/txml/test236.txml deleted file mode 100644 index 5d18c2f..0000000 --- a/test/samples/w3c/txml/test236.txml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<!-- test that done.invoke.id event is the last event we receive. the invoked process sends childToParent -in the exit handler of its final state. We should get it before the done.invoke, and we should get no -events after the done.invoke. Hence timeout indicates success --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"> - <onexit> - <send target="#_parent" event="childToParent"/> - </onexit> - </final> - </scxml> - </content> - </invoke> - - <transition event="childToParent" target="s1"/> - <transition event="done.invoke" conf:targetfail=""/> -</state> - -<state id="s1"> - <!-- here we should get done.invoke --> - <transition event="done.invoke" target="s2"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s2"> - <transition event="timeout" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test237.txml b/test/samples/w3c/txml/test237.txml deleted file mode 100644 index c6097bc..0000000 --- a/test/samples/w3c/txml/test237.txml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0"?> -<!-- test that cancelling works. invoked child sleeps for two seconds, then terminates. We -sleep for 1 sec in s0, then move to s1. This should cause the invocation to get cancelled. -If we receive done.invoke, the invocation wasn't cancelled, and we fail. If we receive no events by -the time timeout2 fires, success --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timeout1" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <!-- when invoked, sleep for 2 secs then terminate. Parent will try to cancel this session --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="timeout1" target="s1"/> - -</state> - -<state id="s1"> - <onentry> - <send event="timeout2" delay="2s"/> - </onentry> - <!-- here we should NOT get done.invoke --> - <transition event="done.invoke" conf:targetfail=""/> - <transition event="*" conf:targetpass=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test239.txml b/test/samples/w3c/txml/test239.txml deleted file mode 100644 index 8fa1837..0000000 --- a/test/samples/w3c/txml/test239.txml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that markup can be specified both by 'src' and by <content> --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" src="file:test239sub1.scxml"/> - <transition event="done.invoke" target="s02"/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test239sub1.scxml. --> - <content> - <scxml version="1.0" initial="final" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="final"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke" conf:targetpass=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test240.txml b/test/samples/w3c/txml/test240.txml deleted file mode 100644 index bf669d4..0000000 --- a/test/samples/w3c/txml/test240.txml +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified both by 'namelist' and by <param>. -invoked child will return success if its Var1 is set to 1, failure otherwise. This -test will fail schema validation because of the multiple occurences of Var1, but -should run correctly. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" conf:namelist="1"> - <content> - <scxml initial="sub01" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - <state id="sub01"> - <transition conf:namelistIdVal="1=1" target="subFinal1"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition event="success" target="s02"/> - <transition event="failure" conf:targetfail=""/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <param conf:name="1" conf:expr="1"/> - <content> - <scxml initial="sub02" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub02"> - <transition conf:idVal="1=1" target="subFinal2"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <transition event="success" conf:targetpass=""/> - <transition event="failure" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test241.txml b/test/samples/w3c/txml/test241.txml deleted file mode 100644 index 9587697..0000000 --- a/test/samples/w3c/txml/test241.txml +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0"?> -<!-- The child process will return success ifits Var1 is set to 1, failure otherwise. For this test -we try passing in Var1 by param and by namelist and check that we either get two successes -or two failures. This test will fail schema validation due to multiple declarations of -Var1, but should run correctly. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" conf:namelist="1"> - <content> - <scxml initial="sub01" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub01"> - <transition conf:idVal="1=1" target="subFinal1"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition event="success" target="s02"/> - <transition event="failure" target="s03"/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <param conf:name="1" conf:expr="1"/> - <content> - <scxml initial="sub02" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub02"> - <transition conf:idVal="1=1" target="subFinal2"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal2"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <!-- we got success in s01, so we need to do so here --> - <transition event="success" conf:targetpass=""/> - <transition event="failure" conf:targetfail=""/> - </state> - -<state id="s03"> - <invoke type="http://www.w3.org/TR/scxml/" > - <param conf:name="1" conf:expr="1"/> - <content> - <scxml initial="sub03" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub03"> - <transition conf:idVal="1=1" target="subFinal3"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal3"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal3"/> - </scxml> - </content> - </invoke> - <!-- we got failure in s01, so we need to do so here --> - <transition event="failure" conf:targetpass=""/> - <transition event="success" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test242.txml b/test/samples/w3c/txml/test242.txml deleted file mode 100644 index 35fa154..0000000 --- a/test/samples/w3c/txml/test242.txml +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0"?> -<!-- test that markup specified by 'src' and by <content> is treated the same way. That means that -either we get done.invoke in both cases or in neither case (in which case we timeout) --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" > - <onentry> - <send event="timeout1" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <invoke type="http://www.w3.org/TR/scxml/" src="file:test242sub1.scxml"/> - <transition event="done.invoke" target="s02"/> - <transition event="timeout1" target="s03"/> - </state> - -<state id="s02"> - <onentry> - <send event="timeout2" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test242sub1.scxml. --> - <content> - <scxml version="1.0" initial="subFinal1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <!-- we got done.invoke last time, so we need it this time too --> - <transition event="done.invoke" conf:targetpass=""/> - <transition event="timeout2" conf:targetfail=""/> - </state> - -<state id="s03"> - <onentry> - <send event="timeout3" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test242sub1.scxml. --> - <content> - <scxml version="1.0" initial="subFinal2" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <!-- we got timeout last time, so we need it this time too --> - <transition event="timeout3" conf:targetpass=""/> - <transition event="done.invoke" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test243.txml b/test/samples/w3c/txml/test243.txml deleted file mode 100644 index a01345c..0000000 --- a/test/samples/w3c/txml/test243.txml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified by param. -test240sub1 will return success ifits Var1 is set to 1, failure otherwise. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <param conf:name="1" conf:expr="1"/> - <content> - <scxml version="1.0" initial="sub0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub0"> - <transition conf:idVal="1=1" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="success" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test244.txml b/test/samples/w3c/txml/test244.txml deleted file mode 100644 index c0f1a23..0000000 --- a/test/samples/w3c/txml/test244.txml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified by namelist. -invoked child will return success ifits Var1 is set to 1, failure otherwise. -This test will fail schema validation due to multiple occurrences of Var1, -but should run correctly. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" conf:namelist="1"> - <content> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="sub0"> - <transition conf:idVal="1=1" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="success" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test245.txml b/test/samples/w3c/txml/test245.txml deleted file mode 100644 index 459bec6..0000000 --- a/test/samples/w3c/txml/test245.txml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> -<!-- test that non-existent datamodel values are not set. Var2 is not defined in -invoked child's datamodel. It will will return success if its Var2 remains unbound, failure otherwise. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="2" conf:expr="3"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" conf:namelist="2"> - <content> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <transition conf:isBound="2" target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="success" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test247.txml b/test/samples/w3c/txml/test247.txml deleted file mode 100644 index 7c528a3..0000000 --- a/test/samples/w3c/txml/test247.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we get done.invoke. timeout indicates failure --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="subFinal" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="done.invoke" conf:targetpass=""/> - <transition event="timeout" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test250.txml b/test/samples/w3c/txml/test250.txml deleted file mode 100644 index 3455062..0000000 --- a/test/samples/w3c/txml/test250.txml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the onexit handlers run in the invoked process if it is cancelled. This has to be a -manual test, since this process won't accept any events from the child process once it has been cancelled. -Tester must examine log output from child process to determine success --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" > - <content> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0" initial="sub01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - <onexit> - <log conf:quoteExpr="Exiting sub0"/> - </onexit> - <state id="sub01"> - <onexit> - <log conf:quoteExpr="Exiting sub01"/> - </onexit> - </state> - </state> - <final id="subFinal"> - <onentry> - <log conf:quoteExpr="entering final state, invocation was not cancelled"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - - <!-- this transition will cause the invocation to be cancelled --> - <transition event="foo" target="final"/> - </state> - -<final id="final"/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test252.txml b/test/samples/w3c/txml/test252.txml deleted file mode 100644 index 40c36cb..0000000 --- a/test/samples/w3c/txml/test252.txml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we don't process any events received from the invoked process once it is cancelled. child -process tries to send us childToParent in an onexit handler. If we get it, we fail. -timeout indicates success. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <transition event="timeout" conf:targetpass=""/> - <transition event="childToParent" conf:targetfail=""/> - <transition event="done.invoke" conf:targetfail=""/> - - <state id="s01"> - <onentry> - <send event="foo"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - <onexit> - <send target="#_parent" event="childToParent"/> - </onexit> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <!-- this transition will cause the invocation to be cancelled --> - <transition event="foo" target="s02"/> - </state> - - <state id="s02"/> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test253.txml b/test/samples/w3c/txml/test253.txml deleted file mode 100644 index 041797a..0000000 --- a/test/samples/w3c/txml/test253.txml +++ /dev/null @@ -1,83 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the scxml event processor is used in both directions. If child process uses the -scxml event i/o processor to communicate with us, send it an event. It will send back success if -this process uses the scxml processor to send the message to it, otherwise failure. For this test we allow -'scxml' as an alternative to the full url. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <transition event="timeout" conf:targetfail=""/> - - <invoke type="scxml" id="foo"> - <content> - <!-- inform parent we're running then wait for it to send us an event. If it uses the scxml event i/o - processor to do so, return success, otherwise return failure. --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="2"/> - </datamodel> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childRunning"/> - </onentry> - - <transition event="parentToChild" target="sub1"> - <assign conf:location="2" conf:eventField="origintype"/> - </transition> - </state> - <state id="sub1"> - <transition conf:idQuoteVal="2=http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition conf:idQuoteVal="2=scxml" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <state id="s01"> - <transition event="childRunning" target="s02"> - <assign conf:location="1" conf:eventField="origintype"/> - </transition> - </state> - - <state id="s02"> - - <transition conf:idQuoteVal="1=http://www.w3.org/TR/scxml/#SCXMLEventProcessor" target="s03"> - <send target="#_foo" event="parentToChild"/> - </transition> - <transition conf:idQuoteVal="1=scxml" target="s03"> - <send target="#_foo" event="parentToChild"/> - </transition> - - <transition conf:targetfail=""/> - - </state> - - - <state id="s03"> - <transition event="success" conf:targetpass=""/> - <transition event="fail" conf:targetfail=""/> - - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test276.txml b/test/samples/w3c/txml/test276.txml deleted file mode 100644 index e4a9d9f..0000000 --- a/test/samples/w3c/txml/test276.txml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that values passed in from parent process override default values specified in the child, test276sub1.scxml. -The child returns event1 if var1 has value 1, event0 if it has default value 0. --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <invoke type="scxml" src="file:test276sub1.scxml" > - <param conf:name="1" conf:expr="1"/> - </invoke> - <transition event="event1" conf:targetpass=""/> - <transition event="event0" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test279.txml b/test/samples/w3c/txml/test279.txml deleted file mode 100644 index b3b1adc..0000000 --- a/test/samples/w3c/txml/test279.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> - -<!-- testing that in case of early binding variables are assigned values at init time, before - the state containing them is visited --> -<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" - xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - <state id="s0"> - <transition conf:idVal="1=1" conf:targetpass=""/> - - <transition conf:targetfail=""/> - - </state> - -<state id="s1"> - <datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test280.txml b/test/samples/w3c/txml/test280.txml deleted file mode 100644 index 723eaa5..0000000 --- a/test/samples/w3c/txml/test280.txml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> - - -<!-- test late binding. var2 won't get bound until s1 is entered, so it shouldn't have a value in s0 and -accessing it should cause an error. It should get bound before the onentry code in s1 so it should be -possible access it there and assign its value to var1 --> - -<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" - binding="late" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <datamodel> - <data conf:id="1"/> - </datamodel> - - <state id="s0"> - <transition conf:unboundVar="2" target="s1"/> - <transition conf:targetfail=""/> - </state> - -<state id="s1"> - <datamodel> - <data conf:id="2" conf:expr="1"/> - </datamodel> - <onentry> - <assign conf:location="1" conf:varExpr="2"/> - </onentry> - <transition conf:VarEqVar="1 2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test286.txml b/test/samples/w3c/txml/test286.txml deleted file mode 100644 index 89b77a9..0000000 --- a/test/samples/w3c/txml/test286.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that assigment to a non-declared var causes an error. the transition on foo catches the case -where no error is raised --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" - xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" conf:datamodel="" initial="s0"> - - - <state id="s0"> - <onentry> - <assign conf:location="1" conf:expr="1"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml> diff --git a/test/samples/w3c/txml/test287.txml b/test/samples/w3c/txml/test287.txml deleted file mode 100644 index 8f25165..0000000 --- a/test/samples/w3c/txml/test287.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- a simple test that a legal value may be assigned to a valid data model location --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" - conf:datamodel="" version="1.0" initial="s0"> - -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="s0"> - <onentry> - <assign conf:location="1" conf:expr="1"/> - </onentry> - - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test294.txml b/test/samples/w3c/txml/test294.txml deleted file mode 100644 index 507ff3b..0000000 --- a/test/samples/w3c/txml/test294.txml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a param inside donedata ends up in the data field of the done event and -that content inside donedata sets the full value of the event.data field --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" conf:eventvarVal="1=1" target="s1"> - </transition> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param conf:name="1" conf:expr="1"/> - </donedata> - </final> - </state> - - <state id="s1" initial="s11"> - - <transition event="done.state.s1" conf:eventdataVal="foo" conf:targetpass=""> - </transition> - - <transition event="done.state.s1" conf:targetfail=""> - </transition> - - <state id="s11"> - <transition target="s12"/> - </state> - <final id="s12"> - <donedata> - <conf:contentFoo/> - </donedata> - </final> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test298.txml b/test/samples/w3c/txml/test298.txml deleted file mode 100644 index e1af350..0000000 --- a/test/samples/w3c/txml/test298.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- refence a non-existent data model location in param in donedata and see that the right error is raised --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - - <state id="s0" initial="s01"> - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param conf:name="3" conf:location="2"/> - </donedata> - </final> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml> - - diff --git a/test/samples/w3c/txml/test301.txml b/test/samples/w3c/txml/test301.txml deleted file mode 100644 index d3245f3..0000000 --- a/test/samples/w3c/txml/test301.txml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- the processor should reject this document because it can't download the script. -Therefore we fail if it runs at all. This test is valid only for datamodels that support scripting --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - <script conf:scriptBadSrc=""/> - - <state id="s0"> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test302.txml b/test/samples/w3c/txml/test302.txml deleted file mode 100644 index f1b99c0..0000000 --- a/test/samples/w3c/txml/test302.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that a script is evaluated at load time. <conf:script> shoudl assign the value 1 to -Var1. Hence, if script is evaluated at download time, Var1 has a value in the initial state s0. -This test is valid only for datamodels that support scripting --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" - xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - <conf:script/> - - <state id="s0"> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test303.txml b/test/samples/w3c/txml/test303.txml deleted file mode 100644 index 6fd1e9c..0000000 --- a/test/samples/w3c/txml/test303.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- to test that scripts are run as part of executable content, we check that it changes the value of a var at the -right point. This test is valid only for datamodels that support scripting --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> -<datamodel> -<data conf:id="1" conf:expr="0"/> -</datamodel> - - <state id="s0"> - <onentry> - <assign conf:location="1" conf:expr="2"/> - <conf:script/> - </onentry> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test304.txml b/test/samples/w3c/txml/test304.txml deleted file mode 100644 index 9ed6cbb..0000000 --- a/test/samples/w3c/txml/test304.txml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that a variable declared by a script can be accessed like any other part of the data model --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - <conf:script/> - - <state id="s0"> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test307.txml b/test/samples/w3c/txml/test307.txml deleted file mode 100644 index 4065f5f..0000000 --- a/test/samples/w3c/txml/test307.txml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?><scxml xmlns="http://www.w3.org/2005/07/scxml" -xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" binding="late"> - -<!-- with binding=late, in s0 we access a variable that isn't created until we get to s1. Then in s1 -we access a non-existent substructure of a variable. We use log tags to report the values that both operations -yield, and whether there are errors. This is a manual test, since the tester must report whether the output -is the same in the two cases --> - -<state id="s0"> - <onentry> - <log label="entering s0 value of Var 1 is: " conf:varExpr="1"/> - <raise event="foo"/> - </onentry> - <transition event="error" target="s1"> - <log label="error in state s0" conf:expr="_event"/> - </transition> - <transition event="foo" target="s1"> - <log label="no error in s0" conf:expr=""/> - </transition> - </state> - -<state id="s1"> - <datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - - <onentry> - <log label="entering s1, value of non-existent substructure of Var 1 is: " conf:varNonexistentStruct="1"/> - <raise event="bar"/> - </onentry> - - <transition event="error" target="final"> - <log label="error in state s1" conf:expr="_event"/> - </transition> - <transition event="bar" target="final"> - <log label="No error in s1" conf:expr=""/> - </transition> - -</state> - -<final id="final"/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test309.txml b/test/samples/w3c/txml/test309.txml deleted file mode 100644 index c781100..0000000 --- a/test/samples/w3c/txml/test309.txml +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that an expression that cannot be interpreted as a boolean is treated as false --> - -<scxml version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - -<state id="s0"> - <transition conf:nonBoolean="" conf:targetfail=""/> - <transition conf:targetpass=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test310.txml b/test/samples/w3c/txml/test310.txml deleted file mode 100644 index f88a87a..0000000 --- a/test/samples/w3c/txml/test310.txml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- simple test of the in() predicate --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" conf:datamodel="" -xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="p"> - - - <parallel id="p"> - - <state id="s0"> - <transition conf:inState="s1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <state id="s1"/> - </parallel> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test311.txml b/test/samples/w3c/txml/test311.txml deleted file mode 100644 index f6485be..0000000 --- a/test/samples/w3c/txml/test311.txml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that assignment to a non-existent location yields an error --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" conf:datamodel="" -xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:expr="1"/> - </onentry> - <transition event="error.execution" conf:targetpass=""/> - <transition event=".*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test312.txml b/test/samples/w3c/txml/test312.txml deleted file mode 100644 index 597200b..0000000 --- a/test/samples/w3c/txml/test312.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that assignment with an illegal expr raises an error --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" conf:datamodel="" -xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:illegalExpr=""/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" conf:targetpass=""/> - <transition event=".*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test313.txml b/test/samples/w3c/txml/test313.txml deleted file mode 100644 index ee11064..0000000 --- a/test/samples/w3c/txml/test313.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- this is a manual test. The processor is allowed to reject this doc, but if it executes it with its illegal -expression, it must raise an error --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" conf:datamodel="" -xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign conf:location="1" conf:illegalExpr=""/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" conf:targetpass=""/> - <transition event=".*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test314.txml b/test/samples/w3c/txml/test314.txml deleted file mode 100644 index 7a2329e..0000000 --- a/test/samples/w3c/txml/test314.txml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- this is a manual test because the processor is allowed to reject this document. But if it executes it, -it should not raise an error until it gets to s03 and evaluates the illegal expr --> - -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" - conf:datamodel="" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - - -<state id="s0" initial="s01"> - <transition event="error.execution" conf:targetfail=""/> - - <state id="s01"> - <transition target="s02"/> - </state> - - <state id="s02"> - <transition target="s03"/> - </state> - - <state id="s03"> - <onentry> - <assign conf:location="1" conf:illegalExpr=""/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" conf:targetpass=""/> - <transition event=".*" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test318.txml b/test/samples/w3c/txml/test318.txml deleted file mode 100644 index 9e71bc6..0000000 --- a/test/samples/w3c/txml/test318.txml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _event stays bound during the onexit and entry into the next state --> - -<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - </datamodel> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" target="s1"/> - </state> - - <state id="s1"> - <onentry> - <raise event="bar"/> - <!-- _event should still be bound to 'foo' at this point --> - <assign conf:location="1" conf:eventName=""/> - </onentry> - <transition conf:idQuoteVal="1=foo" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test319.txml b/test/samples/w3c/txml/test319.txml deleted file mode 100644 index 50e4a97..0000000 --- a/test/samples/w3c/txml/test319.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _event is not bound before any event has been raised --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" - name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <if conf:systemVarIsBound="_event"> - <raise event="bound"/> - <else/> - <raise event="unbound"/> - </if> - </onentry> - <transition event="unbound" conf:targetpass=""/> - <transition event="bound" conf:targetfail=""/> - - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test321.txml b/test/samples/w3c/txml/test321.txml deleted file mode 100644 index 74da9c3..0000000 --- a/test/samples/w3c/txml/test321.txml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _sessionid is bound on startup --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="$_sessionid"/> - </datamodel> - - <state id="s0"> -<transition conf:isBound="1" conf:targetpass=""/> - <transition conf:true="" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test322.txml b/test/samples/w3c/txml/test322.txml deleted file mode 100644 index 6900eef..0000000 --- a/test/samples/w3c/txml/test322.txml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _sessionid remains bound to the same value throught the session. this means that it can't -be assigned to --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:systemVarExpr="_sessionid"/> - <data conf:id="2"/> - </datamodel> - - <state id="s0"> - <transition target="s1"/> - - </state> - - <state id="s1"> - <onentry> - <assign conf:systemVarLocation="_sessionid" conf:quoteExpr="otherName"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" target="s2"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s2"> - - <transition conf:idSystemVarVal="1=_sessionid" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test323.txml b/test/samples/w3c/txml/test323.txml deleted file mode 100644 index afd3400..0000000 --- a/test/samples/w3c/txml/test323.txml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _name is bound on startup --> - -<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="$_name"/> - </datamodel> - - <state id="s0"> -<transition conf:isBound="1" conf:targetpass=""/> - <transition conf:true="" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test324.txml b/test/samples/w3c/txml/test324.txml deleted file mode 100644 index d1b304d..0000000 --- a/test/samples/w3c/txml/test324.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _name stays bound till the session ends. This means that it cannot be assigned to --> - -<scxml initial="s0" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - <state id="s0"> - <transition conf:nameVarVal="machineName" target="s1"/> - <transition conf:targetfail=""/> - </state> - - <state id="s1"> - <onentry> - <assign conf:systemVarLocation="_name" expr="'otherName'"/> - </onentry> - <transition conf:nameVarVal="machineName" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test325.txml b/test/samples/w3c/txml/test325.txml deleted file mode 100644 index 53623c3..0000000 --- a/test/samples/w3c/txml/test325.txml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _ioprocessors is bound at startup. I'm not sure how to test for a set value or -how to test that the entries in it do represent I/O processors, since the set that each implementation -supports may be different. Suggestions welcome --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:systemVarExpr="_ioprocessors"/> - </datamodel> - - - <state id="s0"> - <transition conf:isBound="1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test326.txml b/test/samples/w3c/txml/test326.txml deleted file mode 100644 index 008e786..0000000 --- a/test/samples/w3c/txml/test326.txml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that _ioprocessors stays bound till the session ends. This means that it cannot be assigned to --> -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:systemVarExpr="_ioprocessors"/> - <data conf:id="2"/> - </datamodel> - - <state id="s0"> - <transition conf:isBound="1" target="s1"/> - <transition conf:true="" conf:targetfail=""/> - </state> - - - <state id="s1"> - <onentry> - <assign conf:systemVarLocation="_ioprocessors" conf:quoteExpr="otherName"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" target="s2"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s2"> - <onentry> - <assign conf:location="2" conf:systemVarExpr="_ioprocessors"/> - </onentry> - <transition conf:VarEqVarStruct="1 2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test329.txml b/test/samples/w3c/txml/test329.txml deleted file mode 100644 index 2552e1f..0000000 --- a/test/samples/w3c/txml/test329.txml +++ /dev/null @@ -1,55 +0,0 @@ -<!-- test that none of the system variables can be modified --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - <data conf:id="3"/> - <data conf:id="4"/> - </datamodel> - - <state id="s0"> - <onentry> - <!-- get _event bound so we can use it in s1--> - <raise event="foo"/> - <assign conf:location="1" conf:systemVarExpr="_sessionid"/> - <assign conf:systemVarLocation="_sessionid" conf:invalidSessionID=""/> - </onentry> - - <transition event="foo" conf:idSystemVarVal="1=_sessionid" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s1"> - <onentry> - <assign conf:location="2" conf:systemVarExpr="_event"/> - <assign conf:systemVarLocation="_event" expr="27"/> - </onentry> - <transition conf:idSystemVarVal="2=_event" target="s2"/> - <transition conf:targetfail=""/> - </state> - -<state id="s2"> - <onentry> - <assign conf:location="3" conf:systemVarExpr="_name"/> - <assign conf:systemVarLocation="_name" expr="27"/> - </onentry> - <transition conf:idSystemVarVal="3=_name" target="s3"/> - <transition conf:targetfail=""/> - </state> - - -<state id="s3"> - <onentry> - <assign conf:location="4" conf:systemVarExpr="_ioprocessors"/> - <assign conf:systemVarLocation="_ioprocessors" expr="27"/> - </onentry> - <transition conf:idSystemVarVal="4=_ioprocessors" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test330.txml b/test/samples/w3c/txml/test330.txml deleted file mode 100644 index 7778fad..0000000 --- a/test/samples/w3c/txml/test330.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> - -<!-- check that the required fields are present in both internal and external events --> - -<scxml initial="s0" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldsAreBound="" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s1"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldsAreBound="" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test331.txml b/test/samples/w3c/txml/test331.txml deleted file mode 100644 index a273b14..0000000 --- a/test/samples/w3c/txml/test331.txml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<scxml version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" name="machineName"> - -<!-- test that _event.type is set correctly for internal, platform, and external events --> -<datamodel> - <data conf:id="1"/> - </datamodel> - - <state id="s0"> - <onentry> - <!-- internal event --> - <raise event="foo"/> - </onentry> - <transition event="foo" target="s1"> - <assign conf:location="1" conf:eventType=""/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition conf:idQuoteVal="1=internal" target="s2"/> - <transition conf:targetfail=""/> - </state> - -<state id="s2"> - <onentry> - <!-- this will generate an error, which is a platform event --> - <assign conf:location="2" conf:expr="1"/> - </onentry> - <transition event="error" target="s3"> - <assign conf:location="1" conf:eventType=""/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s3"> - <transition conf:idQuoteVal="1=platform" target="s4"/> - <transition conf:targetfail=""/> - </state> - - <state id="s4"> - <onentry> - <!-- external event --> - <send event="foo"/> - </onentry> - <transition event="foo" target="s5"> - <assign conf:location="1" conf:eventType=""/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s5"> - <transition conf:idQuoteVal="1=external" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - - <final xmlns="http://www.w3.org/2005/07/scxml" id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final xmlns="http://www.w3.org/2005/07/scxml" id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test332.txml b/test/samples/w3c/txml/test332.txml deleted file mode 100644 index 0f87545..0000000 --- a/test/samples/w3c/txml/test332.txml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that sendid is present in error events triggered by send errors --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" initial="s0" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - </datamodel> - - - <state id="s0"> - <onentry> - <!-- this will raise an error and also store the sendid in var1 --> - <send conf:illegalTarget="" event="foo" conf:idlocation="1"/> - </onentry> - <transition event="error" target="s1"> - <!-- get the sendid out of the error event --> - <assign conf:location="2" conf:eventSendid=""/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> -<!-- make sure that the sendid in the error event matches the one generated when send executed --> - <transition conf:VarEqVar="1 2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test333.txml b/test/samples/w3c/txml/test333.txml deleted file mode 100644 index 38a5097..0000000 --- a/test/samples/w3c/txml/test333.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> - -<!-- make sure sendid is blank in a non-error event --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" initial="s0" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldHasNoValue="sendid" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test335.txml b/test/samples/w3c/txml/test335.txml deleted file mode 100644 index e9c70b2..0000000 --- a/test/samples/w3c/txml/test335.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that origin field is blank for internal events --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" initial="s0" conf:datamodel="" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldHasNoValue="origin" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test336.txml b/test/samples/w3c/txml/test336.txml deleted file mode 100644 index 889cb94..0000000 --- a/test/samples/w3c/txml/test336.txml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that the origin field of an external event contains a URL that lets you send back to the originator. In -this case it's the same session, so if we get bar we succeed --> - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" target="s1"> - <conf:sendToSender name="bar"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <onentry> - <send event="baz"/> - </onentry> - <transition event="bar" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test337.txml b/test/samples/w3c/txml/test337.txml deleted file mode 100644 index 4d5e44f..0000000 --- a/test/samples/w3c/txml/test337.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that origintype is blank on internal events --> - -<scxml initial="s0" conf:datamodel="" version="1.0" name="machineName" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldHasNoValue="origintype" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test338.txml b/test/samples/w3c/txml/test338.txml deleted file mode 100644 index 5f81086..0000000 --- a/test/samples/w3c/txml/test338.txml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that invokeid is set correctly in events received from an invoked process. timeout event catches the -case where the invoke doesn't work correctly --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1"/> - <data conf:id="2"/> - </datamodel> - - <state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke conf:idlocation="1" type="http://www.w3.org/TR/scxml/" > - <content> - <scxml initial="sub0" version="1.0" conf:datamodel="" name="machineName"> - <final id="sub0"> - <onentry> - <send target="#_parent" event="event1"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - <transition event="event1" target="s1"> - <assign conf:location="2" conf:eventField="invokeid"/> - </transition> - <transition event="event0" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition conf:VarEqVar="1 2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test339.txml b/test/samples/w3c/txml/test339.txml deleted file mode 100644 index 7ea1081..0000000 --- a/test/samples/w3c/txml/test339.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that invokeid is blank in an event that wasn't returned from an invoked process --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" conf:eventFieldHasNoValue="invokeid" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test342.txml b/test/samples/w3c/txml/test342.txml deleted file mode 100644 index d8f330a..0000000 --- a/test/samples/w3c/txml/test342.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that eventexpr works and sets the name field of the resulting event --> -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:quoteExpr="foo"/> - <data conf:id="2"/> - </datamodel> - - <state id="s0"> - <onentry> - <send conf:eventExpr="1"/> - </onentry> - <transition event="foo" target="s1"> - <assign conf:location="2" conf:eventField="name"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s1"> - <transition conf:VarEqVar="1 2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test343.txml b/test/samples/w3c/txml/test343.txml deleted file mode 100644 index 1d13da6..0000000 --- a/test/samples/w3c/txml/test343.txml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal <param> produces error.execution and empty event.data --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" conf:targetfail=""/> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param conf:location="foo" name="someParam"/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" conf:emptyEventData="" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test344.txml b/test/samples/w3c/txml/test344.txml deleted file mode 100644 index 8bf6270..0000000 --- a/test/samples/w3c/txml/test344.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- test that a non-boolean cond expression evaluates to false and causes error.execution to be raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" - conf:datamodel="" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0"> - -<state id="s0"> - <transition conf:nonBoolean="" conf:targetfail=""/> - <transition target="s1"/> - </state> - -<state id="s1"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test346.txml b/test/samples/w3c/txml/test346.txml deleted file mode 100644 index 10db614..0000000 --- a/test/samples/w3c/txml/test346.txml +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that any attempt to change the value of a system variable causes error.execution to be raised. -Event1..4 are there to catch the case where the error event is not raised. In cases where it is, we have -to dispose of eventn in the next state, hence the targetless transitions (which simply throw away the event.) --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" name="machineName" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - <state id="s0"> - <onentry> - <assign conf:systemVarLocation="_sessionid" conf:quoteExpr="otherName"/> - <raise event="event1"/> - </onentry> - - <transition event="error.execution" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s1"> - <onentry> - <assign conf:systemVarLocation="_event" conf:quoteExpr="otherName"/> - <raise event="event2"/> - </onentry> - <!-- throw out event1 if it's still around --> - <transition event="event1"/> - <transition event="error.execution" target="s2"/> - <!-- event1 would trigger this transition if we didn't drop it. We want this transition to have - a very general trigger to catch cases where the wrong error event was raised --> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s2"> - <onentry> - <assign conf:systemVarLocation="_ioprocessors" conf:quoteExpr="otherName"/> - <raise event="event3"/> - </onentry> - <transition event="event2"/> - <transition event="error.execution" target="s3"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s3"> - <onentry> - <assign conf:systemVarLocation="_name" conf:quoteExpr="otherName"/> - <raise event="event4"/> - </onentry> - <transition event="event3"/> - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test355.txml b/test/samples/w3c/txml/test355.txml deleted file mode 100644 index 4136801..0000000 --- a/test/samples/w3c/txml/test355.txml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that default initial state is first in document order. If we enter s0 first we succeed, if s1, failure. --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <transition conf:targetpass=""/> -</state> - -<state id="s1"> - <transition conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test364.txml b/test/samples/w3c/txml/test364.txml deleted file mode 100644 index a302f54..0000000 --- a/test/samples/w3c/txml/test364.txml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0"?> -<!-- test that default initial states are entered when a compound state is entered. First we test -the 'initial' attribute, then the initial element, then default to the first child in document order. -If we get to s01111 we succeed, if any other state, failure. --> - - -<scxml conf:datamodel="" initial="s1" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s1" initial="s11p112 s11p122"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - <state id="s11" initial="s111"> - <state id="s111"/> - <parallel id="s11p1"> - <state id="s11p11" initial="s11p111"> - <state id="s11p111"/> - <state id="s11p112"> - <onentry> - <raise event="In-s11p112"/> - </onentry> - </state> - </state> - <state id="s11p12" initial="s11p121"> - <state id="s11p121"/> - <state id="s11p122"> - <transition event="In-s11p112" target="s2"/> - </state> - </state> - </parallel> - </state> -</state> - -<state id="s2"> - <initial> - <transition target="s21p112 s21p122"/> - </initial> - <transition event="timeout" conf:targetfail=""/> - <state id="s21" initial="s211"> - <state id="s211"/> - <parallel id="s21p1"> - <state id="s21p11" initial="s21p111"> - <state id="s21p111"/> - <state id="s21p112"> - <onentry> - <raise event="In-s21p112"/> - </onentry> - </state> - </state> - <state id="s21p12" initial="s21p121"> - <state id="s21p121"/> - <state id="s21p122"> - <transition event="In-s21p112" target="s3"/> - </state> - </state> - </parallel> - </state> -</state> - -<state id="s3"> - <transition conf:targetfail=""/> - <state id="s31"> - <state id="s311"> - <state id="s3111"> - <transition conf:targetpass=""/> - </state> - <state id="s3112"/> - <state id="s312"/> - <state id="s32"/> -</state> -</state> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test372.txml b/test/samples/w3c/txml/test372.txml deleted file mode 100644 index 84cb8f6..0000000 --- a/test/samples/w3c/txml/test372.txml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- test that entering a final state generates done.state.parentid after executing the onentry elements. -Var1 should be set to 2 (but not 3) by the time the event is raised --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0" initial="s0final"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="done.state.s0" conf:idVal="1=2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - <final id="s0final"> - <onentry> - <assign conf:location="1" conf:expr="2"/> - </onentry> - <onexit> - <assign conf:location="1" conf:expr="3"/> - </onexit> - </final> -</state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test375.txml b/test/samples/w3c/txml/test375.txml deleted file mode 100644 index 47d42c5..0000000 --- a/test/samples/w3c/txml/test375.txml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that onentry handlers are executed in document order. event1 should be raised before event2 --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - -<state id="s0"> - <onentry> - <raise event="event1"/> - </onentry> - <onentry> - <raise event="event2"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="*" conf:targetfail=""/> - -</state> - -<state id="s1"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test376.txml b/test/samples/w3c/txml/test376.txml deleted file mode 100644 index 86c2c2c..0000000 --- a/test/samples/w3c/txml/test376.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- test that each onentry handler is a separate block. The <send> of event1 will cause an error but - the increment to var1 should happen anyways --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send conf:illegalTarget="" event="event1"/> - </onentry> - <onentry> - <conf:incrementID id="1"/> - </onentry> - - <transition conf:idVal="1=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test377.txml b/test/samples/w3c/txml/test377.txml deleted file mode 100644 index bca44ca..0000000 --- a/test/samples/w3c/txml/test377.txml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> -<!-- test that onexit handlers are executed in document order. event1 should be raised before event2 --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - -<state id="s0"> - <onexit> - <raise event="event1"/> - </onexit> - <onexit> - <raise event="event2"/> - </onexit> - - <transition target="s1"/> - </state> - - <state id="s1"> - - <transition event="event1" target="s2"/> - <transition event="*" conf:targetfail=""/> - -</state> - -<state id="s2"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test378.txml b/test/samples/w3c/txml/test378.txml deleted file mode 100644 index 0e553c4..0000000 --- a/test/samples/w3c/txml/test378.txml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- test that each onexithandler is a separate block. The <send> of event1 will cause an error but - the increment to var1 should happen anyways --> - - -<scxml version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - -<state id="s0"> - <onexit> - <send conf:illegalTarget="" event="event1"/> - </onexit> - <onexit> - <conf:incrementID id="1"/> - </onexit> - -<transition target="s1"/> -</state> - -<state id="s1"> - <transition conf:idVal="1=2" conf:targetpass=""/> - <transition conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test387.txml b/test/samples/w3c/txml/test387.txml deleted file mode 100644 index 8997580..0000000 --- a/test/samples/w3c/txml/test387.txml +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the default history state works correctly. From initial state s3 we take a transition to s0's default -shallow history state. That should generate "enteringS011", which takes us to s4. In s4, we -transition to s1's default deep history state. We should end up in s122, generating "enteringS122". Otherwise failure.--> - - -<scxml initial="s3" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - - <transition event="enteringS011" target="s4"/> - <transition event="*" conf:targetfail=""/> - - <history type="shallow" id="s0HistShallow"> - <transition target="s01"/> - </history> - <history type="deep" id="s0HistDeep"> - <transition target="s022"/> - </history> - <state id="s01" initial="s011"> - <state id="s011"> - <onentry> - <raise event="enteringS011"/> - </onentry> - </state> - <state id="s012"> - <onentry> - <raise event="enteringS012"/> - </onentry> - </state> - </state> - <state id="s02" initial="s021"> - <state id="s021"> - <onentry> - <raise event="enteringS021"/> - </onentry> - </state> - <state id="s022"> - <onentry> - <raise event="enteringS022"/> - </onentry> - </state> - </state> - -</state> - -<state id="s1" initial="s11"> - - <transition event="enteringS122" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - - <history type="shallow" id="s1HistShallow"> - <transition target="s11"/> - </history> - <history type="deep" id="s1HistDeep"> - <transition target="s122"/> - </history> - <state id="s11" initial="s111"> - <state id="s111"> - <onentry> - <raise event="enteringS111"/> - </onentry> - </state> - <state id="s112"> - <onentry> - <raise event="enteringS112"/> - </onentry> - </state> - </state> - <state id="s12" initial="s121"> - <state id="s121"> - <onentry> - <raise event="enteringS121"/> - </onentry> - </state> - <state id="s122"> - <onentry> - <raise event="enteringS122"/> - </onentry> - </state> - </state> - -</state> - - -<state id="s3"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition target="s0HistShallow"/> -</state> - -<state id="s4"> - <transition target="s1HistDeep"/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test388.txml b/test/samples/w3c/txml/test388.txml deleted file mode 100644 index 36d58cc..0000000 --- a/test/samples/w3c/txml/test388.txml +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0"?> -<!-- test that history states works correctly. The counter Var1 counts how many times -we have entered s0. The initial state is s012. We then transition to s1, which transitions -to s0's deep history state. entering.s012 should be raised, otherwise failure. Then we transition -to s02, which transitions to s0's shallow history state. That should have value s01, and its initial -state is s011, so we should get entering.s011, otherwise failure.--> - - -<scxml version="1.0" initial="s012" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <conf:incrementID id="1"/> - </onentry> - - <!-- the first time through, go to s1, setting a timer just in case something hangs --> - <transition event="entering.s012" conf:idVal="1=1" target="s1"> - <send event="timeout" delay="2s"/> - </transition> - - <!-- the second time, we should get entering.s012. If so, go to s2, otherwise fail --> - <transition event="entering.s012" conf:idVal="1=2" target="s2"/> - <transition event="entering" conf:idVal="1=2" conf:targetfail=""/> - - <!-- the third time we should get entering-s011. If so, pass, otherwise fail --> - <transition event="entering.s011" conf:idVal="1=3" conf:targetpass=""/> - <transition event="entering" conf:idVal="1=3" conf:targetfail=""/> - - <!-- if we timeout, the state machine is hung somewhere, so fail --> - <transition event="timeout" conf:targetfail=""/> - - <history type="shallow" id="s0HistShallow"> - <transition target="s02"/> - </history> - <history type="deep" id="s0HistDeep"> - <transition target="s022"/> - </history> - <state id="s01" initial="s011"> - <state id="s011"> - <onentry> - <raise event="entering.s011"/> - </onentry> - </state> - <state id="s012"> - <onentry> - <raise event="entering.s012"/> - </onentry> - </state> - </state> - <state id="s02" initial="s021"> - <state id="s021"> - <onentry> - <raise event="entering.s021"/> - </onentry> - </state> - <state id="s022"> - <onentry> - <raise event="entering.s022"/> - </onentry> - </state> - </state> - -</state> - - -<state id="s1"> - <transition target="s0HistDeep"/> -</state> - -<state id="s2"> - <transition target="s0HistShallow"/> -</state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test396.txml b/test/samples/w3c/txml/test396.txml deleted file mode 100644 index 3af03c9..0000000 --- a/test/samples/w3c/txml/test396.txml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the value in _event.name matches the event name used to match against transitions --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - - - <transition event="foo" conf:eventNameVal="foo" conf:targetpass=""/> - <transition event="foo" conf:targetfail=""/> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test399.txml b/test/samples/w3c/txml/test399.txml deleted file mode 100644 index 9eeced2..0000000 --- a/test/samples/w3c/txml/test399.txml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the event name matching works correctly, including prefix matching and the fact -that the event attribute of transition may contain multiple event designators. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <!-- this will catch the failure case --> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <onentry> - <raise event="foo"/> - </onentry> - <!-- test that an event can match against a transition with multiple descriptors --> - <transition event="foo bar" target="s02"/> - </state> - - <state id="s02"> - <onentry> - <raise event="bar"/> - </onentry> - <!-- test that an event can match the second descriptor as well --> - <transition event="foo bar" target="s03"/> - </state> - - <state id="s03"> - <onentry> - <raise event="foo.zoo"/> - </onentry> - <!-- test that a prefix descriptor matches --> - <transition event="foo bar" target="s04"/> - </state> - -<state id="s04"> - <onentry> - <raise event="foos"/> - </onentry> - <!-- test that only token prefixes match --> - <transition event="foo" conf:targetfail=""/> - <transition event="foos" target="s05"/> -</state> - -<state id="s05"> - <onentry> - <raise event="foo.zoo"/> - </onentry> - <!-- test that .* works at the end of a descriptor --> - <transition event="foo.*" target="s06"/> - </state> - - <state id="s06"> - <onentry> - <raise event="foo"/> - </onentry> - <!-- test that "*" works by itself --> - <transition event="*" conf:targetpass=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test401.txml b/test/samples/w3c/txml/test401.txml deleted file mode 100644 index a42b719..0000000 --- a/test/samples/w3c/txml/test401.txml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- test that errors go in the internal event queue. We send ourselves an external event foo, then perform -and operation that raises an error. Then check that the error event is processed first, even though -it was raised second --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="foo"/> - <!-- assigning to a non-existent location should raise an error --> - <assign conf:location="1" conf:expr="2"/> - </onentry> - - - <transition event="foo" conf:targetfail=""/> - <transition event="error" conf:targetpass=""/> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test402.txml b/test/samples/w3c/txml/test402.txml deleted file mode 100644 index 24e84e1..0000000 --- a/test/samples/w3c/txml/test402.txml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<!-- the assertion that errors are 'like any other event' is pretty broad, but we can check that they -are pulled off the internal queue in order, and that prefix matching works on them. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <!-- catch the failure case --> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <onentry> - <!-- the first internal event. The error will be the second, and event2 will be the third --> - <raise event="event1"/> - <!-- assigning to a non-existent location should raise an error --> - <assign conf:location="1" conf:expr="2"/> - </onentry> - - <transition event="event1" target="s02"> - <raise event="event2"/> - </transition> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s02"> - <transition event="error" target="s03"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s03"> - <transition event="event2" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test403a.txml b/test/samples/w3c/txml/test403a.txml deleted file mode 100644 index 88bc4dc..0000000 --- a/test/samples/w3c/txml/test403a.txml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0"?> -<!-- we test one part of 'optimal enablement' meaning that of all transitions that are enabled, we chose the ones -in child states over parent states, and use document order to break ties. We have -a parent state s0 with two children, s01 and s02. In s01, we test that a) if -a transition in the child matches, we don't consider matches in the parent and b) -that if two transitions match in any state, we take the first in document order. -In s02 we test that we take a transition in the parent if there is no -matching transition in the child. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <!-- catch the failure case --> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - <transition event="event1" conf:targetfail=""/> - <transition event="event2" conf:targetpass=""/> - - <state id="s01"> - <onentry> - <!-- this should be caught by the first transition in this state, taking us to S02 --> - <raise event="event1"/> - </onentry> - - <transition event="event1" target="s02"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s02"> - <onentry> - <!-- since the local transition has a cond that evaluates to false this should be caught by a - transition in the parent state, taking us to pass --> - <raise event="event2"/> - </onentry> - <transition event="event1" conf:targetfail=""/> - <transition event="event2" conf:false="" conf:targetfail=""/> - </state> - -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test403b.txml b/test/samples/w3c/txml/test403b.txml deleted file mode 100644 index c3ee1f8..0000000 --- a/test/samples/w3c/txml/test403b.txml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that 'optimally enabled set' really is a set, specifically that if a transition is optimally enabled in -two different states, it is taken only once. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0" initial="p0"> - <!-- this transition should never be taken because a transition in a lower state should - always be selected --> - <transition event="event1"> - <conf:incrementID id="1"/> - </transition> - - - - <parallel id="p0"> - - <onentry> - <raise event="event1"/> - <raise event="event2"/> - </onentry> - - <!-- this transition will be selected by both states p0s1 and p0s2, but should be executed only once --> - <transition event="event1"> - <conf:incrementID id="1"/> - </transition> - - <state id="p0s1"> - <transition event="event2" conf:idVal="1=1" conf:targetpass=""/> - <transition event="event2" conf:targetfail=""/> - </state> - - <state id="p0s2"/> - -</parallel> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test403c.txml b/test/samples/w3c/txml/test403c.txml deleted file mode 100644 index 8af1aac..0000000 --- a/test/samples/w3c/txml/test403c.txml +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0"?> -<!-- we test 'optimally enabled set', specifically that preemption works correctly --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" expr="0"/> - </datamodel> - -<state id="s0" initial="p0"> - <onentry> - <raise event="event1"/> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="event2" conf:targetfail=""/> - <transition event="timeout" conf:targetfail=""/> - - <parallel id="p0"> - - <state id="p0s1"> - <transition event="event1"/> - <transition event="event2"/> - </state> - - <state id="p0s2"> - <transition event="event1" target="p0s1"> - <raise event="event2"/> - </transition> - - </state> - - <state id="p0s3"> - <!-- this transition should be blocked by the one in p0s2--> - <transition event="event1" conf:targetfail=""/> - <!-- this transition will preempt the one that p0s2 inherits - from an ancestor --> - <transition event="event2" target="s1"/> - - </state> - -<state id="p0s4"> - <!-- this transition never gets preempted, should fire twice --> - <transition event="*"> - <conf:incrementID id="1"/> - </transition> - </state> - -</parallel> -</state> - -<state id="s1"> - <transition conf:idVal="1=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test404.txml b/test/samples/w3c/txml/test404.txml deleted file mode 100644 index 6734dbd..0000000 --- a/test/samples/w3c/txml/test404.txml +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0"?> -<!-- test that states are exited in exit order (children before parents with reverse doc order used to break ties - before the executable content in the transitions. event1, event2, event3, event4 should be raised in that - order when s01p is exited --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01p"> - - - -<parallel id="s01p"> - <onexit> - <!-- this should be the 3rd event raised --> - <raise event="event3"/> - </onexit> - <transition target="s02"> - <!-- this should be the fourth event raised --> - <raise event="event4"/> - </transition> - - <state id="s01p1"> - <onexit> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onexit> - </state> - - <state id="s01p2"> - <!-- this should be the first event raised --> - <onexit> - <raise event="event1"/> - </onexit> - </state> - </parallel> - - <state id="s02"> - <transition event="event1" target="s03"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s04"> - <transition event="event3" target="s05"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s05"> - <transition event="event4" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - </state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test405.txml b/test/samples/w3c/txml/test405.txml deleted file mode 100644 index ca8254e..0000000 --- a/test/samples/w3c/txml/test405.txml +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the executable content in the transitions is executed in document order after -the states are exited. event1, event2, event3, event4 should be raised in that order when the -state machine is entered --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" - xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0" initial="s01p"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - -<parallel id="s01p"> - <transition event="event1" target="s02"/> - - - <state id="s01p1" initial="s01p11"> - <state id="s01p11"> - <onexit> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onexit> - <transition target="s01p12"> - <!-- this should be the third event raised --> - <raise event="event3"/> - </transition> - </state> - <state id="s01p12"/> - </state> <!-- end s01p1 --> - - <state id="s01p2" initial="s01p21"> - <state id="s01p21"> - <onexit> - <!-- this should be the first event raised --> - <raise event="event1"/> - </onexit> - <transition target="s01p22"> - <!-- this should be the fourth event raised --> - <raise event="event4"/> - </transition> - </state> - <state id="s01p22"/> - - </state> <!-- end s01p2 --> - </parallel> - - - <state id="s02"> - <transition event="event2" target="s03"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s03"> - <transition event="event3" target="s04"/> - <transition event="*" conf:targetfail=""/> - </state> - - - <state id="s04"> - <transition event="event4" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - </state> <!-- end s01 --> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test406.txml b/test/samples/w3c/txml/test406.txml deleted file mode 100644 index 9504381..0000000 --- a/test/samples/w3c/txml/test406.txml +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> -<!-- Test that states are entered in entry order (parents before children with document order used to break ties) -after the executable content in the transition is executed. event1, event2, event3, event4 should be raised in that -order when the transition in s01 is taken --> - -<scxml version="1.0" initial="s0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" - xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s01"> - <transition target="s0p2"> - <!-- this should be the first event raised --> - <raise event="event1"/> - </transition> - </state> - -<parallel id="s0p2"> - - <transition event="event1" target="s03"/> - - <state id="s01p21" > - <onentry> - <!-- third event --> - <raise event="event3"/> - </onentry> - </state> - - <state id="s01p22"> - <onentry> - <!-- the fourth event --> - <raise event="event4"/> - </onentry> - </state> - - <onentry> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onentry> - </parallel> - - - <state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s04"> - <transition event="event3" target="s05"/> - <transition event="*" conf:targetfail=""/> - </state> - - - <state id="s05"> - <transition event="event4" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - </state> <!-- end s0 --> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test407.txml b/test/samples/w3c/txml/test407.txml deleted file mode 100644 index fdef966..0000000 --- a/test/samples/w3c/txml/test407.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- a simple test that onexit handlers work. var1 should be incremented when we leave s0 --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - -<state id="s0"> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition target="s1"/> -</state> - -<state id="s1"> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test409.txml b/test/samples/w3c/txml/test409.txml deleted file mode 100644 index abc92ee..0000000 --- a/test/samples/w3c/txml/test409.txml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that states are removed from the active states list as they are exited. When s01's onexit handler -fires, s011 should not be on the active state list, so in(S011) should be false, and event1 should not -be raised. Therefore the timeout should fire to indicate success --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <transition event="timeout" conf:targetpass=""/> - <transition event="event1" conf:targetfail=""/> - - <state id="s01" initial="s011"> - <onexit> - <if conf:inState="s011"> - <raise event="event1"/> - </if> - </onexit> - - <state id="s011"> - <transition target="s02"/> - </state> - </state> <!-- end s01 --> - -<state id="s02"/> - -</state> <!-- end s0 --> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test411.txml b/test/samples/w3c/txml/test411.txml deleted file mode 100644 index 149e21e..0000000 --- a/test/samples/w3c/txml/test411.txml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that states are added to the active states list as they are entered and before onentry handlers -are executed. When s0's onentry handler fires we should not be in s01. But when s01's onentry handler -fires, we should be in s01. Therefore event1 should not fire, but event2 should. Either event1 or -timeout also indicates failure --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - <if conf:inState="s01"> - <raise event="event1"/> - </if> - </onentry> - - <transition event="timeout" conf:targetfail=""/> - <transition event="event1" conf:targetfail=""/> - <transition event="event2" conf:targetpass=""/> - - <state id="s01" > - <onentry> - <if conf:inState="s01"> - <raise event="event2"/> - </if> - </onentry> - </state> - -</state> <!-- end s0 --> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test412.txml b/test/samples/w3c/txml/test412.txml deleted file mode 100644 index 6eb703f..0000000 --- a/test/samples/w3c/txml/test412.txml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> -<!-- test that executable content in the <initial> transition executes after the onentry handler on the state -and before the onentry handler of the child states. Event1, event2, and event3 should occur in that order. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <transition event="timeout" conf:targetfail=""/> - <transition event="event1" conf:targetfail=""/> - <transition event="event2" conf:targetpass=""/> - - <state id="s01" > - <onentry> - <raise event="event1"/> - </onentry> - <initial> - <transition target="s011"> - <raise event="event2"/> - </transition> - </initial> - - <state id="s011"> - <onentry> - <raise event="event3"/> - </onentry> - <transition target="s02"/> - </state> - </state> - -<state id="s02"> - <transition event="event1" target="s03"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" conf:targetfail=""/> - </state> - -<state id="s04"> - <transition event="event3" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -</state> <!-- end s0 --> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test413.txml b/test/samples/w3c/txml/test413.txml deleted file mode 100644 index 0ac00e3..0000000 --- a/test/samples/w3c/txml/test413.txml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the state machine is put into the configuration specified by the initial element, without regard -to any other defaults. we should start off in s2p111 and s2p122. the atomic -states we should not enter all have immediate transitions to failure in them --> - - -<scxml initial="s2p112 s2p122" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s1"> - <transition conf:targetfail=""/> - </state> - -<state id="s2" initial="s2p1"> - -<parallel id="s2p1"> - <!-- this transition will be triggered only if we end up in an illegal configuration where we're in - either s2p112 or s2p122, but not both of them --> - <transition conf:targetfail=""/> - - <state id="s2p11" initial="s2p111" > - <state id="s2p111"> - <transition conf:targetfail=""/> - </state> - - <state id="s2p112"> - <transition conf:inState="s2p122" conf:targetpass=""/> - </state> - - </state> <!-- end s2p11 --> - - <state id="s2p12" initial="s2p121"> - <state id="s2p121"> - <transition conf:targetfail=""/> - </state> - - <state id="s2p122"> - <transition conf:inState="s2p112" conf:targetpass=""/> - </state> - </state> - -</parallel> - -</state> <!-- end s2 --> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test416.txml b/test/samples/w3c/txml/test416.txml deleted file mode 100644 index bb0b6f5..0000000 --- a/test/samples/w3c/txml/test416.txml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the done.state.id gets generated when we enter the final state of a compound state --> - - -<scxml version="1.0" initial="s1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s1" initial="s11"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <state id="s11" initial="s111"> - <transition event="done.state.s11" conf:targetpass=""/> - <state id="s111"> - <transition target="s11final"/> - </state> - <final id="s11final"/> - </state> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test417.txml b/test/samples/w3c/txml/test417.txml deleted file mode 100644 index 5963d68..0000000 --- a/test/samples/w3c/txml/test417.txml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we get the done.state.id event when all of a -parallel elements children enter final states. --> - - - -<scxml version="1.0" initial="s1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s1" initial="s1p1"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - - <parallel id="s1p1"> - <transition event="done.state.s1p1" conf:targetpass=""/> - - <state id="s1p11" initial="s1p111"> - <state id="s1p111"> - <transition target="s1p11final"/> - </state> - <final id="s1p11final"/> - </state> - - <state id="s1p12" initial="s1p121"> - <state id="s1p121"> - <transition target="s1p12final"/> - </state> - <final id="s1p12final"/> - </state> - - </parallel> -</state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test419.txml b/test/samples/w3c/txml/test419.txml deleted file mode 100644 index 2d8fab7..0000000 --- a/test/samples/w3c/txml/test419.txml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that eventless transitions take precedence over event-driven ones --> - - - -<scxml version="1.0" initial="s1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s1"> - <onentry> - <raise event="internalEvent"/> - <send event="externalEvent"/> - </onentry> - - <transition event="*" conf:targetfail=""/> - <transition conf:targetpass=""/> - -</state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test421.txml b/test/samples/w3c/txml/test421.txml deleted file mode 100644 index 4f92719..0000000 --- a/test/samples/w3c/txml/test421.txml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- test that internal events take priority over external ones, and that the processor -keeps pulling off internal events until it finds one that triggers a transition --> - - - -<scxml version="1.0" initial="s1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s1" initial="s11"> - <onentry> - <send event="externalEvent"/> - <raise event="internalEvent1"/> - <raise event="internalEvent2"/> - <raise event="internalEvent3"/> - <raise event="internalEvent4"/> - </onentry> - - <transition event="externalEvent" conf:targetfail=""/> - - <state id="s11"> - <transition event="internalEvent3" target="s12"/> - </state> - - <state id="s12"> - <transition event="internalEvent4" conf:targetpass=""/> - </state> - -</state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test422.txml b/test/samples/w3c/txml/test422.txml deleted file mode 100644 index 2e830d9..0000000 --- a/test/samples/w3c/txml/test422.txml +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> -<!-- Test that at the end of a macrostep, the processor executes all invokes in states -that have been entered and not exited during the step. (The invokes are supposed to be executed -in document order, but we can test that since each invocation is separate and they may take -different amounts to time to start up.) In this case, there are three invoke statements, -in states s1, s11 and s12. Each invoked process returns an event named after its parent state. -The invokes in s1 and s12 should execute, but not the one -in s11. So we should receive invokeS1, invokeS12, but not invokeS12. Furthermore, when the timeout fires, var1 should equal 2.--> - -<scxml version="1.0" initial="s1" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> - </datamodel> - <state id="s1" initial="s11"> - <onentry> - <send event="timeout" delay="5s"/> - </onentry> - <transition event="invokeS1 invokeS12"> - <conf:incrementID id="1"/> - </transition> - <transition event="invokeS11" conf:targetfail=""/> - - <transition event="timeout" conf:idVal="1=2" conf:targetpass=""/> - <transition event="timeout" conf:targetfail=""/> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="invokeS1"/> - </onentry> - <transition target="subFinal0"/> - </state> - <final id="subFinal0"/> - </scxml> - </content> - </invoke> - - <state id="s11"> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub1"> - <onentry> - <send target="#_parent" event="invokeS11"/> - </onentry> - <transition target="subFinal1"/> - </state> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition target="s12"/> - </state> - <state id="s12"> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub2" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <state id="sub2"> - <onentry> - <send target="#_parent" event="invokeS12"/> - </onentry> - <transition target="subFinal2"/> - </state> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - </state> - </state> - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test423.txml b/test/samples/w3c/txml/test423.txml deleted file mode 100644 index fd64587..0000000 --- a/test/samples/w3c/txml/test423.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we keep pulling external events off the queue till we find one that matches a transition. --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - <state id="s0"> - <onentry> - <send event="externalEvent1"/> - <send event="externalEvent2" delay="1s"/> - <raise event="internalEvent"/> - </onentry> - <!-- in this state we should process only internalEvent --> - <transition event="internalEvent" target="s1"/> - <transition event="*" conf:targetfail=""/> - </state> - - <state id="s1"> - <!-- in this state we ignore externalEvent1 and wait for externalEvent2 --> - <transition event="externalEvent2" conf:targetpass=""/> - <transition event="internalEvent" conf:targetfail=""/> - </state> - - - <conf:pass/> - <conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test487.txml b/test/samples/w3c/txml/test487.txml deleted file mode 100644 index 7210c2b..0000000 --- a/test/samples/w3c/txml/test487.txml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- test illegal assignment. error.execution should be raised. --> - - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:illegalExpr=""/> - </datamodel> - -<state id="s0"> - <onentry> - <raise event="event"/> - </onentry> - - <transition event="error.execution" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test488.txml b/test/samples/w3c/txml/test488.txml deleted file mode 100644 index c0bb5e4..0000000 --- a/test/samples/w3c/txml/test488.txml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal expr in <param> produces error.execution and empty event.data --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" conf:targetfail=""/> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param conf:illegalExpr="" name="someParam"/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" conf:eventdataVal="" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test503.txml b/test/samples/w3c/txml/test503.txml deleted file mode 100644 index d15bb7e..0000000 --- a/test/samples/w3c/txml/test503.txml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that a targetless transition does not exit and reenter its source state --> - -<scxml initial="s1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- how often we have exited s2 --> - <data conf:id="2" conf:expr="0"/> <!-- how often the targetless transition in s2 has been executed --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="s2"/> - </state> - - <state id="s2"> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition event="foo"> - <conf:incrementID id="2"/> - </transition> - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" conf:idVal="2=1" target="s3"/> - <transition event="bar" conf:targetfail=""/> - </state> - - <state id="s3"> - <!-- make sure that s2 was exited only once --> - <transition conf:idVal="1=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test504.txml b/test/samples/w3c/txml/test504.txml deleted file mode 100644 index 62f601b..0000000 --- a/test/samples/w3c/txml/test504.txml +++ /dev/null @@ -1,79 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an external transition exits all states up the the LCCA --> - -<scxml initial="s1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- how often we have exited p --> - <data conf:id="2" conf:expr="0"/> <!-- how often we have exited ps1 --> - <data conf:id="3" conf:expr="0"/> <!-- how often we have exited ps2 --> - <data conf:id="4" conf:expr="0"/> <!-- how often the transition for foo has been taken --> - <data conf:id="5" conf:expr="0"/> <!-- how often we have exited s2 --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="p"/> - </state> - -<state id="s2"> - <onexit> - <conf:incrementID id="5"/> - </onexit> - -<parallel id="p"> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition event="foo" target="ps1"> - <conf:incrementID id="4"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" conf:idVal="4=1" target="s3"/> - <transition event="bar" conf:targetfail=""/> - - <state id="ps1"> - <onexit> - <conf:incrementID id="2"/> - </onexit> - </state> - <state id="ps2"> - <onexit> - <conf:incrementID id="3"/> - </onexit> - </state> -</parallel> -</state> - -<state id="s3"> - <!-- make sure that p was exited twice --> - <transition conf:idVal="1=2" target="s4"/> - <transition conf:targetfail=""/> - </state> - -<state id="s4"> - <!-- make sure that ps1 was exited twice --> - <transition conf:idVal="2=2" target="s5"/> - <transition conf:targetfail=""/> - </state> - -<state id="s5"> - <!-- make sure that ps2 was exited twice --> - <transition conf:idVal="3=2" target="s6"/> - <transition conf:targetfail=""/> - </state> - -<state id="s6"> - <!-- make sure that s1 was exited once --> - <transition conf:idVal="5=1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test505.txml b/test/samples/w3c/txml/test505.txml deleted file mode 100644 index b141186..0000000 --- a/test/samples/w3c/txml/test505.txml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an internal transition does not exit its source state --> - -<scxml initial="s1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- how often we have exited s1 --> - <data conf:id="2" conf:expr="0"/> <!-- how often we have exited s11 --> - <data conf:id="3" conf:expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition event="foo" type="internal" target="s11"> - <conf:incrementID id="3"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" conf:idVal="3=1" target="s2"/> - <transition event="bar" conf:targetfail=""/> - - <state id="s11"> - <onexit> - <conf:incrementID id="2"/> - </onexit> - </state> - </state> - -<state id="s2"> - <!-- make sure that s1 was exited once --> - <transition conf:idVal="1=1" target="s3"/> - <transition conf:targetfail=""/> - </state> - - -<state id="s3"> - <!-- make sure that s11 was exited twice --> - <transition conf:idVal="2=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test506.txml b/test/samples/w3c/txml/test506.txml deleted file mode 100644 index b820ad5..0000000 --- a/test/samples/w3c/txml/test506.txml +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an internal transition whose targets are not proper descendants of its source state -behaves like an external transition --> - -<scxml initial="s1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- how often we have exited s2 --> - <data conf:id="2" conf:expr="0"/> <!-- how often we have exited s21 --> - <data conf:id="3" conf:expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="s2"/> - </state> - -<state id="s2" initial="s21"> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition event="foo" type="internal" target="s2"> - <conf:incrementID id="3"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" conf:idVal="3=1" target="s3"/> - <transition event="bar" conf:targetfail=""/> - - <state id="s21"> - <onexit> - <conf:incrementID id="2"/> - </onexit> - </state> - -</state> - -<state id="s3"> - <!-- make sure that s2 was exited twice --> - <transition conf:idVal="1=2" target="s4"/> - <transition conf:targetfail=""/> - </state> - -<state id="s4"> - <!-- make sure that s21 was exited twice --> - <transition conf:idVal="2=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test521.txml b/test/samples/w3c/txml/test521.txml deleted file mode 100644 index 75743ef..0000000 --- a/test/samples/w3c/txml/test521.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor raises error.communication if it cannot dispatch the event. -(To create an undispatchable event, we choose a non-existent session as target). If it raises -the error event, we succeed. Otherwise we eventually timeout and fail. --> - - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <!-- should cause an error --> - <send conf:unreachableTarget="" event="event2"/> - <!-- this will get added to the external event queue after the error has been raised --> - <send event="timeout"/> - </onentry> - - <!-- once we've entered the state, we should check for internal events first --> - <transition event="error.communication" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test525.txml b/test/samples/w3c/txml/test525.txml deleted file mode 100644 index 4b367eb..0000000 --- a/test/samples/w3c/txml/test525.txml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that <foreach> does a shallow copy, so that modifying the array does not change -the iteration behavior. --> - - -<scxml conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1"> - <conf:array123/> - </data> - <data conf:id="2" conf:expr="0"/> <!-- counts the number of iterations --> - </datamodel> - -<state id="s0"> - <onentry> - <foreach conf:item="3" conf:arrayVar="1"> - <conf:extendArray id="1"/> - <conf:incrementID id="2"/> - </foreach> - </onentry> - - <transition conf:idVal="2=3" conf:targetpass=""/> - <transition conf:targetfail=""/> -</state> - - - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test527.txml b/test/samples/w3c/txml/test527.txml deleted file mode 100644 index 80894a7..0000000 --- a/test/samples/w3c/txml/test527.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- simple test that 'expr' works with <content> --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" conf:eventdataVal="foo" conf:targetpass=""> - </transition> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content conf:quoteExpr="foo"/> - </donedata> - </final> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test528.txml b/test/samples/w3c/txml/test528.txml deleted file mode 100644 index 69b7bb2..0000000 --- a/test/samples/w3c/txml/test528.txml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal 'expr' produces error.execution and empty event.data --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" conf:targetfail=""/> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content conf:illegalExpr=""/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" conf:emptyEventData="" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test529.txml b/test/samples/w3c/txml/test529.txml deleted file mode 100644 index 6a6656c..0000000 --- a/test/samples/w3c/txml/test529.txml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- simple test that children workn with <content> --> - -<scxml version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" conf:datamodel="" initial="s0"> - - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" conf:eventdataVal="21" conf:targetpass=""> - </transition> - - <transition event="done.state.s0" conf:targetfail=""> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content>21</content> - </donedata> - </final> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test530.txml b/test/samples/w3c/txml/test530.txml deleted file mode 100644 index d64a8d8..0000000 --- a/test/samples/w3c/txml/test530.txml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that <content> child is evaluated when <invoke> is. Var1 is initialized -with an integer value, then set to an scxml script in the onentry to s0. If <content> -is evaluated at the right time, we should get invoke.done, otherwise an error --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" conf:expr="1"/> - </datamodel> - - <state id="s0"> - <onentry> - <assign conf:location="1"> - <scxml version="1.0"><final/></scxml> - </assign> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content conf:varChildExpr="1"/> - </invoke> - - <transition event="done.invoke" conf:targetpass=""/> - <transition event="*" conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - </scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test533.txml b/test/samples/w3c/txml/test533.txml deleted file mode 100644 index 7a6c82a..0000000 --- a/test/samples/w3c/txml/test533.txml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that an internal transition whose source state is not compound does exit its source state --> - -<scxml initial="s1" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> -<datamodel> - <data conf:id="1" conf:expr="0"/> <!-- how often we have exited p --> - <data conf:id="2" conf:expr="0"/> <!-- how often we have exited ps1 --> - <data conf:id="3" conf:expr="0"/> <!-- how often we have exited ps2 --> - <data conf:id="4" conf:expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="p"/> - </state> - -<parallel id="p"> - <onexit> - <conf:incrementID id="1"/> - </onexit> - <transition event="foo" type="internal" target="ps1"> - <conf:incrementID id="4"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" conf:idVal="4=1" target="s2"/> - <transition event="bar" conf:targetfail=""/> - - <state id="ps1"> - <onexit> - <conf:incrementID id="2"/> - </onexit> - </state> - <state id="ps2"> - <onexit> - <conf:incrementID id="3"/> - </onexit> - </state> -</parallel> - -<state id="s2"> - <!-- make sure that p was exited twice --> - <transition conf:idVal="1=2" target="s3"/> - <transition conf:targetfail=""/> - </state> - -<state id="s3"> - <!-- make sure that ps1 was exited twice --> - <transition conf:idVal="2=2" target="s4"/> - <transition conf:targetfail=""/> - </state> - -<state id="s4"> - <!-- make sure that ps2 was exited twice --> - <transition conf:idVal="3=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test550.txml b/test/samples/w3c/txml/test550.txml deleted file mode 100644 index 89f55a7..0000000 --- a/test/samples/w3c/txml/test550.txml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that expr can be used to assign a value to a var. This test uses early binding --> - -<scxml initial="s0" version="1.0" conf:datamodel="" binding="early" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - <state id="s0"> - - <transition conf:idVal="1=2" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <state id="s1"> - <datamodel> - <data conf:id="1" conf:expr="2"/> - </datamodel> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test551.txml b/test/samples/w3c/txml/test551.txml deleted file mode 100644 index 45c6bf8..0000000 --- a/test/samples/w3c/txml/test551.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that inline content can be used to assign a value to a var. --> - -<scxml initial="s0" version="1.0" binding="early" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - - <state id="s0"> - - <transition conf:isBound="1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - -<state id="s1"> - <datamodel> - <data conf:id="1"> - <conf:array123/> - </data> - </datamodel> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test552.txml b/test/samples/w3c/txml/test552.txml deleted file mode 100644 index 9489b3e..0000000 --- a/test/samples/w3c/txml/test552.txml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> - -<!-- test that src content can be used to assign a value to a var. Edit -test552.txt to have a value that's legal for the datamodel in question --> - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <datamodel> - <data conf:id="1" src="file:test552.txt"/> - </datamodel> - - <state id="s0"> - - <transition conf:isBound="1" conf:targetpass=""/> - <transition conf:targetfail=""/> - </state> - - <conf:pass/> - <conf:fail/> - - - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test553.txml b/test/samples/w3c/txml/test553.txml deleted file mode 100644 index 322d4bb..0000000 --- a/test/samples/w3c/txml/test553.txml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor does not dispatch the event if evaluation -of <send>'s args causes an error.. --> - - -<scxml initial="s0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <!-- timeout event --> - <send event="timeout" delay="3s"/> - <!-- include a non-existing var in the namelist --> - <send event="event1" conf:namelist="2"/> - </onentry> - - <!-- if we get the timeout before event1, we assume that event1 hasn't been sent - We ignore the error event here because this assertion doesn't mention it --> - <transition event="timeout" conf:targetpass=""/> - <transition event="event1" conf:targetfail=""/> - </state> - - -<conf:pass/> -<conf:fail/> - -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test554.txml b/test/samples/w3c/txml/test554.txml deleted file mode 100644 index d9ad55b..0000000 --- a/test/samples/w3c/txml/test554.txml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- test that if the evaluation of <invoke>'s args causes an error, the -invocation is cancelled. In this test, that means that we don't get done.invoke -before the timer goes off. --> - - -<scxml initial="s0" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <onentry> - <send event="timer" delay="2s"/> - </onentry> - - <!-- namelist references an undeclared variable --> - <invoke type="http://www.w3.org/TR/scxml/" conf:namelist="2"> - <content> - <scxml initial="subFinal" version="1.0" conf:datamodel="" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="timer" conf:targetpass=""/> - <transition event="done.invoke" conf:targetfail=""/> - </state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test570.txml b/test/samples/w3c/txml/test570.txml deleted file mode 100644 index 6584d9a..0000000 --- a/test/samples/w3c/txml/test570.txml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?>
-
-<!-- test that we generate done.state.id when all a parallel state's children are in final states -->
-
-<scxml initial="p0" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance">
- <datamodel>
- <data conf:id="1" conf:expr="0"/>
- </datamodel>
-<parallel id="p0">
- <onentry>
- <send event="timeout" delay="2s"/>
- <raise event="e1"/>
- <raise event="e2"/>
- </onentry>
- <!-- record that we get the first done event -->
- <transition event="done.state.p0s1">
- <assign conf:location="1" conf:expr="1"/>
- </transition>
- <!-- we should get the second done event before done.state.p0 -->
- <transition event="done.state.p0s2" target="s1"/>
- <transition event="timeout" conf:targetfail=""/>
-
-
- <state id="p0s1" initial="p0s11">
- <state id="p0s11">
- <transition event="e1" target="p0s1final"/>
- </state>
- <final id="p0s1final"/>
- </state>
-
- <state id="p0s2" initial="p0s21">
- <state id="p0s21">
- <transition event="e2" target="p0s2final"/>
- </state>
- <final id="p0s2final"/>
- </state>
-
- </parallel>
-
- <state id="s1">
- <!-- if we get done.state.p0, success -->
- <transition event="done.state.p0" conf:idVal="1=1" conf:targetpass=""/>
- <transition event="*" conf:targetfail=""/>
- </state>
-
- <conf:pass/>
- <conf:fail/>
-
-</scxml>
\ No newline at end of file diff --git a/test/samples/w3c/txml/test576.txml b/test/samples/w3c/txml/test576.txml deleted file mode 100644 index 4c4b34a..0000000 --- a/test/samples/w3c/txml/test576.txml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the 'initial' value of scxml is respected. We set the value to deeply nested non-default parallel siblings and -test that both are entered. --> - - -<scxml initial="s11p112 s11p122" conf:datamodel="" version="1.0" xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance"> - - -<state id="s0"> - <transition conf:targetfail=""/> -</state> - -<state id="s1"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" conf:targetfail=""/> - <state id="s11" initial="s111"> - <state id="s111"/> - <parallel id="s11p1"> - <state id="s11p11" initial="s11p111"> - <state id="s11p111"/> - <state id="s11p112"> - <onentry> - <raise event="In-s11p112"/> - </onentry> - </state> - </state> - <state id="s11p12" initial="s11p121"> - <state id="s11p121"/> - <state id="s11p122"> - <transition event="In-s11p112" conf:targetpass=""/> - </state> - </state> - </parallel> - </state> -</state> - -<conf:pass/> -<conf:fail/> -</scxml>
\ No newline at end of file diff --git a/test/scxml-test-framework/.gitignore b/test/scxml-test-framework/.gitignore deleted file mode 100644 index 2837506..0000000 --- a/test/scxml-test-framework/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.sw* -node_modules diff --git a/test/scxml-test-framework/LICENSE.txt b/test/scxml-test-framework/LICENSE.txt deleted file mode 100644 index 261eeb9..0000000 --- a/test/scxml-test-framework/LICENSE.txt +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/test/scxml-test-framework/README.md b/test/scxml-test-framework/README.md deleted file mode 100644 index a4d4ad7..0000000 --- a/test/scxml-test-framework/README.md +++ /dev/null @@ -1,164 +0,0 @@ -Overview -======== - -The SCXML Test Framework project has two main purposes: - -1. To collect test cases to run against SCXML implementations. -2. To implement a generic test runner client for a client-server, HTTP- and JSON-based SCXML testing protocol. By separating out the client test runner from the SCXML interpreter on the server, it should be possible to test various SCXML implementations in a language-agnostic way. - - -SCXML Test Cases -=============== - -Each SCXML test case comprises a pair of documents: - -- an SCXML document -- a JSON "test script", which defines events to send into the state machine, and the expected basic state machine configuration after processing each event - - -JSON Test Script ----------------- - -See test [basic/basic1.json](scxml-test-framework/blob/master/test/basic/basic1.json) for an example of the JSON test script format: - -```json -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} -``` - -This test script indicates that after SCXML document [basic/basic1.scxml](scxml-test-framework/blob/master/test/basic/basic1.scxml) is loaded into the SCXML interpreter, the expected initial configuration of the state machine will be a single state with id "a". Next, an event with name "t" and no data will be dispatched on the state machine, and the resulting state machine configuration will be a single state with id "b". - -Note that the "initialConfiguration" and "nextConfiguration" properties should only contain the ids of expected *basic* states, which is to say "initialConfiguration" and "nextConfiguration" specify a "basic configuration", or a configuration of basic states. As a "full configuration", or a configuration composed of both basic and non-basic states, can be derived from a basic configuration, specifying only basic configurations in the test script can be done without leading to a loss of safety or generality. - -Also note that the format of the test script assumes that each event dispatched on the state machine will trigger a single macrostep which may update the state configuration. The state machine configuration at the end of the macrostep can then be compared to an expected configuration. The testing framework explicitly does not test the intermediate state changes resulting from individual microsteps. This implies that the SCXML implementation being tested must be able to report the state configuration at the end of a macrostep in order for this testing scheme to be applied. - - -Delay ------ - -The JSON test script may also specify that an event should be sent after a delay. For example, from [delayedSend/send1.json](scxml-test-framework/blob/master/test/delayedSend/send1.json): - -```json -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b"] - }, - { - "after" : 100, - "event" : { "name" : "t2" }, - "nextConfiguration" : ["d"] - } - ] -} -``` - -This test says that after SCXML document [delayedSend/send1.scxml](scxml-test-framework/blob/master/test/delayedSend/send1.scxml) is loaded, the initial configuration will contain only the state with id "a". After dispatching event "t1" on the loaded SCXML session, the next configuration will contain only state with id "b". The test runner will then wait 100 milliseconds, and subsequently dispatch event "t2" on the loaded SCXML session. The expected next configuration will contain only the state with id "d". - - -Dependency on SCION Semantics ------------------------------ - -The JSON test scripts included in this project assume a particular Statecharts semantics will be implemented by the SCXML interpreter. These semantics are currently those of the SCION project, which are documented [here](https://github.com/jbeard4/SCION/wiki/Scion-Semantics), and are not the same as the semantics specified by the Step Algorithm in the SCXML specification. The reason for this is documented [here](https://github.com/jbeard4/SCION/wiki/SCION-vs.-SCXML-Comparison). A desirable feature for this project would be to allow the test scripts to be parameterizable for different Statecharts semantics. For now the best approach to allow for alternative semantics is to fork this project and rewrite the JSON test scripts as needed. - - -Test Runner Client -================== - -The SCXML Test Framework project includes a test runner client, written in JavaScript for node.js, which implements the client side of an HTTP- and JSON-based SCXML testing protocol. The SCXML interpreter implementation to be tested runs on an HTTP server, which the SCXML interpreter project should provide. This should allow various SCXML implementations to be tested in a language-agnostic way. - -The test runner client can run tests sequentially or in parallel. It will exit when all tests have completed, and its exit status will be the number of tests failed or errored; thus, if all tests pass, the return status will be 0. - - -Installation ------------- - -The SCXML Test Framework can be installed through npm, which is bundled with node.js: - - npm install scxml-test-framework - -Or: - - npm install git://github.com/jbeard4/scxml-test-framework.git - - -Usage ------ - -To run it: - - node scxml-test-framework [--test-server-url url] [--parallel] [path/to/test1.scxml [path/to/test2.scxml ...]] - -For example, to run the client on all tests included in this project in parallel against the SCXML test server running on localhost:9000 (in the bash shell): - - node scxml-test-framework --test-server-url localhost:9000 --parallel test/*/*.scxml - -Note that each SCXML document specified should have a JSON test script in the same directory, with the same basename and a ".json" extension. This is already done for the tests included with this project. - -Testing Protocol ----------------- - -A test case involves the following sequence of events: - -1. The client selects a test case, and sends the server a "load" event and a URL pointing to the associated SCXML document (the test client is also running a simple HTTP file server, and so is able to serve this document). -2. The server receives request to load the SCXML document, downloads the document via an HTTP GET request, and creates a new SCXML session from the document. The server also generates a token that can be used to map subsequent client requests back to the newly-created SCXML session. The server then returns initial configuration of the SCXML session, and the generated token, to the client on the HTTP response. -3. The client receives the server response, and compares the returned initial configuration to the expected initial configuration specified in the test script. -4. For each event and expected configuration in JSON test script: - 1. The client sends event to server. Each event is sent along with SCXML session token. - 2. The server receives the event and token, and uses the token to retrieve SCXML session. The server then dispatches the received event on the SCXML session, and returns the new SCXML session configuration to the client on the HTTP response. - 3. The client receives the new configuration on the HTTP response and compares it to the expected configuration. If the configuration from the server matches the expected configuration, then the client will continue sending events; otherwise, the test fails. - - -The use of tokens is needed because the client may run tests in parallel, rather than sequentially, which would require multiple SCXML sessions to be loaded on the server simultaneously, and the token is thus needed to distinguish them. - - -Here is an example of the JSON sent over the wire when running test [basic/basic1.scxml](scxml-test-framework/blob/master/test/basic/basic1.scxml): - -Client request to load statechart. - -```json - { - "load":"http://localhost:9999/test/basic/basic1.scxml" - } -``` - -Server response with token and initial configuration - -```json - { - "sessionToken" : 1, - "nextConfiguration" : ["a"] - } -``` - -Client request to send event to statechart associated with token 1 - -```json - { - "event" : { "name" : "t" }, - "sessionToken" : 1 - } -``` - -Server response with next state configuration - -```json - { - "nextConfiguration" : ["b"] - } -``` - -Server Implementation --------------------- - -An example of an SCXML test server implementation can be found in the SCION project [here](https://github.com/jbeard4/SCION/tree/master/test). - diff --git a/test/scxml-test-framework/lib/test-client.js b/test/scxml-test-framework/lib/test-client.js deleted file mode 100644 index ed79e14..0000000 --- a/test/scxml-test-framework/lib/test-client.js +++ /dev/null @@ -1,174 +0,0 @@ -//specify on the command-line tests to run...scxml files? - -//read tests from filesystem - -//run in two modes: parallel and serial - -//specify test-server to communicate with - -//client-server protocol: -//send sc to load; initial configuration returned in the response, along with id token. compare -//send event and id token; return new configuration; compare -//when done, send "done" event so server can optionally clean up. - -//do the simplest thing first: run sequentially - -var fs = require('fs'), - path = require('path'), - _ = require('underscore'), - request = require('request'), - assert = require('assert'), - nopt = require('nopt'), - Static = require('node-static'), - http = require('http'), - urlModule = require('url'), - pathModule = require('path'), - knownOpts = { - "parallel" : Boolean, - "test-server-url" : String, - "file-server-port" : Number, - "file-server-host" : String - }, - shortHands = { - "p" : "--parallel", - "t" : "--test-server-url", - "f" : "--file-server-port", - "h" : "--file-server-host" - }, - parsed = nopt(knownOpts, shortHands); - -var fileServerPort = parsed['file-server-port'] || 9999, - fileServerHost = parsed['file-server-host'] || 'localhost'; - -var cwd = process.cwd(); - -//start serving files -var file = new Static.Server(cwd); -var fileServer = http.createServer(function (request, response) { - request.addListener('end', function () { - file.serve(request, response); - }); -}); -fileServer.listen(fileServerPort); -console.log('File server listing on ',fileServerPort); - -//run tests -var url = parsed["test-server-url"] || "http://localhost:42000/"; -var parallel = parsed.parallel; -var scxmlTestFiles = parsed.argv.remain; - -//TODO: if scxmlTestFiles is empty, get all files ../test/*/*.scxml - -var testJson = scxmlTestFiles.map(function(s){return path.join(path.dirname(s),path.basename(s,'.scxml') + '.json');}). - map(function(f){return fs.readFileSync(f,'utf8');}).map(JSON.parse); -var testPairs = _.zip(scxmlTestFiles,scxmlTestFiles,testJson); - -var testsPassed = [], testsFailed = [], testsErrored = []; - -function testPair(pair,done){ - var testName = pair[0], scxml = pair[1], testJson = pair[2], sessionToken, event; - - function handleResponse(error, response, body){ - if(error || response.statusCode !== 200){ - console.error("Error in response",error,body); - testsErrored.push(testName); - done(); - return; - } - console.error("response",error,body); - - try{ - assert.deepEqual( - body.nextConfiguration.sort(), - ( ((typeof sessionToken !== 'undefined') && event) ? event.nextConfiguration : testJson.initialConfiguration).sort()); - }catch(e){ - console.error(e); - testsFailed.push(testName); - done(); - return; - } - - if((typeof body.sessionToken !== 'undefined') && (typeof sessionToken === 'undefined')){ - sessionToken = body.sessionToken; //we send this along with all subsequent requests - } - - sendEvent(); - } - - //send scxml - var loadUrl = urlModule.format({ - protocol : 'http:', - hostname : fileServerHost, - port:fileServerPort, - pathname : scxml - }); - console.log("loading",testName,loadUrl); - request.post( { - url : url, - json : { - load : loadUrl - } - }, handleResponse); - - //send events until there are no more events - function sendEvent(){ - event = testJson.events.shift(); - if(event){ - function doSend(){ - console.log("sending event",event.event); - request.post( - { - url : url, - json : { - event : event.event, - sessionToken : sessionToken - } - }, - handleResponse); - } - - if(event.after){ - console.log("waiting to send",event.after); - setTimeout(doSend,event.after); - }else{ - doSend(); - } - }else{ - console.log("done with test",testName); - testsPassed.push(testName); - done(); - } - } -} - -function complete(){ - fileServer.close(); //stop serving files - //print summary - //TODO: optionally disable - console.log("SUMMARY"); - console.log("Tests passed",testsPassed); - console.log("Tests failed",testsFailed); - console.log("Tests errored",testsErrored); - process.exit(testsFailed.length + testsErrored.length); -} - -if(parallel){ - //run in parallel - function done(){ - if((testsPassed.length + testsFailed.length + testsErrored.length) === scxmlTestFiles.length) complete(); - } - testPairs.forEach(function(pair){testPair(pair,done);}); -}else{ - //run sequentially - (function(pair){ - if(pair){ - var f = arguments.callee; - var nextStep = function(){ f(testPairs.pop()); }; - testPair(pair,nextStep); - }else{ - //we're done - complete(); - } - })(testPairs.pop()); -} - diff --git a/test/scxml-test-framework/package.json b/test/scxml-test-framework/package.json deleted file mode 100644 index 1a9a6e2..0000000 --- a/test/scxml-test-framework/package.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "name": "scxml-test-framework", - "version": "0.0.1", - "description": "A set of SCXML tests, and an HTTP client test runner for testing against SCXML HTTP test servers.", - "keywords": [ - "scxml", - "statecharts", - "w3c", - "javascript" - ], - "maintainers": [{ - "name": "Jacob Beard", - "email": "jbeard4@cs.mcgill.ca", - "url": "http://echo-flow.com" - }], - "bugs": { - "email": "jbeard4@cs.mcgill.ca", - "url": "https://github.com/jbeard4/scxml-test-framework/issues" - }, - "licenses": [ - { - "type": "Apache-2.0", - "url": "https://github.com/jbeard4/scxml-test-framework/blob/master/LICENSE.txt" - } - ], - "repositories": [ - { - "type": "git", - "url": "git://github.com/jbeard4/scxml-test-framework.git" - } - ], - "dependencies": { - "request" : "*", - "underscore" : "*", - "nopt" : "*", - "node-static" : "*" - }, - "engines" : { "node" : ">=0.4.7" }, - "main": "./lib/test-client" -} diff --git a/test/scxml-test-framework/test/actionSend/send1.json b/test/scxml-test-framework/test/actionSend/send1.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/actionSend/send1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/actionSend/send1.scxml b/test/scxml-test-framework/test/actionSend/send1.scxml deleted file mode 100644 index 5c62852..0000000 --- a/test/scxml-test-framework/test/actionSend/send1.scxml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"> - <raise event="s"/> - </transition> - </state> - - <state id="b"> - <transition target="c" event="s"/> - </state> - - <state id="c"> - </state> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/actionSend/send2.json b/test/scxml-test-framework/test/actionSend/send2.json deleted file mode 100644 index 6831c27..0000000 --- a/test/scxml-test-framework/test/actionSend/send2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/actionSend/send2.scxml b/test/scxml-test-framework/test/actionSend/send2.scxml deleted file mode 100644 index 6eb8dda..0000000 --- a/test/scxml-test-framework/test/actionSend/send2.scxml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <onexit> - <raise event="s"/> - </onexit> - - <transition target="b" event="t"> - </transition> - </state> - - <state id="b"> - <transition target="c" event="s"/> - </state> - - <state id="c"> - </state> - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send3.json b/test/scxml-test-framework/test/actionSend/send3.json deleted file mode 100644 index a61d05d..0000000 --- a/test/scxml-test-framework/test/actionSend/send3.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send3.scxml b/test/scxml-test-framework/test/actionSend/send3.scxml deleted file mode 100644 index c7237cf..0000000 --- a/test/scxml-test-framework/test/actionSend/send3.scxml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"> - </transition> - </state> - - <state id="b"> - <onentry> - <raise event="s"/> - </onentry> - - <transition target="c" event="s"/> - </state> - - <state id="c"> - </state> - -</scxml> - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send4.json b/test/scxml-test-framework/test/actionSend/send4.json deleted file mode 100644 index f5f76a3..0000000 --- a/test/scxml-test-framework/test/actionSend/send4.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["d"] - } - ] -} - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send4.scxml b/test/scxml-test-framework/test/actionSend/send4.scxml deleted file mode 100644 index 77ede37..0000000 --- a/test/scxml-test-framework/test/actionSend/send4.scxml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This is a test to illustrate the event lifeline. In c, event "s" should no longer be in the event queue, as we are using Next Small Step semantics, so we should end up in d. This would not be true if we were using Remainder semantics. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"> - </transition> - </state> - - <state id="b"> - <onentry> - <raise event="s"/> - </onentry> - - <transition target="c" event="s"/> - <transition target="f1"/> - </state> - - <state id="c"> - <transition target="f2" event="s"/> - <transition target="d"/> - </state> - - <state id="f1"> - </state> - - <state id="d"> - </state> - - <state id="f2"> - </state> - -</scxml> diff --git a/test/scxml-test-framework/test/actionSend/send5.json b/test/scxml-test-framework/test/actionSend/send5.json deleted file mode 100644 index 60a56b6..0000000 --- a/test/scxml-test-framework/test/actionSend/send5.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["d"] - } - ] -} - - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send5.scxml b/test/scxml-test-framework/test/actionSend/send5.scxml deleted file mode 100644 index 9e8a450..0000000 --- a/test/scxml-test-framework/test/actionSend/send5.scxml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This is a test to illustrate the event lifeline, and how multiple events are handled. The whole set of triggered events will be dequeued from the inner event queue in the next small step. This is different from scxml, where only one event will be dequeued at a time in the next small step. So, SCXML semantics would lead to f2, whereas our semantics would lead to d. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"> - </transition> - </state> - - <state id="b"> - <onentry> - <raise event="s"/> - <raise event="r"/> - </onentry> - - <transition target="c" event="s"/> - <transition target="f1"/> - </state> - - <state id="c"> - <transition target="f2" event="r"/> - <transition target="d"/> - </state> - - <state id="f1"> - </state> - - <state id="d"> - </state> - - <state id="f2"> - </state> - -</scxml> - diff --git a/test/scxml-test-framework/test/actionSend/send6.json b/test/scxml-test-framework/test/actionSend/send6.json deleted file mode 100644 index abb5069..0000000 --- a/test/scxml-test-framework/test/actionSend/send6.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["d"] - } - ] -} - - - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send6.scxml b/test/scxml-test-framework/test/actionSend/send6.scxml deleted file mode 100644 index bb77351..0000000 --- a/test/scxml-test-framework/test/actionSend/send6.scxml +++ /dev/null @@ -1,57 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This is a quick followup to send5.json, to show that order in the event set does not matter. Transitions with events r and s are switched. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0" > - - <state id="a"> - <transition target="b" event="t"> - </transition> - </state> - - <state id="b"> - <onentry> - <raise event="s"/> - <raise event="r"/> - </onentry> - - <transition target="c" event="r"/> - <transition target="f1"/> - </state> - - <state id="c"> - <transition target="f2" event="s"/> - <transition target="d"/> - </state> - - <state id="f1"> - </state> - - <state id="d"> - </state> - - <state id="f2"> - </state> - -</scxml> - - diff --git a/test/scxml-test-framework/test/actionSend/send7.json b/test/scxml-test-framework/test/actionSend/send7.json deleted file mode 100644 index 7e334b0..0000000 --- a/test/scxml-test-framework/test/actionSend/send7.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b3"] - } - ] -} - - - - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send7.scxml b/test/scxml-test-framework/test/actionSend/send7.scxml deleted file mode 100644 index 5e7dffd..0000000 --- a/test/scxml-test-framework/test/actionSend/send7.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - Illustrates one of the edge cases of these semantics. Because initial transition will be taken in its own small step, triggered event "s" will be "lost" - not availble in the next small step from b1. Will therefore end up in b3. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"> - <raise event="s"/> - </transition> - </state> - - <state id="b" initial="b1"> - <state id="b1"> - <transition event="s" target="b2"/> - <transition target="b3"/> - </state> - - <state id="b2"> - </state> - - <state id="b3"> - </state> - </state> -</scxml> - - - diff --git a/test/scxml-test-framework/test/actionSend/send8.json b/test/scxml-test-framework/test/actionSend/send8.json deleted file mode 100644 index 8b988bf..0000000 --- a/test/scxml-test-framework/test/actionSend/send8.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b2"] - } - ] -} - - - - - - - - - - diff --git a/test/scxml-test-framework/test/actionSend/send8.scxml b/test/scxml-test-framework/test/actionSend/send8.scxml deleted file mode 100644 index 2484433..0000000 --- a/test/scxml-test-framework/test/actionSend/send8.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - Illustrates one of the edge cases of these semantics. Followup to send7. If we target, not the outer composite state, but the inner state directly, the event will be available in the next small step. This is an example of the way in which these semantics break the synchrony hypthosesis. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="a" - version="1.0"> - - <state id="a"> - <transition target="b1" event="t"> - <raise event="s"/> - </transition> - </state> - - <state id="b" initial="b1"> - <state id="b1"> - <transition event="s" target="b2"/> - <transition target="b3"/> - </state> - - <state id="b2"> - </state> - - <state id="b3"> - </state> - </state> -</scxml> - - - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test0.json b/test/scxml-test-framework/test/assign-current-small-step/test0.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test0.scxml b/test/scxml-test-framework/test/assign-current-small-step/test0.scxml deleted file mode 100644 index 12131d8..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test0.scxml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="a"> - <onentry> - <!-- first -1 will be assigned to the datamodel. then, in the same small-step, this will be overridden by the 99 --> - <assign location="x" expr="-1"/> - <assign location="x" expr="99"/> - </onentry> - - <!-- in order for this transition to be taken, a must be updated immediately, in the same small-step --> - <transition event="t" target="b" cond="x === 99"> - <assign location="x" expr="x + 1"/> - </transition> - </state> - - <state id="b"> - <!-- use regular assignment syntax, assuming datamodel variables are in script scope --> - <onentry> - <script> - x *= 2; - </script> - </onentry> - - <transition target="c" cond="x === 200"/> - <transition target="f"/> - </state> - - <state id="c"/> - - <state id="f"/> - - -</scxml> diff --git a/test/scxml-test-framework/test/assign-current-small-step/test1.json b/test/scxml-test-framework/test/assign-current-small-step/test1.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test1.scxml b/test/scxml-test-framework/test/assign-current-small-step/test1.scxml deleted file mode 100644 index 21e8777..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test1.scxml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This test illustrates how possibly infinite loops may be created. Here, without the counter and the cond, the big-step would never complete. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <assign location="i" expr="0"/> - </transition> - </state> - - <state id="b"> - <transition target="b" cond="i < 100"> - <assign location="i" expr="i + 1"/> - </transition> - <transition target="c" cond="i === 100"/> - </state> - - <state id="c"/> - -</scxml> diff --git a/test/scxml-test-framework/test/assign-current-small-step/test2.json b/test/scxml-test-framework/test/assign-current-small-step/test2.json deleted file mode 100644 index 36628bc..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["e"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test2.scxml b/test/scxml-test-framework/test/assign-current-small-step/test2.scxml deleted file mode 100644 index 05cf13b..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test2.scxml +++ /dev/null @@ -1,65 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This is another test that illustrates how possibly infinite loops may be created. Here, without the counter and the cond, the big-step would never complete. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <assign location="i" expr="0"/> - </transition> - </state> - - <state id="A"> - - <state id="b"> - <transition target="c" cond="i < 100"> - <assign location="i" expr="i + 1"/> - </transition> - </state> - - <state id="c"> - <transition target="b" cond="i < 100"> - <assign location="i" expr="i + 1"/> - </transition> - </state> - - <transition target="d" cond="i === 100"> - <assign location="i" expr="i * 2"/> - </transition> - </state> - - - <state id="d"> - <transition target="e" cond="i === 200"/> - <transition target="f"/> - </state> - - <state id="e"/> - - <state id="f"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test3.json b/test/scxml-test-framework/test/assign-current-small-step/test3.json deleted file mode 100644 index 58b5b14..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test3.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1","c1"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b2","c2"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["d"] - } - ] -} - - - - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test3.scxml b/test/scxml-test-framework/test/assign-current-small-step/test3.scxml deleted file mode 100644 index 203ed43..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test3.scxml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This test demonstrates the way the memory model semantics interact with transition order and concurrency semantics. Here, transitions originating from c1 and b1 will be taken in the same small-step, however i will not be updated until the end of that small step. The transitions actions are evaluated in document order, though, so the outcome is deterministic, so the assignment action on the transition originating from c1 will win. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i"/> - </datamodel> - - <state id="a"> - <transition target="p" event="t1"> - <assign location="i" expr="0"/> - </transition> - </state> - - <parallel id="p"> - - <state id="b" initial="b1"> - <state id="b1"> - <transition event="t2" target="b2"> - <assign location="i" expr="i + 1"/> - </transition> - </state> - - <state id="b2"> - </state> - </state> - - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t2" target="c2"> - <assign location="i" expr="i - 1"/> - </transition> - </state> - - <state id="c2"> - </state> - </state> - - <transition event="t3" target="d" cond="i === 0"/> - <transition event="t3" target="f"/> - </parallel> - - - <state id="d"/> - - <state id="f"/> - -</scxml> - - diff --git a/test/scxml-test-framework/test/assign-current-small-step/test4.json b/test/scxml-test-framework/test/assign-current-small-step/test4.json deleted file mode 100644 index d616eb4..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test4.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} diff --git a/test/scxml-test-framework/test/assign-current-small-step/test4.scxml b/test/scxml-test-framework/test/assign-current-small-step/test4.scxml deleted file mode 100644 index 64a8a8b..0000000 --- a/test/scxml-test-framework/test/assign-current-small-step/test4.scxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="a"> - <onentry> - <assign location="x" expr="2"/> - </onentry> - - <transition event="t" target="b1"/> - </state> - - <state id="b"> - <onentry> - <assign location="x" expr="x * 3"/> - <log expr="'b, x:' + x"/> - </onentry> - - <state id="b1"> - <onentry> - <assign location="x" expr="x * 5"/> - <log expr="'b1, x:' + x"/> - </onentry> - </state> - - <state id="b2"> - <onentry> - <assign location="x" expr="x * 7"/> - <log expr="'b2, x:' + x"/> - </onentry> - </state> - - <transition target="c" cond="x === 30"/> - <transition target="f"/> - </state> - - <state id="c"/> - - <state id="f"/> - -</scxml> diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m0.json b/test/scxml-test-framework/test/atom3-basic-tests/m0.json deleted file mode 100644 index 2121cdd..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m0.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["A"], - "events" : [ - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["B"] - }, - { - "event" : { "name" : "e2" }, - "nextConfiguration" : ["A"] - } - ] -} diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m0.scxml b/test/scxml-test-framework/test/atom3-basic-tests/m0.scxml deleted file mode 100644 index 32026af..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m0.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<ns0:scxml - datamodel="ecmascript" - xmlns:ns0="http://www.w3.org/2005/07/scxml" version="1.0" name="root"> - <ns0:state id="A"> - <ns0:onentry> - <ns0:log expr=""entering A""/> - </ns0:onentry> - <ns0:onexit> - <ns0:log expr=""exiting A""/> - </ns0:onexit> - <ns0:transition target="B" event="e1"> - <ns0:log expr=""doing A->B transition""/> - </ns0:transition> - </ns0:state> - <ns0:state id="B"> - <ns0:transition target="A" event="e2"/> - </ns0:state> -</ns0:scxml> diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m1.json b/test/scxml-test-framework/test/atom3-basic-tests/m1.json deleted file mode 100644 index eb25138..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m1.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "initialConfiguration" : ["A"], - "events" : [ - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["B"] - }, - { - "event" : { "name" : "e2" }, - "nextConfiguration" : ["A"] - } - ] -} - diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m1.scxml b/test/scxml-test-framework/test/atom3-basic-tests/m1.scxml deleted file mode 100644 index 6d8a01f..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m1.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<ns0:scxml - datamodel="ecmascript" - xmlns:ns0="http://www.w3.org/2005/07/scxml" version="1.0" name="root"> - <ns0:state id="A"> - <ns0:onentry> - <ns0:log expr=""entering state A""/> - </ns0:onentry> - <ns0:onexit> - <ns0:log expr=""exiting state A""/> - </ns0:onexit> - <ns0:transition target="B" event="e1"> - <ns0:log expr=""triggered by e1""/> - </ns0:transition> - </ns0:state> - <ns0:state id="B"> - <ns0:transition target="A" event="e2"> - <ns0:log expr=""triggered by e2""/> - </ns0:transition> - </ns0:state> -</ns0:scxml> diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m2.json b/test/scxml-test-framework/test/atom3-basic-tests/m2.json deleted file mode 100644 index 3ac5a1a..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m2.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "initialConfiguration" : ["A"], - "events" : [ - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["B"] - }, - { - "event" : { "name" : "e2" }, - "nextConfiguration" : ["A"] - } - ] -} - - diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m2.scxml b/test/scxml-test-framework/test/atom3-basic-tests/m2.scxml deleted file mode 100644 index eb959b9..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m2.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<ns0:scxml - datamodel="ecmascript" - xmlns:ns0="http://www.w3.org/2005/07/scxml" version="1.0" name="root"> - <ns0:state id="AB"> - <ns0:initial> - <ns0:transition target="A"/> - </ns0:initial> - <ns0:state id="A"> - <ns0:onentry> - <ns0:log expr=""entering state A""/> - </ns0:onentry> - <ns0:onexit> - <ns0:log expr=""exiting state A""/> - </ns0:onexit> - <ns0:transition target="B" event="e1"> - <ns0:log expr=""triggered by e1""/> - </ns0:transition> - </ns0:state> - <ns0:state id="B"> - <ns0:transition target="A" event="e2"> - <ns0:log expr=""triggered by e2""/> - </ns0:transition> - </ns0:state> - </ns0:state> -</ns0:scxml> diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m3.json b/test/scxml-test-framework/test/atom3-basic-tests/m3.json deleted file mode 100644 index 7a3414f..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m3.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "initialConfiguration" : ["A"], - "events" : [ - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["B"] - }, - { - "event" : { "name" : "e2" }, - "nextConfiguration" : ["A"] - }, - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["B"] - }, - { - "event" : { "name" : "e1" }, - "nextConfiguration" : ["C"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/atom3-basic-tests/m3.scxml b/test/scxml-test-framework/test/atom3-basic-tests/m3.scxml deleted file mode 100644 index a2ceb34..0000000 --- a/test/scxml-test-framework/test/atom3-basic-tests/m3.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<ns0:scxml - datamodel="ecmascript" - xmlns:ns0="http://www.w3.org/2005/07/scxml" version="1.0" name="root"> - <ns0:state id="AB"> - <ns0:initial> - <ns0:transition target="A"/> - </ns0:initial> - <ns0:state id="A"> - <ns0:onentry> - <ns0:log expr=""entering state A""/> - </ns0:onentry> - <ns0:onexit> - <ns0:log expr=""exiting state A""/> - </ns0:onexit> - <ns0:transition target="B" event="e1"> - <ns0:log expr=""triggered by e1""/> - </ns0:transition> - </ns0:state> - <ns0:state id="B"> - <ns0:transition target="A" event="e2"> - <ns0:log expr=""triggered by e2""/> - </ns0:transition> - </ns0:state> - <ns0:transition target="C" event="e1"/> - </ns0:state> - <ns0:state id="C"> - <ns0:onentry> - <ns0:log expr=""entering state C""/> - </ns0:onentry> - <ns0:onexit> - <ns0:log expr=""exiting state C""/> - </ns0:onexit> - </ns0:state> -</ns0:scxml> diff --git a/test/scxml-test-framework/test/basic/basic0.json b/test/scxml-test-framework/test/basic/basic0.json deleted file mode 100644 index 0df730d..0000000 --- a/test/scxml-test-framework/test/basic/basic0.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [] -} - - diff --git a/test/scxml-test-framework/test/basic/basic0.scxml b/test/scxml-test-framework/test/basic/basic0.scxml deleted file mode 100644 index 23eff63..0000000 --- a/test/scxml-test-framework/test/basic/basic0.scxml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/basic/basic1.json b/test/scxml-test-framework/test/basic/basic1.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/basic/basic1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/basic/basic1.scxml b/test/scxml-test-framework/test/basic/basic1.scxml deleted file mode 100644 index 304efbc..0000000 --- a/test/scxml-test-framework/test/basic/basic1.scxml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"/> - </state> - - <state id="b"/> - -</scxml> diff --git a/test/scxml-test-framework/test/basic/basic2.json b/test/scxml-test-framework/test/basic/basic2.json deleted file mode 100644 index 9eac7e9..0000000 --- a/test/scxml-test-framework/test/basic/basic2.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/basic/basic2.scxml b/test/scxml-test-framework/test/basic/basic2.scxml deleted file mode 100644 index 68057fd..0000000 --- a/test/scxml-test-framework/test/basic/basic2.scxml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"/> - </state> - - <state id="b"> - <transition target="c" event="t2"/> - </state> - - <state id="c"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/cond-js/TestConditionalTransition.json b/test/scxml-test-framework/test/cond-js/TestConditionalTransition.json deleted file mode 100644 index 2806be0..0000000 --- a/test/scxml-test-framework/test/cond-js/TestConditionalTransition.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "initialConfiguration" : ["b"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["d1"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["e1"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["f2"] - }, - { - "event" : { "name" : "t4" }, - "nextConfiguration" : ["h"] - }, - { - "event" : { "name" : "t5" }, - "nextConfiguration" : ["i"] - }, - { - "event" : { "name" : "t5" }, - "nextConfiguration" : ["last"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/cond-js/TestConditionalTransition.scxml b/test/scxml-test-framework/test/cond-js/TestConditionalTransition.scxml deleted file mode 100644 index 5d541be..0000000 --- a/test/scxml-test-framework/test/cond-js/TestConditionalTransition.scxml +++ /dev/null @@ -1,99 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. ---> -<!-- -This is to test transitions with guard conditions, and multiple -transitions originating from the same state. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - name="root"> - - <!-- default transition --> - <state id="a"> - <transition target="b"/> - </state> - - <!-- regular transition --> - <state id="b"> - <transition target="c" event="t1"/> - </state> - - <!-- two default transitions, first should get priority (based on document order), end in d1 --> - <state id="c"> - <transition target="d1"/> - <transition target="d2"/> - </state> - - <!-- two regular transitions, first should get priority, end in e1 --> - <state id="d1"> - <transition target="e1" event="t2"/> - <transition target="e2" event="t2"/> - </state> - - <state id="d2"/> - - <!-- two transitions with guard conditions; - first has priority, but will fail, so second transition should be taken, - end in f2 --> - <state id="e1"> - <transition target="f1" event="t3" cond="false"/> - <transition target="f2" event="t3" cond="true"/> - </state> - - <state id="e2"/> - - <state id="f1"/> - - <!-- like above, but with three transitions --> - <state id="f2"> - <transition target="g1" event="t4" cond="false"/> - <transition target="g2" event="t4" cond="false"/> - <transition target="g3" event="t4" cond="true"/> - </state> - - <state id="g1"/> - - <state id="g2"/> - - <state id="g3"> - - <initial> - <transition target="h"/> - </initial> - - <!-- this one should pass --> - <state id="h"> - <transition target="i" event="t5" cond="true"/> - </state> - - <!-- this one should not pass, and the outer transition should be taken --> - <state id="i"> - <transition target="j" event="t5" cond="false"/> - </state> - - <state id="j"/> - - <transition target="last" event="t5" cond="true"/> - </state> - - <state id="last"/> -</scxml> - - diff --git a/test/scxml-test-framework/test/cond-js/test0.json b/test/scxml-test-framework/test/cond-js/test0.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/cond-js/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/cond-js/test0.scxml b/test/scxml-test-framework/test/cond-js/test0.scxml deleted file mode 100644 index 696f55b..0000000 --- a/test/scxml-test-framework/test/cond-js/test0.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t" cond="true"/> - </state> - - <state id="b"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/cond-js/test1.json b/test/scxml-test-framework/test/cond-js/test1.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/cond-js/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/cond-js/test1.scxml b/test/scxml-test-framework/test/cond-js/test1.scxml deleted file mode 100644 index 84fe1fa..0000000 --- a/test/scxml-test-framework/test/cond-js/test1.scxml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="f" event="t" cond="false"/> - <transition target="b" event="t" cond="true"/> - </state> - - <state id="b"/> - - <state id="f"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/cond-js/test2.json b/test/scxml-test-framework/test/cond-js/test2.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/cond-js/test2.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/cond-js/test2.scxml b/test/scxml-test-framework/test/cond-js/test2.scxml deleted file mode 100644 index 696f55b..0000000 --- a/test/scxml-test-framework/test/cond-js/test2.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t" cond="true"/> - </state> - - <state id="b"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/default-initial-state/initial1.json b/test/scxml-test-framework/test/default-initial-state/initial1.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/default-initial-state/initial1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/default-initial-state/initial1.scxml b/test/scxml-test-framework/test/default-initial-state/initial1.scxml deleted file mode 100644 index 76634c2..0000000 --- a/test/scxml-test-framework/test/default-initial-state/initial1.scxml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - <!-- notice that no id is specified here --> - - <state id="a"> - <transition target="b" event="t"/> - </state> - - <state id="b"/> - -</scxml> diff --git a/test/scxml-test-framework/test/default-initial-state/initial2.json b/test/scxml-test-framework/test/default-initial-state/initial2.json deleted file mode 100644 index 6c8bd47..0000000 --- a/test/scxml-test-framework/test/default-initial-state/initial2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/default-initial-state/initial2.scxml b/test/scxml-test-framework/test/default-initial-state/initial2.scxml deleted file mode 100644 index 0fc28b9..0000000 --- a/test/scxml-test-framework/test/default-initial-state/initial2.scxml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a"> - <transition target="b" event="t"/> - </state> - - <state id="b"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/delayedSend/send1.json b/test/scxml-test-framework/test/delayedSend/send1.json deleted file mode 100644 index 2c1cda6..0000000 --- a/test/scxml-test-framework/test/delayedSend/send1.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b"] - }, - { - "after" : 100, - "event" : { "name" : "t2" }, - "nextConfiguration" : ["d"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/delayedSend/send1.scxml b/test/scxml-test-framework/test/delayedSend/send1.scxml deleted file mode 100644 index de2d401..0000000 --- a/test/scxml-test-framework/test/delayedSend/send1.scxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t1"> - <send event="s" delay="10ms"/> - </transition> - </state> - - <state id="b"> - <transition target="c" event="s"/> - </state> - - <state id="c"> - <transition target="d" event="t2"/> - </state> - - <state id="d"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/delayedSend/send2.json b/test/scxml-test-framework/test/delayedSend/send2.json deleted file mode 100644 index 2c1cda6..0000000 --- a/test/scxml-test-framework/test/delayedSend/send2.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b"] - }, - { - "after" : 100, - "event" : { "name" : "t2" }, - "nextConfiguration" : ["d"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/delayedSend/send2.scxml b/test/scxml-test-framework/test/delayedSend/send2.scxml deleted file mode 100644 index c16064a..0000000 --- a/test/scxml-test-framework/test/delayedSend/send2.scxml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <onexit> - <send event="s" delay="10ms"/> - </onexit> - - <transition target="b" event="t1"> - </transition> - </state> - - <state id="b"> - <transition target="c" event="s"/> - </state> - - <state id="c"> - <transition target="d" event="t2"/> - </state> - - <state id="d"/> - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/delayedSend/send3.json b/test/scxml-test-framework/test/delayedSend/send3.json deleted file mode 100644 index 2c1cda6..0000000 --- a/test/scxml-test-framework/test/delayedSend/send3.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b"] - }, - { - "after" : 100, - "event" : { "name" : "t2" }, - "nextConfiguration" : ["d"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/delayedSend/send3.scxml b/test/scxml-test-framework/test/delayedSend/send3.scxml deleted file mode 100644 index 6c2fcc9..0000000 --- a/test/scxml-test-framework/test/delayedSend/send3.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t1"> - </transition> - </state> - - <state id="b"> - <onentry> - <send event="s" delay="10ms"/> - </onentry> - - <transition target="c" event="s"/> - </state> - - <state id="c"> - <transition target="d" event="t2"/> - </state> - - <state id="d"/> - -</scxml> - - - - - - diff --git a/test/scxml-test-framework/test/documentOrder/documentOrder0.json b/test/scxml-test-framework/test/documentOrder/documentOrder0.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/documentOrder/documentOrder0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/documentOrder/documentOrder0.scxml b/test/scxml-test-framework/test/documentOrder/documentOrder0.scxml deleted file mode 100644 index 530a981..0000000 --- a/test/scxml-test-framework/test/documentOrder/documentOrder0.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="t"/> - <transition target="c" event="t"/> - </state> - - <state id="b"/> - - <state id="c"/> -</scxml> - - - - diff --git a/test/scxml-test-framework/test/foreach/test1.json b/test/scxml-test-framework/test/foreach/test1.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/foreach/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/foreach/test1.scxml b/test/scxml-test-framework/test/foreach/test1.scxml deleted file mode 100644 index 6b7f87e..0000000 --- a/test/scxml-test-framework/test/foreach/test1.scxml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - This test illustrates how possibly infinite loops may be created. Here, without the counter and the cond, the big-step would never complete. - --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="myArray" expr="[1,3,5,7,9]"/> - <data id="myItem" expr="0"/> - <data id="myIndex" expr="0"/> - <data id="sum" expr="0"/> - <data id="indexSum" expr="0"/> - </datamodel> - - <state id="a"> - <onentry> - <log label="before" expr="[sum,indexSum]"/> - <foreach array="myArray" item="myItem" index="myIndex"> - <assign location="sum" expr="sum + myItem"/> - <assign location="indexSum" expr="indexSum + myIndex"/> - </foreach> - <foreach array="myArray" item="myItem"> - <assign location="sum" expr="sum + myItem"/> - </foreach> - <log label="after" expr="[sum,indexSum]"/> - </onentry> - <transition target="c" event="t" cond="sum === 50 && indexSum === 10"/> - </state> - - <state id="c"/> - -</scxml> diff --git a/test/scxml-test-framework/test/hierarchy+documentOrder/test0.json b/test/scxml-test-framework/test/hierarchy+documentOrder/test0.json deleted file mode 100644 index 116f26c..0000000 --- a/test/scxml-test-framework/test/hierarchy+documentOrder/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/hierarchy+documentOrder/test0.scxml b/test/scxml-test-framework/test/hierarchy+documentOrder/test0.scxml deleted file mode 100644 index 540c944..0000000 --- a/test/scxml-test-framework/test/hierarchy+documentOrder/test0.scxml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <state id="a1"> - <transition target="a2" event="t"/> - <transition target="c" event="t"/> - </state> - - <state id="a2"> - </state> - - <transition target="b" event="t"/> - </state> - - <state id="b"/> - - <state id="c"/> - - -</scxml> - - diff --git a/test/scxml-test-framework/test/hierarchy+documentOrder/test1.json b/test/scxml-test-framework/test/hierarchy+documentOrder/test1.json deleted file mode 100644 index 7fd2206..0000000 --- a/test/scxml-test-framework/test/hierarchy+documentOrder/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/hierarchy+documentOrder/test1.scxml b/test/scxml-test-framework/test/hierarchy+documentOrder/test1.scxml deleted file mode 100644 index 7f29543..0000000 --- a/test/scxml-test-framework/test/hierarchy+documentOrder/test1.scxml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <state id="a1"> - <transition target="b" event="t"/> - <transition target="c" event="t"/> - </state> - - <state id="a2"> - </state> - - <transition target="a2" event="t"/> - </state> - - <state id="b"/> - - <state id="c"/> - - -</scxml> - diff --git a/test/scxml-test-framework/test/hierarchy/hier0.json b/test/scxml-test-framework/test/hierarchy/hier0.json deleted file mode 100644 index 116f26c..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/hierarchy/hier0.scxml b/test/scxml-test-framework/test/hierarchy/hier0.scxml deleted file mode 100644 index dad78a3..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier0.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <state id="a1"> - <transition target="a2" event="t"/> - </state> - - <state id="a2"> - </state> - </state> - - -</scxml> diff --git a/test/scxml-test-framework/test/hierarchy/hier1.json b/test/scxml-test-framework/test/hierarchy/hier1.json deleted file mode 100644 index 116f26c..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/hierarchy/hier1.scxml b/test/scxml-test-framework/test/hierarchy/hier1.scxml deleted file mode 100644 index c4d76ee..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier1.scxml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <state id="a1"> - <transition target="a2" event="t"/> - </state> - - <state id="a2"> - </state> - - <transition target="b" event="t"/> - </state> - - <state id="b"/> - - -</scxml> - diff --git a/test/scxml-test-framework/test/hierarchy/hier2.json b/test/scxml-test-framework/test/hierarchy/hier2.json deleted file mode 100644 index 7fd2206..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier2.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/hierarchy/hier2.scxml b/test/scxml-test-framework/test/hierarchy/hier2.scxml deleted file mode 100644 index d0405f6..0000000 --- a/test/scxml-test-framework/test/hierarchy/hier2.scxml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <state id="a1"> - <transition target="b" event="t"/> - </state> - - <state id="a2"> - </state> - - <transition target="a2" event="t"/> - </state> - - <state id="b"/> - - -</scxml> - - diff --git a/test/scxml-test-framework/test/history/history0.json b/test/scxml-test-framework/test/history/history0.json deleted file mode 100644 index cba3ae5..0000000 --- a/test/scxml-test-framework/test/history/history0.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b3"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b3"] - } - ] -} - - diff --git a/test/scxml-test-framework/test/history/history0.scxml b/test/scxml-test-framework/test/history/history0.scxml deleted file mode 100644 index 0dbd622..0000000 --- a/test/scxml-test-framework/test/history/history0.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a"> - <transition target="h" event="t1"/> - </state> - - <state id="b" initial="b1"> - - <history id="h"> - <transition target="b2"/> - </history> - - <state id="b1"/> - - <state id="b2"> - <transition event="t2" target="b3"/> - </state> - - <state id="b3"> - <transition event="t3" target="a"/> - </state> - </state> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/history/history1.json b/test/scxml-test-framework/test/history/history1.json deleted file mode 100644 index 1dfeb82..0000000 --- a/test/scxml-test-framework/test/history/history1.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1.2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b1.3"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1.3"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/history/history1.scxml b/test/scxml-test-framework/test/history/history1.scxml deleted file mode 100644 index 6d2235f..0000000 --- a/test/scxml-test-framework/test/history/history1.scxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a"> - <transition target="h" event="t1"/> - </state> - - <state id="b" initial="b1"> - - <history id="h" type="deep"> - <transition target="b1.2"/> - </history> - - <state id="b1" initial="b1.1"> - <state id="b1.1"/> - - <state id="b1.2"> - <transition event="t2" target="b1.3"/> - </state> - - <state id="b1.3"> - <transition event="t3" target="a"/> - </state> - </state> - - - </state> - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/history/history2.json b/test/scxml-test-framework/test/history/history2.json deleted file mode 100644 index 4cc3ee4..0000000 --- a/test/scxml-test-framework/test/history/history2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1.2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b1.3"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1.1"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/history/history2.scxml b/test/scxml-test-framework/test/history/history2.scxml deleted file mode 100644 index 2a2ab95..0000000 --- a/test/scxml-test-framework/test/history/history2.scxml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a"> - <transition target="h" event="t1"/> - </state> - - <state id="b" initial="b1"> - - <history id="h" type="shallow"> - <transition target="b1.2"/> - </history> - - <state id="b1" initial="b1.1"> - <state id="b1.1"/> - - <state id="b1.2"> - <transition event="t2" target="b1.3"/> - </state> - - <state id="b1.3"> - <transition event="t3" target="a"/> - </state> - </state> - - - </state> - -</scxml> - - - - - - diff --git a/test/scxml-test-framework/test/history/history3.json b/test/scxml-test-framework/test/history/history3.json deleted file mode 100644 index 4786e3a..0000000 --- a/test/scxml-test-framework/test/history/history3.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1","c1"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b2","c2"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t4" }, - "nextConfiguration" : ["b2","c2"] - } - ] -} - - - - - diff --git a/test/scxml-test-framework/test/history/history3.scxml b/test/scxml-test-framework/test/history/history3.scxml deleted file mode 100644 index 6fd4de1..0000000 --- a/test/scxml-test-framework/test/history/history3.scxml +++ /dev/null @@ -1,59 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - - <state id="a"> - <transition target="p" event="t1"/> - <transition target="h" event="t4"/> - </state> - - <parallel id="p"> - <history id="h" type="deep"> - <transition target="b"/> - </history> - - <state id="b" initial="b1"> - <state id="b1"> - <transition target="b2" event="t2"/> - </state> - - <state id="b2"/> - </state> - - <state id="c" initial="c1"> - <state id="c1"> - <transition target="c2" event="t2"/> - </state> - - <state id="c2"/> - </state> - - <transition target="a" event="t3"/> - </parallel> -</scxml> - - - - - - - diff --git a/test/scxml-test-framework/test/history/history4.json b/test/scxml-test-framework/test/history/history4.json deleted file mode 100644 index e5bbc31..0000000 --- a/test/scxml-test-framework/test/history/history4.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1.1","c1.1"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b1.2","c1.2"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["b2.1","c2.1"] - }, - { - "event" : { "name" : "t4" }, - "nextConfiguration" : ["b2.2","c2.2"] - }, - { - "event" : { "name" : "t5" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t6" }, - "nextConfiguration" : ["b2.2","c2.1"] - }, - { - "event" : { "name" : "t7" }, - "nextConfiguration" : ["b2.2","c2.2"] - }, - { - "event" : { "name" : "t8" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t9" }, - "nextConfiguration" : ["b2.2","c2.2"] - } - ] -} - - - - - - diff --git a/test/scxml-test-framework/test/history/history4.scxml b/test/scxml-test-framework/test/history/history4.scxml deleted file mode 100644 index 4c59e17..0000000 --- a/test/scxml-test-framework/test/history/history4.scxml +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - illustrates both deep and shallow history, working in both AND and OR states ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - - <state id="a"> - <transition target="p" event="t1"/> - <transition target="p" event="t6"/> - <transition target="hp" event="t9"/> - </state> - - <parallel id="p"> - <history id="hp" type="deep"> - <transition target="b"/> - </history> - - <state id="b" initial="hb"> - - <history id="hb" type="deep"> - <transition target="b1"/> - </history> - - <state id="b1" initial="b1.1"> - <state id="b1.1"> - <transition target="b1.2" event="t2"/> - </state> - - <state id="b1.2"> - <transition target="b2" event="t3"/> - </state> - </state> - - <state id="b2" initial="b2.1"> - <state id="b2.1"> - <transition target="b2.2" event="t4"/> - </state> - - <state id="b2.2"> - <transition target="a" event="t5"/> - <transition target="a" event="t8"/> - </state> - </state> - </state> - - <state id="c" initial="hc"> - - <history id="hc" type="shallow"> - <transition target="c1"/> - </history> - - <state id="c1" initial="c1.1"> - <state id="c1.1"> - <transition target="c1.2" event="t2"/> - </state> - - <state id="c1.2"> - <transition target="c2" event="t3"/> - </state> - </state> - - <state id="c2" initial="c2.1"> - <state id="c2.1"> - <transition target="c2.2" event="t4"/> - <transition target="c2.2" event="t7"/> - </state> - - <state id="c2.2"> - </state> - </state> - </state> - </parallel> -</scxml> - - - - - - - - diff --git a/test/scxml-test-framework/test/history/history5.json b/test/scxml-test-framework/test/history/history5.json deleted file mode 100644 index fcd1cb6..0000000 --- a/test/scxml-test-framework/test/history/history5.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "initialConfiguration" : ["i1","j","h","g","f1","k"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["i2","j","h","g","f2","k"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["l"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["i2","j","h","g","f2","k"] - } - - - ] -} diff --git a/test/scxml-test-framework/test/history/history5.scxml b/test/scxml-test-framework/test/history/history5.scxml deleted file mode 100644 index 0b97e26..0000000 --- a/test/scxml-test-framework/test/history/history5.scxml +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -illustrates deep history with many parallel states ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <parallel id="a"> - <history id="ha" type="deep"> - <transition target="b"/> - </history> - - <parallel id="b"> - <parallel id="c"> - <parallel id="d"> - <parallel id="e"> - - <state id="i" initial="i1"> - <state id="i1"> - <transition target="i2" event="t1"/> - </state> - - <state id="i2"> - <transition target="l" event="t2"/> - </state> - </state> - - <state id="j"/> - </parallel> - - <state id="h"/> - </parallel> - - <state id="g"/> - </parallel> - - <state id="f" initial="f1"> - <state id="f1"> - <transition target="f2" event="t1"/> - </state> - - <state id="f2"> - </state> - </state> - </parallel> - - <state id="k"/> - </parallel> - - <state id="l"> - <transition target="ha" event="t3"/> - </state> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/history/history6.json b/test/scxml-test-framework/test/history/history6.json deleted file mode 100644 index ff5c582..0000000 --- a/test/scxml-test-framework/test/history/history6.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b3"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b3"] - }, - { - "event" : { "name" : "t4" }, - "nextConfiguration" : ["success"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/history/history6.scxml b/test/scxml-test-framework/test/history/history6.scxml deleted file mode 100644 index 48cfd9a..0000000 --- a/test/scxml-test-framework/test/history/history6.scxml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <datamodel> - <data id="x" expr="2"/> - </datamodel> - - <state id="a"> - <transition target="h" event="t1"/> - </state> - - <state id="b" initial="b1"> - <onentry> - <assign location="x" expr="x * 3"/> - <log expr="'b, x:' + x"/> - </onentry> - - <history id="h"> - <transition target="b2"/> - </history> - - <state id="b1"/> - - <state id="b2"> - <onentry> - <assign location="x" expr="x * 5"/> - <log expr="'b2, x:' + x"/> - </onentry> - <transition event="t2" target="b3"/> - </state> - - <state id="b3"> - <onentry> - <assign location="x" expr="x * 7"/> - <log expr="'b3, x:' + x"/> - </onentry> - <transition event="t3" target="a"/> - </state> - - <!-- 4410 should be the value of x after the following sequence of enter actions: - a, b, b2, b3, a, b, b3 --> - <transition event="t4" target="success" cond="x === 4410"/> - <!-- we make a special 'really-fail' state because of a particular bug in SCION I am trying to illustrate --> - <transition event="t4" target="really-fail" cond="x === 1470"/> - <!-- for everything else, we just fail --> - <transition event="t4" target="fail"/> - </state> - - <state id="success"/> - - <state id="fail"/> - - <state id="really-fail"/> - -</scxml> diff --git a/test/scxml-test-framework/test/if-else/test0.json b/test/scxml-test-framework/test/if-else/test0.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/if-else/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/if-else/test0.scxml b/test/scxml-test-framework/test/if-else/test0.scxml deleted file mode 100644 index 3dfc1a5..0000000 --- a/test/scxml-test-framework/test/if-else/test0.scxml +++ /dev/null @@ -1,106 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x" expr="0"/> - </datamodel> - - <state id="a"> - <onentry> - <!-- test if --> - <log label="x" expr="x"/> - <if cond="x === 0"> - <assign location="x" expr="10"/> - <elseif cond="x === 10"/> - <assign location="x" expr="20"/> - <else/> - <assign location="x" expr="30"/> - </if> - <log label="x" expr="x"/> - </onentry> - - <transition event="t" target="b" cond="x === 10"> - <assign location="x" expr="x + 1"/> - </transition> - - <onexit> - <!-- test else --> - <log label="x" expr="x"/> - <if cond="x !== 10"> - <assign location="x" expr="x * 3"/> - <else/> - <assign location="x" expr="x * 2"/> - </if> - <log label="x" expr="x"/> - </onexit> - </state> - - <state id="b"> - <onentry> - <!-- test elseif --> - <log label="x" expr="x"/> - <if cond="x === 0"> - <assign location="x" expr="100"/> - <elseif cond="x === 21"/> - <assign location="x" expr="x + 2"/> - <assign location="x" expr="x + 3"/> - <else/> - <assign location="x" expr="200"/> - </if> - - <if cond="x === 26"> - <assign location="x" expr="x + 1"/> - </if> - - <if cond="x === 26"> - <elseif cond="x === 27"/> - <assign location="x" expr="x + 1"/> - <else/> - <assign location="x" expr="x + 10"/> - </if> - - <if cond="x === 28"> - <assign location="x" expr="x + 12"/> - <if cond="x === 40"> - <assign location="x" expr="x + 10"/> - </if> - </if> - - <if cond="x === 50"> - <assign location="x" expr="x + 1"/> - <if cond="x !== 51"> - <else/> - <assign location="x" expr="x + 20"/> - </if> - </if> - - <log label="x" expr="x"/> - </onentry> - - <transition target="c" cond="x === 71"/> - <transition target="f"/> - </state> - - <state id="c"/> - - <state id="f"/> - -</scxml> diff --git a/test/scxml-test-framework/test/in/TestInPredicate.json b/test/scxml-test-framework/test/in/TestInPredicate.json deleted file mode 100644 index 861374e..0000000 --- a/test/scxml-test-framework/test/in/TestInPredicate.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "initialConfiguration" : ["a1","a2"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["b1","a2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["c1","a2"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["d1","a2"] - }, - { - "event" : { "name" : "t4" }, - "nextConfiguration" : ["e1","a2"] - }, - { - "event" : { "name" : "t5" }, - "nextConfiguration" : ["f1","a2"] - }, - { - "event" : { "name" : "t6" }, - "nextConfiguration" : ["g1","b2"] - }, - { - "event" : { "name" : "t7" }, - "nextConfiguration" : ["h1","d2"] - }, - { - "event" : { "name" : "t8" }, - "nextConfiguration" : ["i1","d2"] - }, - { - "event" : { "name" : "t9" }, - "nextConfiguration" : ["j1","e2"] - }, - { - "event" : { "name" : "t10" }, - "nextConfiguration" : ["k1","e2"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/in/TestInPredicate.scxml b/test/scxml-test-framework/test/in/TestInPredicate.scxml deleted file mode 100644 index d89611b..0000000 --- a/test/scxml-test-framework/test/in/TestInPredicate.scxml +++ /dev/null @@ -1,110 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. ---> -<!-- -This is to test the use of the In() predicate. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - initial="p1" - version="1.0"> - - <parallel id="p1"> - - <state id="r1" initial="a1"> - <!-- sanity tests --> - <state id="a1"> - <transition event="t1" target="b1" cond="In('a1')"/> - </state> - - <state id="b1"> - <transition event="t2" target="c1" cond="In('r1')"/> - </state> - - <state id="c1"> - <transition event="t3" target="d1" cond="In('p1')"/> - </state> - - <!-- tests for failure --> - <state id="d1"> - <transition event="t4" target="e1" cond="!In('e2')"/> - </state> - - <state id="e1"> - <transition event="t5" target="f1" cond="!In('c2')"/> - </state> - - <!-- tests for success --> - <state id="f1"> - <transition event="t6" target="g1" cond="In('a2')"> - <raise event="gen1"/> - </transition> - </state> - - <state id="g1"> - <transition event="t7" target="h1" cond="In('b2')"> - <raise event="gen2"/> - </transition> - </state> - - <state id="h1"> - <transition event="t8" target="i1" cond="In('c2')"/> - </state> - - <state id="i1"> - <transition event="t9" target="j1" cond="In('d2')"> - <raise event="gen3"/> - </transition> - </state> - - <state id="j1"> - <transition event="t10" target="k1" cond="In('e2')"/> - </state> - - <state id="k1"/> - - </state> - - <state id="r2" initial="a2"> - <state id="a2"> - <transition event="gen1" target="b2"/> - </state> - - <state id="b2"> - <transition event="gen2" target="c2"/> - </state> - - <state id="c2"> - <initial> - <transition target="d2"/> - </initial> - - <state id="d2"> - <transition event="gen3" target="e2"/> - </state> - - <state id="e2"/> - </state> - </state> - - </parallel> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/internal-transitions/test0.json b/test/scxml-test-framework/test/internal-transitions/test0.json deleted file mode 100644 index 4808030..0000000 --- a/test/scxml-test-framework/test/internal-transitions/test0.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a1"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["a2"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["b"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["c"] - } - ] -} diff --git a/test/scxml-test-framework/test/internal-transitions/test0.scxml b/test/scxml-test-framework/test/internal-transitions/test0.scxml deleted file mode 100644 index f9a620d..0000000 --- a/test/scxml-test-framework/test/internal-transitions/test0.scxml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - datamodel="ecmascript"> - - <datamodel> - <data id="x" expr="0"/> - </datamodel> - - <transition event="*"> - <log label="x" expr="x"/> - </transition> - - <state id="a"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <state id="a1"> - </state> - - <state id="a2"> - <!-- if we had exited and re-entered 'a', then x would be 3. but instead it's 1 --> - <transition target="b" event="t2" cond="x === 1" /> - </state> - - <transition target="a2" event="t1" type="internal" cond="x === 1"/> - </state> - - <state id="b"> - <transition target="c" event="t3" cond="x === 2" /> - </state> - - <state id="c"/> - -</scxml> diff --git a/test/scxml-test-framework/test/internal-transitions/test1.json b/test/scxml-test-framework/test/internal-transitions/test1.json deleted file mode 100644 index d3e59ca..0000000 --- a/test/scxml-test-framework/test/internal-transitions/test1.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "initialConfiguration" : ["a1", "b1"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["a2", "b1"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["c"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["d"] - } - ] -} - diff --git a/test/scxml-test-framework/test/internal-transitions/test1.scxml b/test/scxml-test-framework/test/internal-transitions/test1.scxml deleted file mode 100644 index 81e7cc3..0000000 --- a/test/scxml-test-framework/test/internal-transitions/test1.scxml +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - datamodel="ecmascript"> - - <datamodel> - <data id="x" expr="0"/> - </datamodel> - - <parallel id="p"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <state id="a"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <state id="a1"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - </state> - - <state id="a2"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <!-- exited a1 (3 + 1 = 4), entered a2 (4 + 1 = 5) --> - <transition target="c" event="t2" cond="x === 5"/> - </state> - - <!-- entered p, a, a1 (x = 1 + 1 + 1 = 3) --> - <transition target="a2" event="t1" type="internal" cond="x === 3"/> - </state> - - <state id="b"> - <state id="b1"> - </state> - - <state id="b2"> - </state> - </state> - - </parallel> - - <state id="c"> - <!-- exited a2, a, p (5 + 1 + 1 + 1 = 8) --> - <transition target="d" event="t3" cond="x === 8"/> - </state> - - <state id="d"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/more-parallel/test0.json b/test/scxml-test-framework/test/more-parallel/test0.json deleted file mode 100644 index a316c55..0000000 --- a/test/scxml-test-framework/test/more-parallel/test0.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["a","b"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a","b"] - } - - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test0.scxml b/test/scxml-test-framework/test/more-parallel/test0.scxml deleted file mode 100644 index 19ab416..0000000 --- a/test/scxml-test-framework/test/more-parallel/test0.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - <transition target="a" event="t"/> - </state> - - <state id="b"/> - </parallel> - -</scxml> - - diff --git a/test/scxml-test-framework/test/more-parallel/test1.json b/test/scxml-test-framework/test/more-parallel/test1.json deleted file mode 100644 index 0fb5018..0000000 --- a/test/scxml-test-framework/test/more-parallel/test1.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1","b1"] - } - - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test1.scxml b/test/scxml-test-framework/test/more-parallel/test1.scxml deleted file mode 100644 index 58eee87..0000000 --- a/test/scxml-test-framework/test/more-parallel/test1.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a"/> - - <state id="a1"/> - - <state id="a2"/> - </state> - - <state id="b"> - - <state id="b1"/> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> - - diff --git a/test/scxml-test-framework/test/more-parallel/test10.json b/test/scxml-test-framework/test/more-parallel/test10.json deleted file mode 100644 index b02dc37..0000000 --- a/test/scxml-test-framework/test/more-parallel/test10.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a","b"], - "events" : [ - { - "event" : { "name" : "t1" }, - "nextConfiguration" : ["a","b"] - }, - { - "event" : { "name" : "t2" }, - "nextConfiguration" : ["c"] - }, - { - "event" : { "name" : "t3" }, - "nextConfiguration" : ["d"] - } - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test10.scxml b/test/scxml-test-framework/test/more-parallel/test10.scxml deleted file mode 100644 index 1d6f371..0000000 --- a/test/scxml-test-framework/test/more-parallel/test10.scxml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x" expr="0"/> - </datamodel> - - <parallel id="p"> - <onentry> - <assign location="x" expr="x +1"/> - </onentry> - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <state id="a"> - <onentry> - <assign location="x" expr="x + 1"/> - </onentry> - <onexit> - <assign location="x" expr="x + 1"/> - </onexit> - - <!-- we've entered p, a, so x === 2 here --> - - <transition target="a" event="t1" cond="x === 2"/> - </state> - - <state id="b"/> - - <!-- we've exited and re-entered p, a, so x === 6 here --> - <transition target="c" event="t2" cond="x === 6"/> - </parallel> - - <state id="c"> - <!-- we've exited p, a here, so x === 8 --> - <transition target="d" event="t3" cond="x === 8"/> - </state> - - <state id="d"/> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/more-parallel/test2.json b/test/scxml-test-framework/test/more-parallel/test2.json deleted file mode 100644 index afcef7a..0000000 --- a/test/scxml-test-framework/test/more-parallel/test2.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1","b2"] - } - - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test2.scxml b/test/scxml-test-framework/test/more-parallel/test2.scxml deleted file mode 100644 index 2adbb3b..0000000 --- a/test/scxml-test-framework/test/more-parallel/test2.scxml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a"/> - - <state id="a1"/> - - <state id="a2"/> - </state> - - <state id="b"> - - <state id="b1"> - <transition event="t" target="b2"/> - </state> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> - - - diff --git a/test/scxml-test-framework/test/more-parallel/test3.json b/test/scxml-test-framework/test/more-parallel/test3.json deleted file mode 100644 index bc31df4..0000000 --- a/test/scxml-test-framework/test/more-parallel/test3.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1","b2"] - } - - ] -} - diff --git a/test/scxml-test-framework/test/more-parallel/test3.scxml b/test/scxml-test-framework/test/more-parallel/test3.scxml deleted file mode 100644 index 14d613e..0000000 --- a/test/scxml-test-framework/test/more-parallel/test3.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" > - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a2"/> - - <state id="a1"/> - - <state id="a2"/> - </state> - - <state id="b"> - - <state id="b1"> - <transition event="t" target="b2"/> - </state> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> diff --git a/test/scxml-test-framework/test/more-parallel/test4.json b/test/scxml-test-framework/test/more-parallel/test4.json deleted file mode 100644 index 3f05f83..0000000 --- a/test/scxml-test-framework/test/more-parallel/test4.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1","b1"] - } - - ] -} - - diff --git a/test/scxml-test-framework/test/more-parallel/test4.scxml b/test/scxml-test-framework/test/more-parallel/test4.scxml deleted file mode 100644 index b211cad..0000000 --- a/test/scxml-test-framework/test/more-parallel/test4.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a"/> - - <state id="a1"/> - - <state id="a2"/> - </state> - - <state id="b"> - - <transition event="t" target="b"/> - - <state id="b1"/> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/more-parallel/test5.json b/test/scxml-test-framework/test/more-parallel/test5.json deleted file mode 100644 index b07bacf..0000000 --- a/test/scxml-test-framework/test/more-parallel/test5.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2","b1"] - } - - ] -} - - - diff --git a/test/scxml-test-framework/test/more-parallel/test5.scxml b/test/scxml-test-framework/test/more-parallel/test5.scxml deleted file mode 100644 index 7f4c7ab..0000000 --- a/test/scxml-test-framework/test/more-parallel/test5.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a2"/> - - <state id="a1"/> - - <state id="a2"/> - </state> - - <state id="b"> - - <transition event="t" target="b2"/> - - <state id="b1"/> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> diff --git a/test/scxml-test-framework/test/more-parallel/test6.json b/test/scxml-test-framework/test/more-parallel/test6.json deleted file mode 100644 index 9e33fe5..0000000 --- a/test/scxml-test-framework/test/more-parallel/test6.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["a11","b11"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a11","b12"] - } - - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test6.scxml b/test/scxml-test-framework/test/more-parallel/test6.scxml deleted file mode 100644 index efe2442..0000000 --- a/test/scxml-test-framework/test/more-parallel/test6.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a22"/> - - <state id="a1"> - <state id="a11"/> - <state id="a12"/> - </state> - - <state id="a2"> - <state id="a21"/> - <state id="a22"/> - </state> - </state> - - <state id="b"> - - <state id="b1"> - <state id="b11"> - <transition event="t" target="b12"/> - </state> - <state id="b12"/> - </state> - - <state id="b2"> - <state id="b21"/> - <state id="b22"/> - </state> - </state> - </parallel> - - -</scxml> diff --git a/test/scxml-test-framework/test/more-parallel/test7.json b/test/scxml-test-framework/test/more-parallel/test7.json deleted file mode 100644 index db9e53f..0000000 --- a/test/scxml-test-framework/test/more-parallel/test7.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "initialConfiguration" : ["a11","b11"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a22","b11"] - } - - ] -} - diff --git a/test/scxml-test-framework/test/more-parallel/test7.scxml b/test/scxml-test-framework/test/more-parallel/test7.scxml deleted file mode 100644 index dcaee1e..0000000 --- a/test/scxml-test-framework/test/more-parallel/test7.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - - <transition event="t" target="a22"/> - - <state id="a1"> - <state id="a11"/> - <state id="a12"/> - </state> - - <state id="a2"> - <state id="a21"/> - <state id="a22"/> - </state> - </state> - - <state id="b"> - - <transition event="t" target="b22"/> - - <state id="b1"> - <state id="b11"/> - <state id="b12"/> - </state> - - <state id="b2"> - <state id="b21"/> - <state id="b22"/> - </state> - </state> - </parallel> - - -</scxml> diff --git a/test/scxml-test-framework/test/more-parallel/test8.json b/test/scxml-test-framework/test/more-parallel/test8.json deleted file mode 100644 index d36bc3c..0000000 --- a/test/scxml-test-framework/test/more-parallel/test8.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["x"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a22","b11"] - } - - ] -} diff --git a/test/scxml-test-framework/test/more-parallel/test8.scxml b/test/scxml-test-framework/test/more-parallel/test8.scxml deleted file mode 100644 index 1c6f60c..0000000 --- a/test/scxml-test-framework/test/more-parallel/test8.scxml +++ /dev/null @@ -1,52 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="x"> - <transition event="t" target="a22"/> - </state> - - <parallel id="p"> - <state id="a"> - <state id="a1"> - <state id="a11"/> - <state id="a12"/> - </state> - - <state id="a2"> - <state id="a21"/> - <state id="a22"/> - </state> - </state> - - <state id="b"> - - <state id="b1"> - <state id="b11"/> - <state id="b12"/> - </state> - - <state id="b2"> - <state id="b21"/> - <state id="b22"/> - </state> - </state> - </parallel> -</scxml> diff --git a/test/scxml-test-framework/test/more-parallel/test9.json b/test/scxml-test-framework/test/more-parallel/test9.json deleted file mode 100644 index 142f1f7..0000000 --- a/test/scxml-test-framework/test/more-parallel/test9.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["x"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a22","b22"] - } - - ] -} - - diff --git a/test/scxml-test-framework/test/more-parallel/test9.scxml b/test/scxml-test-framework/test/more-parallel/test9.scxml deleted file mode 100644 index 0e95f17..0000000 --- a/test/scxml-test-framework/test/more-parallel/test9.scxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="x"> - <transition event="t" target="a22 b22"/> - </state> - - <parallel id="p"> - <state id="a"> - <state id="a1"> - <state id="a11"/> - <state id="a12"/> - </state> - - <state id="a2"> - <state id="a21"/> - <state id="a22"/> - </state> - </state> - - <state id="b"> - - <state id="b1"> - <state id="b11"/> - <state id="b12"/> - </state> - - <state id="b2"> - <state id="b21"/> - <state id="b22"/> - </state> - </state> - </parallel> -</scxml> - diff --git a/test/scxml-test-framework/test/multiple-events-per-transition/test1.json b/test/scxml-test-framework/test/multiple-events-per-transition/test1.json deleted file mode 100644 index 155aa6f..0000000 --- a/test/scxml-test-framework/test/multiple-events-per-transition/test1.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["b"] - }, - { - "event" : { "name" : "bar" }, - "nextConfiguration" : ["c"] - }, - { - "event" : { "name" : "bat" }, - "nextConfiguration" : ["d"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/multiple-events-per-transition/test1.scxml b/test/scxml-test-framework/test/multiple-events-per-transition/test1.scxml deleted file mode 100644 index 3ee5fa2..0000000 --- a/test/scxml-test-framework/test/multiple-events-per-transition/test1.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="foo bar bat"/> - </state> - - <state id="b"> - <transition target="c" event="foo bar bat"/> - </state> - - <state id="c"> - <transition target="d" event="foo bar bat"/> - </state> - - <state id="d"/> - -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test0.json b/test/scxml-test-framework/test/parallel+interrupt/test0.json deleted file mode 100644 index 95b109d..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test0.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} diff --git a/test/scxml-test-framework/test/parallel+interrupt/test0.scxml b/test/scxml-test-framework/test/parallel+interrupt/test0.scxml deleted file mode 100644 index e8072f0..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test0.scxml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -orthogonal preemption - inner or states interrupt one-another -in our semantics, source state is at the same level of hierarchy, so document order will resolve conflict. a1 will win. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"> - <transition event="t" target="a1"/> - </state> - - <state id="d"> - <transition event="t" target="a2"/> - </state> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test1.json b/test/scxml-test-framework/test/parallel+interrupt/test1.json deleted file mode 100644 index 723901c..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test1.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d1"] - } - - ] -} - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test1.scxml b/test/scxml-test-framework/test/parallel+interrupt/test1.scxml deleted file mode 100644 index 83ad119..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test1.scxml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -orthogonal preemption - transition originating at inner OR state interrupts transition originating at orthogonal OR state. -first OR state should win, as the transitions originate at the same level of hierarchy, and wins by document order ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="a1"/> - </state> - </state> - - </parallel> - - <state id="a1"/> -</scxml> - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test10.json b/test/scxml-test-framework/test/parallel+interrupt/test10.json deleted file mode 100644 index cc1a4ff..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test10.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c1","c2"] - } - - ] -} - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test10.scxml b/test/scxml-test-framework/test/parallel+interrupt/test10.scxml deleted file mode 100644 index b68c38e..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test10.scxml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -no conflict here -initial: [b1,b2] -after t: [c1,c2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - - <transition event="t" target="c"/> - - <parallel id="b"> - <state id="b1"> - </state> - - <state id="b2"> - </state> - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - </state> - -</scxml> - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test11.json b/test/scxml-test-framework/test/parallel+interrupt/test11.json deleted file mode 100644 index 19f29fb..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test11.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["d"] - } - - ] -} - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test11.scxml b/test/scxml-test-framework/test/parallel+interrupt/test11.scxml deleted file mode 100644 index c098dc0..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test11.scxml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- -initial: [b1,b2] -after t: [d] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - - <parallel id="b"> - <state id="b1"> - <transition event="t" target="d"/> - </state> - - <state id="b2"> - <transition event="t" target="c"/> - </state> - - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - - </state> - - <state id="d"/> - -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test12.json b/test/scxml-test-framework/test/parallel+interrupt/test12.json deleted file mode 100644 index 93a1a43..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test12.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c1","c2"] - } - - ] -} - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test12.scxml b/test/scxml-test-framework/test/parallel+interrupt/test12.scxml deleted file mode 100644 index f7025a4..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test12.scxml +++ /dev/null @@ -1,52 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -initial: [b1,b2] -after t: [c1,c2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - <parallel id="b"> - <state id="b1"> - <transition event="t" target="c"/> - </state> - - <state id="b2"> - <transition event="t" target="d"/> - </state> - - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - - </state> - - <state id="d"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test13.json b/test/scxml-test-framework/test/parallel+interrupt/test13.json deleted file mode 100644 index f84429c..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test13.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c1","c2"] - } - - ] -} - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test13.scxml b/test/scxml-test-framework/test/parallel+interrupt/test13.scxml deleted file mode 100644 index 5e87469..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test13.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -initial: [b1,b2] -after t: [c1,c2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - - <parallel id="b"> - <state id="b1"> - <transition event="t" target="c"/> - </state> - - <state id="b2"> - </state> - - <transition event="t" target="d"/> - - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - - </state> - - <state id="d"/> - -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test14.json b/test/scxml-test-framework/test/parallel+interrupt/test14.json deleted file mode 100644 index f3c1994..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test14.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "initialConfiguration" : ["i1","j","h","g","f1","k"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["l"] - } - - ] -} - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test14.scxml b/test/scxml-test-framework/test/parallel+interrupt/test14.scxml deleted file mode 100644 index dead195..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test14.scxml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -initial: [i1,j,h,g,f1,i1,k] -after t: [l] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <parallel id="a"> - <parallel id="b"> - <parallel id="c"> - <parallel id="d"> - <parallel id="e"> - - <state id="i" initial="i1"> - <state id="i1"> - <transition target="l" event="t"/> - </state> - - <state id="i2"> - </state> - </state> - - <state id="j"/> - </parallel> - - <state id="h"/> - </parallel> - - <state id="g"/> - </parallel> - - <state id="f" initial="f1"> - <state id="f1"> - <transition target="f2" event="t"/> - </state> - - <state id="f2"> - </state> - </state> - </parallel> - - <state id="k"/> - </parallel> - - <state id="l"/> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test15.json b/test/scxml-test-framework/test/parallel+interrupt/test15.json deleted file mode 100644 index e3d8a56..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test15.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "initialConfiguration" : ["i1","j","h","g","f1","k"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["i2","j","h","g","f1","k"] - } - - ] -} - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test15.scxml b/test/scxml-test-framework/test/parallel+interrupt/test15.scxml deleted file mode 100644 index 2c2fc67..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test15.scxml +++ /dev/null @@ -1,65 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -initial: [i1,j,h,g,f1,i1,k] -after t: ["i2","j","h","g","f1","k"] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <parallel id="a"> - <parallel id="b"> - <parallel id="c"> - <parallel id="d"> - <parallel id="e"> - - <state id="i" initial="i1"> - <state id="i1"> - <transition target="i2" event="t"/> - </state> - - <state id="i2"> - </state> - </state> - - <state id="j"/> - </parallel> - - <state id="h"/> - </parallel> - - <state id="g"/> - </parallel> - - <state id="f" initial="f1"> - <state id="f1"> - <transition target="l" event="t"/> - </state> - - <state id="f2"> - </state> - </state> - </parallel> - - <state id="k"/> - </parallel> - - <state id="l"/> -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test16.json b/test/scxml-test-framework/test/parallel+interrupt/test16.json deleted file mode 100644 index b73fce9..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test16.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test16.scxml b/test/scxml-test-framework/test/parallel+interrupt/test16.scxml deleted file mode 100644 index d7ec9fc..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test16.scxml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -orthogonal preemption - inner or states interrupt one-another -illustrates target interrupt -in our semantics, source state is at the same level of hierarchy, so document order will resolve conflict. a1 will win. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"> - <transition event="t" target="a"/> - </state> - - <state id="d"> - <transition event="t" target="a2"/> - </state> - - </parallel> - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> -</scxml> - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test17.json b/test/scxml-test-framework/test/parallel+interrupt/test17.json deleted file mode 100644 index 5b9f8af..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test17.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - - ] -} - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test17.scxml b/test/scxml-test-framework/test/parallel+interrupt/test17.scxml deleted file mode 100644 index 4af40c5..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test17.scxml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -orthogonal preemption - inner or states interrupt one-another -illustrates target interrupt -in our semantics, source state is at the same level of hierarchy, so document order will resolve conflict. a1 will win. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"> - <transition event="t" target="a2"/> - </state> - - <state id="d"> - <transition event="t" target="a"/> - </state> - - </parallel> - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test18.json b/test/scxml-test-framework/test/parallel+interrupt/test18.json deleted file mode 100644 index 55abbba..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test18.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - - ] -} - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test18.scxml b/test/scxml-test-framework/test/parallel+interrupt/test18.scxml deleted file mode 100644 index e0d14a8..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test18.scxml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - outer and state interrupts inner or state --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"/> - - <state id="d"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a1"/> - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test19.json b/test/scxml-test-framework/test/parallel+interrupt/test19.json deleted file mode 100644 index 9c0458f..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test19.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test19.scxml b/test/scxml-test-framework/test/parallel+interrupt/test19.scxml deleted file mode 100644 index d5c8967..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test19.scxml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - two transitions originating at internal OR states are interrupted by a transition originating at outer AND state --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a1" /> - - </parallel> - - <state id="a1"/> -</scxml> - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test2.json b/test/scxml-test-framework/test/parallel+interrupt/test2.json deleted file mode 100644 index e3b3b9d..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test2.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test2.scxml b/test/scxml-test-framework/test/parallel+interrupt/test2.scxml deleted file mode 100644 index 1c3757f..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test2.scxml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -orthogonal preemption - transition originating at inner OR state interrupts transition originating at orthogonal OR state. -again, first OR state should win, as the transitions originate at the same level of hierarchy, and wins by document order ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - - <parallel id="b"> - - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="a1"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - </parallel> - - <state id="a1"/> -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test20.json b/test/scxml-test-framework/test/parallel+interrupt/test20.json deleted file mode 100644 index 470a986..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test20.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "initialConfiguration" : ["c1","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test20.scxml b/test/scxml-test-framework/test/parallel+interrupt/test20.scxml deleted file mode 100644 index 2066be5..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test20.scxml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transition from c1 will win, for same reasons listed above --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d"> - <transition event="t" target="a1"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test21.json b/test/scxml-test-framework/test/parallel+interrupt/test21.json deleted file mode 100644 index 15fb75b..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test21.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "initialConfiguration" : ["c","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test21.scxml b/test/scxml-test-framework/test/parallel+interrupt/test21.scxml deleted file mode 100644 index 4e66fda..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test21.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transition from d1 will win, for same reasons listed above --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - - <state id="c"> - <transition event="t" target="a1"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test22.json b/test/scxml-test-framework/test/parallel+interrupt/test22.json deleted file mode 100644 index 4d7bf5a..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test22.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test22.scxml b/test/scxml-test-framework/test/parallel+interrupt/test22.scxml deleted file mode 100644 index 2e71d50..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test22.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transitions from c1 and d1 will win, for same reasons listed above --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a1" /> - - </parallel> - - <state id="a1"/> -</scxml> - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test23.json b/test/scxml-test-framework/test/parallel+interrupt/test23.json deleted file mode 100644 index db53da4..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test23.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test23.scxml b/test/scxml-test-framework/test/parallel+interrupt/test23.scxml deleted file mode 100644 index 04245a6..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test23.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - outer and state interrupts inner or state --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"/> - - <state id="d"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a1"/> - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test24.json b/test/scxml-test-framework/test/parallel+interrupt/test24.json deleted file mode 100644 index d1c8f8b..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test24.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test24.scxml b/test/scxml-test-framework/test/parallel+interrupt/test24.scxml deleted file mode 100644 index 6534d68..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test24.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - two transitions originating at internal OR states are interrupted by a transition originating at outer AND state --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a1" /> - - </parallel> - - <state id="a1"/> -</scxml> - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test25.json b/test/scxml-test-framework/test/parallel+interrupt/test25.json deleted file mode 100644 index 7c380c8..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test25.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "initialConfiguration" : ["c1","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test25.scxml b/test/scxml-test-framework/test/parallel+interrupt/test25.scxml deleted file mode 100644 index 2084c90..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test25.scxml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and b. -transition from c1 will win, for same reasons listed above --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d"> - <transition event="t" target="a1"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> -</scxml> - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test26.json b/test/scxml-test-framework/test/parallel+interrupt/test26.json deleted file mode 100644 index 89e21a1..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test26.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test26.scxml b/test/scxml-test-framework/test/parallel+interrupt/test26.scxml deleted file mode 100644 index 355e7f0..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test26.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - - <state id="c"> - <transition event="t" target="a1"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> - - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test27.json b/test/scxml-test-framework/test/parallel+interrupt/test27.json deleted file mode 100644 index 46de906..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test27.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test27.scxml b/test/scxml-test-framework/test/parallel+interrupt/test27.scxml deleted file mode 100644 index e5b7384..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test27.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transitions from c1 and d1 will win, for same reasons listed above --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a1" /> - - </parallel> - - <state id="a1"/> - - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test28.json b/test/scxml-test-framework/test/parallel+interrupt/test28.json deleted file mode 100644 index ebb83a8..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test28.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test28.scxml b/test/scxml-test-framework/test/parallel+interrupt/test28.scxml deleted file mode 100644 index 724a023..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test28.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - outer and state interrupts inner or state -inner transition will have priority, so final state will be a2. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"/> - - <state id="d"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a"/> - </parallel> - - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> - - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test29.json b/test/scxml-test-framework/test/parallel+interrupt/test29.json deleted file mode 100644 index 744f5da..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test29.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test29.scxml b/test/scxml-test-framework/test/parallel+interrupt/test29.scxml deleted file mode 100644 index d6bc1f0..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test29.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemption - outer and state interrupts inner or state -inner transition will have priority, so final state will be a1. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"/> - - <state id="d"> - <transition event="t" target="a"/> - </state> - - <transition event="t" target="a2"/> - </parallel> - - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> - - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test3.json b/test/scxml-test-framework/test/parallel+interrupt/test3.json deleted file mode 100644 index 804186e..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test3.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["e","f","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test3.scxml b/test/scxml-test-framework/test/parallel+interrupt/test3.scxml deleted file mode 100644 index a21a4e2..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test3.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- -orthogonal preemption - inner or states interrupt one-another -in our semantics, source state is at the same level of hierarchy, so document order will resolve conflict. a1 will win. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <parallel id="c"> - <state id="e"> - <transition event="t" target="a1"/> - </state> - - <state id="f"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a3"/> - </parallel> - - <state id="d"> - <transition event="t" target="a4"/> - </state> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> - - <state id="a3"/> - - <state id="a4"/> - -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test30.json b/test/scxml-test-framework/test/parallel+interrupt/test30.json deleted file mode 100644 index 3730a94..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test30.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c1","d"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c2","d"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test30.scxml b/test/scxml-test-framework/test/parallel+interrupt/test30.scxml deleted file mode 100644 index b10720b..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test30.scxml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transition from c1 will win, for same reasons listed above. -final state will be: c2 --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="c2"/> - </state> - - <state id="c2"/> - </state> - - <state id="d"> - <transition event="t" target="a"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> - - -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test31.json b/test/scxml-test-framework/test/parallel+interrupt/test31.json deleted file mode 100644 index a66b39a..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test31.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "initialConfiguration" : ["c1","d1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test31.scxml b/test/scxml-test-framework/test/parallel+interrupt/test31.scxml deleted file mode 100644 index a90fe8f..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test31.scxml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- orthogonal preemptions -here we have multiple interrupt conflicts, originating from d and a2. -transition from c1 will win, for same reasons listed above. -final state will be: a1 --> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - - <state id="c" initial="c1"> - <state id="c1"> - <transition event="t" target="a"/> - </state> - </state> - - <state id="d" initial="d1"> - <state id="d1"> - <transition event="t" target="d2"/> - </state> - - <state id="d2"/> - </state> - - <transition event="t" target="a2"/> - - </parallel> - - <state id="a" initial="a1"> - <state id="a1"/> - - <state id="a2"/> - </state> - - -</scxml> diff --git a/test/scxml-test-framework/test/parallel+interrupt/test4.json b/test/scxml-test-framework/test/parallel+interrupt/test4.json deleted file mode 100644 index 497debc..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test4.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "initialConfiguration" : ["e","f","g"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a1"] - } - - ] -} - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test4.scxml b/test/scxml-test-framework/test/parallel+interrupt/test4.scxml deleted file mode 100644 index ca9d2bd..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test4.scxml +++ /dev/null @@ -1,59 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - orthogonal preemption - inner or states interrupt one-another ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <parallel id="p"> - <state id="e"> - <transition event="t" target="a1"/> - </state> - - <state id="f"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a3"/> - </parallel> - - - <state id="d" initial="g"> - <state id="g"> - <transition event="t" target="h"/> - </state> - - <state id="h"/> - </state> - - </parallel> - - <state id="a1"/> - - <state id="a2"/> - - <state id="a3"/> - - <state id="a4"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test5.json b/test/scxml-test-framework/test/parallel+interrupt/test5.json deleted file mode 100644 index 117dc4d..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test5.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "initialConfiguration" : ["e","f","g"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["e","f","h"] - } - - ] -} - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test5.scxml b/test/scxml-test-framework/test/parallel+interrupt/test5.scxml deleted file mode 100644 index 2d853a4..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test5.scxml +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - orthogonal preemption - inner or states interrupt one-another ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="d" initial="g"> - <state id="g"> - <transition event="t" target="h"/> - </state> - - <state id="h"/> - </state> - - <parallel id="p"> - <state id="e"> - <transition event="t" target="a1"/> - </state> - - <state id="f"> - <transition event="t" target="a2"/> - </state> - - <transition event="t" target="a3"/> - </parallel> - </parallel> - - <state id="a1"/> - - <state id="a2"/> - - <state id="a3"/> - - <state id="a4"/> - -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test6.json b/test/scxml-test-framework/test/parallel+interrupt/test6.json deleted file mode 100644 index 2876d0b..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test6.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "initialConfiguration" : ["g","e1","f1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["h","e2","f2"] - } - - ] -} - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test6.scxml b/test/scxml-test-framework/test/parallel+interrupt/test6.scxml deleted file mode 100644 index 5b5702a..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test6.scxml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - orthogonal preemption - inner or states interrupt one-another - no conflicts here - initial configuration: [g,e1,f1] - given event t: [h,e2,f2] -TODO: move this to basic parallel group ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c" initial="g"> - <state id="g"> - <transition event="t" target="h"/> - </state> - - <state id="h"/> - </state> - - <parallel id="d"> - <state id="e" initial="e1"> - <state id="e1"> - <transition event="t" target="e2"/> - </state> - - <state id="e2"/> - </state> - - <state id="f" initial="f1"> - <state id="f1"> - <transition event="t" target="f2"/> - </state> - - <state id="f2"/> - </state> - - </parallel> - - </parallel> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test7.json b/test/scxml-test-framework/test/parallel+interrupt/test7.json deleted file mode 100644 index ec5e2b4..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test7.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["c","e1","f1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c","e2","f2"] - } - - ] -} - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test7.scxml b/test/scxml-test-framework/test/parallel+interrupt/test7.scxml deleted file mode 100644 index 97a3513..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test7.scxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- - orthogonal preemption - inner or states interrupt one-another -conflict between transition originating in state c, and transitions originating in e1 and f1, as transition from c interrupt the others -transitions in e1 and f1 will win, as they are deeper in the hierarchy (even though they come later in document order -initial configuration: [c,e1,f1] -given event t: [c,e2,f2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="b"> - - <parallel id="b"> - <state id="c"> - <transition event="t" target="a1"/> - </state> - - <parallel id="d"> - <state id="e" initial="e1"> - <state id="e1"> - <transition event="t" target="e2"/> - </state> - - <state id="e2"/> - </state> - - <state id="f" initial="f1"> - <state id="f1"> - <transition event="t" target="f2"/> - </state> - - <state id="f2"/> - </state> - - </parallel> - - </parallel> - - <state id="a1"/> - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test8.json b/test/scxml-test-framework/test/parallel+interrupt/test8.json deleted file mode 100644 index dea59df..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test8.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c1","c2"] - } - - ] -} - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test8.scxml b/test/scxml-test-framework/test/parallel+interrupt/test8.scxml deleted file mode 100644 index 9068ff3..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test8.scxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -no conflict here -initial: [b1,b2] -after t: [c1,c2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - <parallel id="b"> - <state id="b1"> - </state> - - <state id="b2"> - </state> - - <transition event="t" target="c"/> - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - </state> - -</scxml> - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test9.json b/test/scxml-test-framework/test/parallel+interrupt/test9.json deleted file mode 100644 index 621ba48..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test9.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "initialConfiguration" : ["b1","b2"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c1","c2"] - } - - ] -} - - - - - - - - - diff --git a/test/scxml-test-framework/test/parallel+interrupt/test9.scxml b/test/scxml-test-framework/test/parallel+interrupt/test9.scxml deleted file mode 100644 index 65231e8..0000000 --- a/test/scxml-test-framework/test/parallel+interrupt/test9.scxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- -no conflict here -initial: [b1,b2] -after t: [c1,c2] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="a"> - - <state id="a" initial="b"> - <parallel id="b"> - <state id="b1"> - <transition event="t" target="c"/> - </state> - - <state id="b2"> - </state> - </parallel> - - <parallel id="c"> - <state id="c1"> - </state> - - <state id="c2"> - </state> - </parallel> - </state> - -</scxml> - - - - - - diff --git a/test/scxml-test-framework/test/parallel/test0.json b/test/scxml-test-framework/test/parallel/test0.json deleted file mode 100644 index 0150078..0000000 --- a/test/scxml-test-framework/test/parallel/test0.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "initialConfiguration" : ["a","b"], - "events" : [ ] -} - - - diff --git a/test/scxml-test-framework/test/parallel/test0.scxml b/test/scxml-test-framework/test/parallel/test0.scxml deleted file mode 100644 index 6ae0838..0000000 --- a/test/scxml-test-framework/test/parallel/test0.scxml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"/> - - <state id="b"/> - </parallel> - - -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel/test1.json b/test/scxml-test-framework/test/parallel/test1.json deleted file mode 100644 index 6827a36..0000000 --- a/test/scxml-test-framework/test/parallel/test1.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["a2","b2"] - } - - ] -} - - - diff --git a/test/scxml-test-framework/test/parallel/test1.scxml.fail b/test/scxml-test-framework/test/parallel/test1.scxml.fail deleted file mode 100644 index 1c0fc61..0000000 --- a/test/scxml-test-framework/test/parallel/test1.scxml.fail +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p"> - <state id="a"> - <initial id="ia"> - <transition target="a1"/> - </initial> - - <state id="a1"> - <transition event="t" target="a2"/> - </state> - - <state id="a2"/> - </state> - - <state id="b"> - <initial id="ib"> - <transition target="b1"/> - </initial> - - <state id="b1"> - <transition event="t" target="b2"/> - </state> - - <state id="b2"/> - </state> - </parallel> - - -</scxml> - - diff --git a/test/scxml-test-framework/test/parallel/test2.json b/test/scxml-test-framework/test/parallel/test2.json deleted file mode 100644 index 7e7f790..0000000 --- a/test/scxml-test-framework/test/parallel/test2.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "initialConfiguration" : ["s3","s4","s7","s8"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["s5","s6","s9","s10"] - } - - ] -} - - - - diff --git a/test/scxml-test-framework/test/parallel/test2.scxml b/test/scxml-test-framework/test/parallel/test2.scxml deleted file mode 100644 index c73d0dd..0000000 --- a/test/scxml-test-framework/test/parallel/test2.scxml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- nested orthogonality -initial configuration: [s3,s4,s7,s8] -after event t: [s5,s6,s9,s10] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <parallel id="p1"> - <state id="s1" initial="p2"> - <parallel id="p2"> - <state id="s3"/> - - <state id="s4"/> - - <transition target="p3" event="t"/> - </parallel> - - <parallel id="p3"> - <state id="s5"/> - - <state id="s6"/> - </parallel> - - </state> - - <state id="s2" initial="p4"> - <parallel id="p4"> - <state id="s7"/> - - <state id="s8"/> - - <transition target="p5" event="t"/> - </parallel> - - <parallel id="p5"> - <state id="s9"/> - - <state id="s10"/> - </parallel> - </state> - - </parallel> - -</scxml> - diff --git a/test/scxml-test-framework/test/parallel/test3.json b/test/scxml-test-framework/test/parallel/test3.json deleted file mode 100644 index 88737e1..0000000 --- a/test/scxml-test-framework/test/parallel/test3.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "initialConfiguration" : ["s3.1","s4","s7","s8"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["s3.2","s4","s9","s10"] - } - - ] -} - - - - - diff --git a/test/scxml-test-framework/test/parallel/test3.scxml b/test/scxml-test-framework/test/parallel/test3.scxml deleted file mode 100644 index e143417..0000000 --- a/test/scxml-test-framework/test/parallel/test3.scxml +++ /dev/null @@ -1,76 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<!-- nested orthogonality -initial configuration: [s3.1,s4,s7,s8] -after event t: [s3.2,s4,s9,s10] ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0" - initial="p1"> - - <parallel id="p1"> - <state id="s1" initial="p2"> - <parallel id="p2"> - <state id="s3" initial="s3.1"> - <state id="s3.1"> - <transition target="s3.2" event="t"/> - </state> - - <state id="s3.2"/> - </state> - - <state id="s4"> - </state> - - </parallel> - - <parallel id="p3"> - <state id="s5"> - </state> - - <state id="s6"> - </state> - </parallel> - - </state> - - <state id="s2" initial="p4"> - <parallel id="p4"> - <state id="s7"> - </state> - - <state id="s8"> - </state> - - <transition target="p5" event="t"/> - </parallel> - - <parallel id="p5"> - <state id="s9"> - </state> - - <state id="s10"> - </state> - </parallel> - </state> - - </parallel> - -</scxml> - diff --git a/test/scxml-test-framework/test/script-src/script-0-0.js b/test/scxml-test-framework/test/script-src/script-0-0.js deleted file mode 100644 index 062f555..0000000 --- a/test/scxml-test-framework/test/script-src/script-0-0.js +++ /dev/null @@ -1 +0,0 @@ -x = 100; diff --git a/test/scxml-test-framework/test/script-src/script-1-0.js b/test/scxml-test-framework/test/script-src/script-1-0.js deleted file mode 100644 index 226697f..0000000 --- a/test/scxml-test-framework/test/script-src/script-1-0.js +++ /dev/null @@ -1 +0,0 @@ -i = 0; diff --git a/test/scxml-test-framework/test/script-src/script-1-1.js b/test/scxml-test-framework/test/script-src/script-1-1.js deleted file mode 100644 index 8dca7b1..0000000 --- a/test/scxml-test-framework/test/script-src/script-1-1.js +++ /dev/null @@ -1 +0,0 @@ -i = i + 1; diff --git a/test/scxml-test-framework/test/script-src/script-2-0.js b/test/scxml-test-framework/test/script-src/script-2-0.js deleted file mode 100644 index 226697f..0000000 --- a/test/scxml-test-framework/test/script-src/script-2-0.js +++ /dev/null @@ -1 +0,0 @@ -i = 0; diff --git a/test/scxml-test-framework/test/script-src/script-2-1.js b/test/scxml-test-framework/test/script-src/script-2-1.js deleted file mode 100644 index 8dca7b1..0000000 --- a/test/scxml-test-framework/test/script-src/script-2-1.js +++ /dev/null @@ -1 +0,0 @@ -i = i + 1; diff --git a/test/scxml-test-framework/test/script-src/script-2-2.js b/test/scxml-test-framework/test/script-src/script-2-2.js deleted file mode 100644 index 8dca7b1..0000000 --- a/test/scxml-test-framework/test/script-src/script-2-2.js +++ /dev/null @@ -1 +0,0 @@ -i = i + 1; diff --git a/test/scxml-test-framework/test/script-src/script-2-3.js b/test/scxml-test-framework/test/script-src/script-2-3.js deleted file mode 100644 index 795c1f2..0000000 --- a/test/scxml-test-framework/test/script-src/script-2-3.js +++ /dev/null @@ -1 +0,0 @@ -i = i * 2; diff --git a/test/scxml-test-framework/test/script-src/script-3-0.js b/test/scxml-test-framework/test/script-src/script-3-0.js deleted file mode 100644 index de469c4..0000000 --- a/test/scxml-test-framework/test/script-src/script-3-0.js +++ /dev/null @@ -1,3 +0,0 @@ -function foo(){ - x = 100; -} diff --git a/test/scxml-test-framework/test/script-src/test0.json b/test/scxml-test-framework/test/script-src/test0.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/script-src/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/script-src/test0.scxml b/test/scxml-test-framework/test/script-src/test0.scxml deleted file mode 100644 index 358405c..0000000 --- a/test/scxml-test-framework/test/script-src/test0.scxml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="initial"> - <transition target="a"> - <script src="script-0-0.js"/> - </transition> - </state> - - <state id="a"> - <transition target="b" event="t" cond="x === 100"/> - <transition target="f" event="t" /> - </state> - - <state id="b"/> - - <state id="f"/> - - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/script-src/test1.json b/test/scxml-test-framework/test/script-src/test1.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/script-src/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/script-src/test1.scxml b/test/scxml-test-framework/test/script-src/test1.scxml deleted file mode 100644 index acb601c..0000000 --- a/test/scxml-test-framework/test/script-src/test1.scxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <assign location="i" expr="0"/> - <script src="script-1-0.js"/> - </transition> - </state> - - <state id="b"> - <transition target="b" cond="i < 100"> - <script src="script-1-1.js"/> - </transition> - <transition target="c" cond="i === 100"/> - </state> - - <state id="c"/> - -</scxml> diff --git a/test/scxml-test-framework/test/script-src/test2.json b/test/scxml-test-framework/test/script-src/test2.json deleted file mode 100644 index 36628bc..0000000 --- a/test/scxml-test-framework/test/script-src/test2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["e"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/script-src/test2.scxml b/test/scxml-test-framework/test/script-src/test2.scxml deleted file mode 100644 index aa920ee..0000000 --- a/test/scxml-test-framework/test/script-src/test2.scxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <script src="script-2-0.js"/> - </transition> - </state> - - <state id="A"> - - <state id="b"> - <transition target="c" cond="i < 100"> - <script src="script-2-1.js"/> - </transition> - </state> - - <state id="c"> - <transition target="b" cond="i < 100"> - <script src="script-2-2.js"/> - </transition> - </state> - - <transition target="d" cond="i === 100"> - <script src="script-2-3.js"/> - </transition> - </state> - - - <state id="d"> - <transition target="e" cond="i === 200"/> - <transition target="f"/> - </state> - - <state id="e"/> - - <state id="f"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/script-src/test3.json b/test/scxml-test-framework/test/script-src/test3.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/script-src/test3.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/script-src/test3.scxml b/test/scxml-test-framework/test/script-src/test3.scxml deleted file mode 100644 index d712686..0000000 --- a/test/scxml-test-framework/test/script-src/test3.scxml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <script src="script-3-0.js"/> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="intitial1"> - <transition target="a"> - <script> - foo(); - </script> - </transition> - </state> - - <state id="a"> - <transition target="b" event="t" cond="x === 100"/> - <transition target="f" event="t" /> - </state> - - <state id="b"/> - - <state id="f"/> - - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/script/test0.json b/test/scxml-test-framework/test/script/test0.json deleted file mode 100644 index c27c2fd..0000000 --- a/test/scxml-test-framework/test/script/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/script/test0.scxml b/test/scxml-test-framework/test/script/test0.scxml deleted file mode 100644 index 21d911d..0000000 --- a/test/scxml-test-framework/test/script/test0.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="intitial1"> - <transition target="a"> - <script> - x = 100; - </script> - </transition> - </state> - - <state id="a"> - <transition target="b" event="t" cond="x === 100"/> - <transition target="f" event="t" /> - </state> - - <state id="b"/> - - <state id="f"/> - - -</scxml> - - - - diff --git a/test/scxml-test-framework/test/script/test1.json b/test/scxml-test-framework/test/script/test1.json deleted file mode 100644 index 0e49c49..0000000 --- a/test/scxml-test-framework/test/script/test1.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["c"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/script/test1.scxml b/test/scxml-test-framework/test/script/test1.scxml deleted file mode 100644 index cd6b2e6..0000000 --- a/test/scxml-test-framework/test/script/test1.scxml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <script> - x = 0; - </script> - </transition> - </state> - - <state id="b"> - <transition target="b" cond="x < 100"> - <script> - x = x + 1; - </script> - </transition> - <transition target="c" cond="x === 100"/> - </state> - - <state id="c"/> - -</scxml> diff --git a/test/scxml-test-framework/test/script/test2.json b/test/scxml-test-framework/test/script/test2.json deleted file mode 100644 index 36628bc..0000000 --- a/test/scxml-test-framework/test/script/test2.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["e"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/script/test2.scxml b/test/scxml-test-framework/test/script/test2.scxml deleted file mode 100644 index f3b469e..0000000 --- a/test/scxml-test-framework/test/script/test2.scxml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="x"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <script> - x = 0; - </script> - </transition> - </state> - - <state id="A"> - - <state id="b"> - <transition target="c" cond="x < 100"> - <script> - x = x + 1; - </script> - </transition> - </state> - - <state id="c"> - <transition target="b" cond="x < 100"> - <script> - x = x + 1; - </script> - </transition> - </state> - - <transition target="d" cond="x === 100"> - <script> - x = x * 2; - </script> - </transition> - </state> - - - <state id="d"> - <transition target="e" cond="x === 200"/> - <transition target="f"/> - </state> - - <state id="e"/> - - <state id="f"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.json b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.json deleted file mode 100644 index 577a005..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["b"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.scxml b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.scxml deleted file mode 100644 index 31345a8..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/star0.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <!-- we send foo here, and it matches the * event --> - <transition target="b" event="*"/> - <transition target="fail" event="foo"/> - </state> - - <state id="b"> - </state> - - <state id="fail"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.json b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.json deleted file mode 100644 index bf11b72..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["b"] - }, - { - "event" : { "name" : "foo.bar" }, - "nextConfiguration" : ["c"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["d"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["e"] - }, - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["e"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["f"] - }, - { - "event" : { "name" : "foobar" }, - "nextConfiguration" : ["f"] - }, - { - "event" : { "name" : "foo.bar.bat.bif" }, - "nextConfiguration" : ["g"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.scxml b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.scxml deleted file mode 100644 index 3d14125..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test0.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="foo"/> - </state> - - <state id="b"> - <transition target="c" event="foo.bar"/> - </state> - - <state id="c"> - <transition target="d" event="foo.bar.bat"/> - </state> - - <state id="d"> - <transition target="e" event="foo"/> - </state> - - <state id="e"> - <transition target="f" event="foo.bar"/> - </state> - - <state id="f"> - <transition target="g" event="foo.bar.bat"/> - </state> - - <state id="g"/> - -</scxml> diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.json b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.json deleted file mode 100644 index c3c994c..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["b"] - }, - { - "event" : { "name" : "foo.bar" }, - "nextConfiguration" : ["c"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["d"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["e"] - }, - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["e"] - }, - { - "event" : { "name" : "foo.bar.bat" }, - "nextConfiguration" : ["f"] - }, - { - "event" : { "name" : "foobar" }, - "nextConfiguration" : ["f"] - }, - { - "event" : { "name" : "foo.bar.bat.bif" }, - "nextConfiguration" : ["g"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.scxml b/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.scxml deleted file mode 100644 index 4515b3a..0000000 --- a/test/scxml-test-framework/test/scxml-prefix-event-name-matching/test1.scxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <state id="a"> - <transition target="b" event="foo"/> - </state> - - <state id="b"> - <transition target="c" event="foo.bar"/> - </state> - - <state id="c"> - <transition target="d" event="foo.bar.bat"/> - </state> - - <state id="d"> - <transition target="e" event="foo.*"/> - <transition target="fail" event="foo"/> - </state> - - <state id="e"> - <transition target="f" event="foo.bar.*"/> - <transition target="fail" event="foo.bar"/> - </state> - - <state id="f"> - <transition target="g" event="foo.bar.bat.*"/> - <transition target="fail" event="foo.bar.bat"/> - </state> - - <state id="g"/> - - <state id="fail"/> - -</scxml> diff --git a/test/scxml-test-framework/test/send-data/send1.json b/test/scxml-test-framework/test/send-data/send1.json deleted file mode 100644 index f21ee8b..0000000 --- a/test/scxml-test-framework/test/send-data/send1.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["b"] - }, - { - "after" : 100, - "event" : { "name" : "t2" }, - "nextConfiguration" : ["e"] - } - ] -} - diff --git a/test/scxml-test-framework/test/send-data/send1.scxml b/test/scxml-test-framework/test/send-data/send1.scxml deleted file mode 100644 index c663ce3..0000000 --- a/test/scxml-test-framework/test/send-data/send1.scxml +++ /dev/null @@ -1,73 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="foo" expr="1"/> - <data id="bar" expr="2"/> - <data id="bat" expr="3"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <send delayexpr="'10ms'" eventexpr="'s1'" namelist="foo bar"> - <param name="bif" location="bat"/> - <param name="belt" expr="4"/> - </send> - </transition> - </state> - - <state id="b"> - <transition event="s1" target="c" - cond="_event.data.foo === 1 && - _event.data.bar === 2 && - _event.data.bif === 3 && - _event.data.belt === 4"> - - <send delayexpr="'10ms'" eventexpr="'s2'"> - <content>More content.</content> - </send> - - </transition> - - <transition event="s1" target="f"/> - </state> - - - <state id="c"> - <transition event="s2" target="d" - cond="_event.data === 'More content.'"/> - - <transition event="s2" target="f"> - <log label="_event" expr="_event"/> - </transition> - </state> - - - <state id="d"> - <transition event="t2" target="e"/> - </state> - - <state id="e"/> - - <state id="f"/> -</scxml> - - diff --git a/test/scxml-test-framework/test/send-internal/test0.json b/test/scxml-test-framework/test/send-internal/test0.json deleted file mode 100644 index a7f8799..0000000 --- a/test/scxml-test-framework/test/send-internal/test0.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["d"] - } - ] -} diff --git a/test/scxml-test-framework/test/send-internal/test0.scxml b/test/scxml-test-framework/test/send-internal/test0.scxml deleted file mode 100644 index 03ac96a..0000000 --- a/test/scxml-test-framework/test/send-internal/test0.scxml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="foo" expr="1"/> - <data id="bar" expr="2"/> - <data id="bat" expr="3"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"> - <send eventexpr="'s1'" namelist="foo bar" target="#_internal"> - <param name="bif" location="bat"/> - <param name="belt" expr="4"/> - </send> - </transition> - </state> - - <state id="b"> - <transition event="s1" target="c" - cond="_event.data.foo === 1 && - _event.data.bar === 2 && - _event.data.bif === 3 && - _event.data.belt === 4"> - - <send eventexpr="'s2'" target="#_internal"> - <content>More content.</content> - </send> - - </transition> - - <transition event="s1" target="f"/> - </state> - - - <state id="c"> - <transition event="s2" target="d" - cond="_event.data === 'More content.'"/> - - <transition event="s2" target="f"> - <log label="_event" expr="_event"/> - </transition> - </state> - - <state id="d"/> - - <state id="f"/> -</scxml> - - - diff --git a/test/scxml-test-framework/test/targetless-transition/test0.json b/test/scxml-test-framework/test/targetless-transition/test0.json deleted file mode 100644 index 43f1a91..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test0.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "t" }, - "nextConfiguration" : ["done"] - } - ] -} - - - diff --git a/test/scxml-test-framework/test/targetless-transition/test0.scxml b/test/scxml-test-framework/test/targetless-transition/test0.scxml deleted file mode 100644 index 5b95d73..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test0.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i" expr="0"/> - </datamodel> - - <state id="a"> - <transition target="b" event="t"/> - </state> - - <state id="b"> - <transition target="done" cond="i === 100"/> - <transition> - <assign location="i" expr="i + 1"/> - </transition> - </state> - - <state id="done"/> - -</scxml> diff --git a/test/scxml-test-framework/test/targetless-transition/test1.json b/test/scxml-test-framework/test/targetless-transition/test1.json deleted file mode 100644 index f82edf4..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test1.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "bar" }, - "nextConfiguration" : ["done"] - } - ] -} - - - - diff --git a/test/scxml-test-framework/test/targetless-transition/test1.scxml b/test/scxml-test-framework/test/targetless-transition/test1.scxml deleted file mode 100644 index 11520bf..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test1.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i" expr="1"/> - </datamodel> - - <state id="A"> - <transition event="foo"> - <assign location="i" expr="i * 2"/> - </transition> - - <state id="a"> - <transition event="bar"> - <assign location="i" expr="Math.pow(i,3)"/> - </transition> - </state> - - <transition target="done" cond="i === 8"/> - </state> - - <state id="done"/> - -</scxml> - diff --git a/test/scxml-test-framework/test/targetless-transition/test2.json b/test/scxml-test-framework/test/targetless-transition/test2.json deleted file mode 100644 index f97a06f..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test2.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "initialConfiguration" : ["a"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["a"] - }, - { - "event" : { "name" : "bar" }, - "nextConfiguration" : ["done"] - } - ] -} - - - - - diff --git a/test/scxml-test-framework/test/targetless-transition/test2.scxml b/test/scxml-test-framework/test/targetless-transition/test2.scxml deleted file mode 100644 index 12609dd..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test2.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i" expr="1"/> - </datamodel> - - <state id="A"> - <transition event="foo"> - <assign location="i" expr="i * 2"/> - </transition> - <transition event="bar"> - <assign location="i" expr="Math.pow(i,3)"/> - </transition> - - <state id="a"> - <transition event="foo"> - <assign location="i" expr="i + 2"/> - </transition> - </state> - - <transition target="done" cond="i === 27"/> - </state> - - <state id="done"/> - -</scxml> - - diff --git a/test/scxml-test-framework/test/targetless-transition/test3.json b/test/scxml-test-framework/test/targetless-transition/test3.json deleted file mode 100644 index f1300b1..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test3.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "initialConfiguration" : ["a1","b1","c"], - "events" : [ - { - "event" : { "name" : "foo" }, - "nextConfiguration" : ["a2","b2","c"] - }, - { - "event" : { "name" : "bar" }, - "nextConfiguration" : ["done"] - } - ] -} - - - - - - diff --git a/test/scxml-test-framework/test/targetless-transition/test3.scxml b/test/scxml-test-framework/test/targetless-transition/test3.scxml deleted file mode 100644 index 3af50cc..0000000 --- a/test/scxml-test-framework/test/targetless-transition/test3.scxml +++ /dev/null @@ -1,73 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright 2011-2012 Jacob Beard, INFICON, and other SCION contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. ---> -<scxml - datamodel="ecmascript" - xmlns="http://www.w3.org/2005/07/scxml" - version="1.0"> - - <datamodel> - <data id="i" expr="1"/> - </datamodel> - - <parallel id="p"> - - <transition target="done" cond="i === 100"/> - - <transition event="bar"> - <assign location="i" expr="i * 20"/> - <log expr="i"/> - </transition> - - <state id="a"> - <state id="a1"> - <transition event="foo" target="a2"> - <assign location="i" expr="i * 2"/> - <log expr="i"/> - </transition> - </state> - - <state id="a2"> - </state> - </state> - - <state id="b"> - <state id="b1"> - <transition event="foo" target="b2"> - <assign location="i" expr="Math.pow(i,3)"/> - <log expr="i"/> - </transition> - </state> - - <state id="b2"> - </state> - </state> - - <state id="c"> - <transition event="foo"> - <assign location="i" expr="i - 3"/> - <log expr="i"/> - </transition> - </state> - - </parallel> - - <state id="done"/> - -</scxml> - - - diff --git a/test/scxml-test-framework/test/w3c/test144.txml.json b/test/scxml-test-framework/test/w3c/test144.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test144.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test144.txml.scxml b/test/scxml-test-framework/test/w3c/test144.txml.scxml deleted file mode 100644 index e400119..0000000 --- a/test/scxml-test-framework/test/w3c/test144.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- test that events are inserted into the queue in the order in which they are raised. If -foo occurs before bar, success, otherwise failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition event="foo" target="s1"/> - <transition event="*" target="fail"/> - - </state> - -<state id="s1"> - <transition event="bar" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test147.txml.json b/test/scxml-test-framework/test/w3c/test147.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test147.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test147.txml.scxml b/test/scxml-test-framework/test/w3c/test147.txml.scxml deleted file mode 100644 index ff523d3..0000000 --- a/test/scxml-test-framework/test/w3c/test147.txml.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the first clause that evaluates to true - and only that clause - is executed. -Only one event should be raised, and it should be bar --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if cond="false"> - <raise event="foo"/> - <assign location="Var1" expr="Var1 + 1"/> - <elseif cond="true"/> - <raise event="bar"/> - <assign location="Var1" expr="Var1 + 1"/> - <else/> - <raise event="baz"/> - <assign location="Var1" expr="Var1 + 1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="bar" cond="" target="pass"/> - <transition event="*" target="fail"/> - - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test148.txml.json b/test/scxml-test-framework/test/w3c/test148.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test148.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test148.txml.scxml b/test/scxml-test-framework/test/w3c/test148.txml.scxml deleted file mode 100644 index 66287ee..0000000 --- a/test/scxml-test-framework/test/w3c/test148.txml.scxml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the else clause executes if <if> and <elseif> evaluate to false. -Baz should be the only event generated by the <if>. bat is raised to catch the case where the <else> clause -fails and baz is not generated, i.e. it makes sure that the test doesn't hang. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if cond="false"> - <raise event="foo"/> - <assign location="Var1" expr="Var1 + 1"/> - <elseif cond="false"/> - <raise event="bar"/> - <assign location="Var1" expr="Var1 + 1"/> - <else/> - <raise event="baz"/> - <assign location="Var1" expr="Var1 + 1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="baz" cond="" target="pass"/> - <transition event="*" target="fail"/> - - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test149.txml.json b/test/scxml-test-framework/test/w3c/test149.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test149.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test149.txml.scxml b/test/scxml-test-framework/test/w3c/test149.txml.scxml deleted file mode 100644 index d40bf80..0000000 --- a/test/scxml-test-framework/test/w3c/test149.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that neither if clause executes, so that bat is the only event raised. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <if cond="false"> - <raise event="foo"/> - <assign location="Var1" expr="Var1 + 1"/> - <elseif cond="false"/> - <raise event="bar"/> - <assign location="Var1" expr="Var1 + 1"/> - </if> - <raise event="bat"/> - </onentry> - <transition event="bat" cond="" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test150.txml.json b/test/scxml-test-framework/test/w3c/test150.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test150.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test150.txml.scxml b/test/scxml-test-framework/test/w3c/test150.txml.scxml deleted file mode 100644 index b2d239c..0000000 --- a/test/scxml-test-framework/test/w3c/test150.txml.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<!-- test that foreach causes a new variable to be declared if 'item' doesn't already exist. Also -test that it will use an existing var if it does exist. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1"/> - <data id="Var2"/> - <data id="Var3"> - [1,2,3] - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- first use declared variables --> - <foreach item="Var1" index="Var2" array="Var3"/> - <raise event="foo"/> - </onentry> - <transition event="error" target="fail"/> - <transition event="*" target="s1"/> - </state> - -<state id="s1"> - <onentry> -<!-- now use undeclared variables --> - <foreach item="Var4" index="Var5" array="Var3"/> - <raise event="bar"/> - </onentry> - <transition event="error" target="fail"/> - <transition event="*" target="s2"/> - </state> - -<state id="s2"> - <!-- check that var4 is bound --> - <transition cond="Var4" target="pass"/> - <transition target="fail"/> - </state> - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test151.txml.json b/test/scxml-test-framework/test/w3c/test151.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test151.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test151.txml.scxml b/test/scxml-test-framework/test/w3c/test151.txml.scxml deleted file mode 100644 index 76454b4..0000000 --- a/test/scxml-test-framework/test/w3c/test151.txml.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<!-- test that foreach causes a new variable to be declared if 'item' doesn't already exist. Also -test that it will use an existing var if it does exist. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1"/> - <data id="Var2"/> - <data id="Var3"> - [1,2,3] - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- first use declared variables --> - <foreach item="Var1" index="Var2" array="Var3"/> - <raise event="foo"/> - </onentry> - <transition event="error" target="fail"/> - <transition event="*" target="s1"/> - </state> - -<state id="s1"> - <onentry> -<!-- now use undeclared variables --> - <foreach item="Var4" index="Var5" array="Var3"/> - <raise event="bar"/> - </onentry> - <transition event="error" target="fail"/> - <transition event="*" target="s2"/> - </state> - -<state id="s2"> - <!-- check that var5 is bound --> - <transition cond="Var5" target="pass"/> - <transition target="fail"/> - </state> - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test152.txml.json b/test/scxml-test-framework/test/w3c/test152.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test152.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test152.txml.scxml b/test/scxml-test-framework/test/w3c/test152.txml.scxml deleted file mode 100644 index affd58b..0000000 --- a/test/scxml-test-framework/test/w3c/test152.txml.scxml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an illegal array or item value causes error.execution and results in executable content -not being executed. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="0"/> - <data id="Var2"/> - <data id="Var3"/> - <data id="Var4" expr="7"/> - <data id="Var5"> - [1,2,3] - </data> - </datamodel> - - <state id="s0"> - <onentry> -<!-- invalid array, legal item --> - <foreach item="Var2" index="Var3" array="Var4"> - <assign location="Var1" expr="Var1 + 1"/> - </foreach> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="s1"/> - <transition event="*" target="fail"/> - </state> - - <state id="s1"> - <onentry> -<!-- illegal item, legal array --> - <foreach item="'continue'" index="Var3" array="Var5"> - <assign location="Var1" expr="Var1 + 1"/> - </foreach> - <raise event="bar"/> - </onentry> - <transition event="error.execution" target="s2"/> - <transition event="bar" target="fail"/> - </state> - -<state id="s2"> - <!-- check that var1 has its original value (so executable content never got executed --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test153.txml.json b/test/scxml-test-framework/test/w3c/test153.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test153.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test153.txml.scxml b/test/scxml-test-framework/test/w3c/test153.txml.scxml deleted file mode 100644 index 0664741..0000000 --- a/test/scxml-test-framework/test/w3c/test153.txml.scxml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that foreach goes over the array in the right order. since the array contains 1 2 3, we compare the current -value with the previous value, which is stored in var1. The current value should always be larger. If -it ever isn't, set Var4 to 0, indicating failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- contains the previous value --> - <data id="Var2"/> <!-- the item which will contain the current value --> - <data id="Var3"> - [1,2,3] - </data> - <data id="Var4" expr="1"/> <!-- 1 if success, 0 if failure --> - </datamodel> - - <state id="s0"> - <onentry> - <foreach item="Var2" array="Var3"> - <if cond=""> - <assign location="Var1" expr="Var2"/> - <else/> - <!-- values are out of order, record failure --> - <assign location="Var4" expr="0"/> - </if> - </foreach> - </onentry> - - <!-- check that var1 has its original value --> - <transition cond="" target="fail"/> - <transition target="pass"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test155.txml.json b/test/scxml-test-framework/test/w3c/test155.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test155.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test155.txml.scxml b/test/scxml-test-framework/test/w3c/test155.txml.scxml deleted file mode 100644 index 451f106..0000000 --- a/test/scxml-test-framework/test/w3c/test155.txml.scxml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that foreach executes the executable content once for each item in the list '(1,2,3)'. The executable -content sums the items into var1 so it should be 6 at the end --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<datamodel> - <data id="Var1" expr="0"/> - <data id="Var2"/> - <data id="Var3"> - [1,2,3] - </data> - </datamodel> - - <state id="s0"> - <onentry> - <foreach item="Var2" array="Var3"> - <assign location="Var1" expr="Var1 + Var2"/> - </foreach> - </onentry> - - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test156.txml.json b/test/scxml-test-framework/test/w3c/test156.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test156.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test156.txml.scxml b/test/scxml-test-framework/test/w3c/test156.txml.scxml deleted file mode 100644 index 70055c0..0000000 --- a/test/scxml-test-framework/test/w3c/test156.txml.scxml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an error causes the foreach to stop execution. The second piece of executable content -should cause an error, so var1 should be incremented only once --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<datamodel> - <data id="Var1" expr="0"/> - <data id="Var2"/> - <data id="Var3"> - [1,2,3] - </data> - </datamodel> - - <state id="s0"> - <onentry> - <foreach item="Var2" array="Var3"> - <assign location="Var1" expr="Var1 + 1"/> - <!-- assign an illegal value to a non-existent var --> - <assign location="Var5" expr="return"/> - </foreach> - </onentry> - - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test158.txml.json b/test/scxml-test-framework/test/w3c/test158.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test158.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test158.txml.scxml b/test/scxml-test-framework/test/w3c/test158.txml.scxml deleted file mode 100644 index 6cf598a..0000000 --- a/test/scxml-test-framework/test/w3c/test158.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- test that executable content executes in document order. if event1 occurs then event2, succeed, otherwise fail --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <raise event="event1"/> - <raise event="event2"/> - </onentry> - <transition event="event1" target="s1"/> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test159.txml.json b/test/scxml-test-framework/test/w3c/test159.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test159.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test159.txml.scxml b/test/scxml-test-framework/test/w3c/test159.txml.scxml deleted file mode 100644 index 758c228..0000000 --- a/test/scxml-test-framework/test/w3c/test159.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that any error raised by an element of executable content causes all subsequent elements to be skipped. -The send tag will raise an error so var1 should not be incremented. If it is fail, otherwise succeed --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="thisWillFail" conf:illegaltarget=""/> - <conf:incrementId id="1"/> - </onentry> - <transition cond="" target="fail"/> - <transition target="pass"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test172.txml.json b/test/scxml-test-framework/test/w3c/test172.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test172.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test172.txml.scxml b/test/scxml-test-framework/test/w3c/test172.txml.scxml deleted file mode 100644 index 2dfb10f..0000000 --- a/test/scxml-test-framework/test/w3c/test172.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that eventexpr uses the current value of var1, not its initial value --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="'event1'"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="'event2'"/> - <send eventexpr="Var1"/> - </onentry> - - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test173.txml.json b/test/scxml-test-framework/test/w3c/test173.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test173.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test173.txml.scxml b/test/scxml-test-framework/test/w3c/test173.txml.scxml deleted file mode 100644 index 5a11c24..0000000 --- a/test/scxml-test-framework/test/w3c/test173.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that targetexpr uses the current value of var1, not its initial value -(If it uses the initial value, it will generate an error. If it uses the current value, event1 will be raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="27"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="'#_internal'"/> - <send targetexpr="Var1" event="event1"/> - </onentry> - - <transition event="event1" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test174.txml.json b/test/scxml-test-framework/test/w3c/test174.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test174.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test174.txml.scxml b/test/scxml-test-framework/test/w3c/test174.txml.scxml deleted file mode 100644 index f4ee03f..0000000 --- a/test/scxml-test-framework/test/w3c/test174.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that typeexpr uses the current value of var1, not its initial value -(If it uses the initial value, it will generate an error. If it uses the current value, event1 will be raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="27"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="'http://www.w3.org/TR/scxml/#SCXMLEventProcessor'"/> - <send typeexpr="Var1" event="event1"/> - </onentry> - - <transition event="event1" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test175.txml.json b/test/scxml-test-framework/test/w3c/test175.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test175.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test175.txml.scxml b/test/scxml-test-framework/test/w3c/test175.txml.scxml deleted file mode 100644 index 1e47f7e..0000000 --- a/test/scxml-test-framework/test/w3c/test175.txml.scxml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that delayexpr uses the current value of var1, not its initial value -(If it uses the initial value, event2 will be generated first, before event1. If it uses the current value, -event1 will be raised first. Succeed if event1 occurs before event2, otherwise fail --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="'0s'"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="'3s'"/> - <send delayexpr="Var1" event="event2"/> - <send delay="1s" event="event1"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="event2" target="fail"/> - </state> - -<state id="s1"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test176.txml.json b/test/scxml-test-framework/test/w3c/test176.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test176.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test176.txml.scxml b/test/scxml-test-framework/test/w3c/test176.txml.scxml deleted file mode 100644 index 7341f24..0000000 --- a/test/scxml-test-framework/test/w3c/test176.txml.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <param> uses the current value of var1, not its initial value. If the value of -aParam in event1 is 2 so that var2 gets set to 2, success, otherwise failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - <data id="Var2"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="2"/> - <send event="event1"> - <param name="aParam" expr="Var1"/> - </send> - </onentry> - - <transition event="event1" target="s1"> - <assign location="Var2" expr="_event.data.aParam"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test178.txml.json b/test/scxml-test-framework/test/w3c/test178.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test178.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test178.txml.scxml b/test/scxml-test-framework/test/w3c/test178.txml.scxml deleted file mode 100644 index e9e243e..0000000 --- a/test/scxml-test-framework/test/w3c/test178.txml.scxml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that multiple key/value pairs are included, even when the keys are the same. -This is a manual test. The tester must look at the log output and verify that both -keys are there. (This test uses the SCXML Event I/O processor, which is the only -one that all platforms must support. It does not specify the message format, so -we cannot test _event.raw directly. Therefore we print it out for visual -inspection.) --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0"> - <onentry> - <send event="event1"> - <param name="Var1" expr="2"/> - <param name="Var1" expr="3"/> - </send> - </onentry> - - <transition event="event1" target="final"> - <log label="_event " expr="_event.raw"/> - </transition> - <transition event="*" target="fail"/> - - </state> - - -<final id="final"/> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test179.txml.json b/test/scxml-test-framework/test/w3c/test179.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test179.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test179.txml.scxml b/test/scxml-test-framework/test/w3c/test179.txml.scxml deleted file mode 100644 index 861a681..0000000 --- a/test/scxml-test-framework/test/w3c/test179.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <content> can be used to populate body of a message --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="event1"> - <content>123</content> - </send> - </onentry> - - <transition event="event1" cond="_event.data === '123'" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test183.txml.json b/test/scxml-test-framework/test/w3c/test183.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test183.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test183.txml.scxml b/test/scxml-test-framework/test/w3c/test183.txml.scxml deleted file mode 100644 index 73b7797..0000000 --- a/test/scxml-test-framework/test/w3c/test183.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> stores the value of the sendid in idlocation. If it does, -var1 has a value and we pass. Otherwise we fail --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1"/> - - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1" idlocation="Var1"/> - </onentry> - - <transition cond="Var1" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test185.txml.json b/test/scxml-test-framework/test/w3c/test185.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test185.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test185.txml.scxml b/test/scxml-test-framework/test/w3c/test185.txml.scxml deleted file mode 100644 index 0d7c70f..0000000 --- a/test/scxml-test-framework/test/w3c/test185.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> respects the delay specification. If it does, event1 arrives before event2 - and we pass. Otherwise we fail --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="event2" delay="2s"/> - <send event="event1"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test186.txml.json b/test/scxml-test-framework/test/w3c/test186.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test186.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test186.txml.scxml b/test/scxml-test-framework/test/w3c/test186.txml.scxml deleted file mode 100644 index ece1bfe..0000000 --- a/test/scxml-test-framework/test/w3c/test186.txml.scxml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that <send> evals its args when it is evaluated, not when the delay interval expires and the -message is actually sent. If it does, aParam will have the value of 1 (even though var1 has been incremented -in the interval.) If var2 ends up == 1, we pass. Otherwise we fail --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - <data id="Var2"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1" delay="2s"> - <param name="aParam" expr="Var1"/> - </send> - <assign location="Var1" expr="2"/> - </onentry> - - <transition event="event1" target="s1"> - <assign location="Var2" expr="_event.data.aParam"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test187.txml.json b/test/scxml-test-framework/test/w3c/test187.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test187.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test187.txml.scxml b/test/scxml-test-framework/test/w3c/test187.txml.scxml deleted file mode 100644 index 1704c31..0000000 --- a/test/scxml-test-framework/test/w3c/test187.txml.scxml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that delayed <send> is not sent if the sending session terminates. In this case, -a subscript is invoked which sends the event childToParent delayed by 1 second, and then terminates. The -parent session, should not receive childToParent. If it does, we fail. Otherwise the -10 sec timer expires and we pass --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="10s"/> - </onentry> - <invoke type="scxml"> - <content> - <!-- exit before the delayed send can execute --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send event="childToParent" target="#_parent" delay="1s"/> - </onentry> - <transition target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="childToParent" target="fail"/> - <transition event="timeout" target="pass"/> -</state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test194.txml.json b/test/scxml-test-framework/test/w3c/test194.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test194.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test194.txml.scxml b/test/scxml-test-framework/test/w3c/test194.txml.scxml deleted file mode 100644 index 97f5261..0000000 --- a/test/scxml-test-framework/test/w3c/test194.txml.scxml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that specifying an illegal target for <send> causes the event error.execution to be raised. If it does, -we succeed. Otherwise we eventually timeout and fail. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <!-- should cause an error --> - <send target="baz" event="event2"/> - <!-- this will get added to the external event queue after the error has been raised --> - <send event="timeout"/> - </onentry> - - <!-- once we've entered the state, we should check for internal events first --> - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test198.txml.json b/test/scxml-test-framework/test/w3c/test198.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test198.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test198.txml.scxml b/test/scxml-test-framework/test/w3c/test198.txml.scxml deleted file mode 100644 index b08078f..0000000 --- a/test/scxml-test-framework/test/w3c/test198.txml.scxml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that if type is not provided <send> uses the scxml event i/o processor. The only way to tell -what processor was used is to look at the origintype of the resulting event --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0"> - <onentry> - <send event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" cond=" _event.origintype == 'http://www.w3.org/TR/scxml/#SCXMLEventProcessor'" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test199.txml.json b/test/scxml-test-framework/test/w3c/test199.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test199.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test199.txml.scxml b/test/scxml-test-framework/test/w3c/test199.txml.scxml deleted file mode 100644 index d54e285..0000000 --- a/test/scxml-test-framework/test/w3c/test199.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that using an invalid send type results in error.execution --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0"> - <onentry> - <send type="27" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test200.txml.json b/test/scxml-test-framework/test/w3c/test200.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test200.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test200.txml.scxml b/test/scxml-test-framework/test/w3c/test200.txml.scxml deleted file mode 100644 index ad3d4a1..0000000 --- a/test/scxml-test-framework/test/w3c/test200.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor supports the scxml event i/o processor --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> - -<state id="s0"> - <onentry> - <send type="http://www.w3.org/TR/scxml/#SCXMLEventProcessor" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test201.txml.json b/test/scxml-test-framework/test/w3c/test201.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test201.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test201.txml.scxml b/test/scxml-test-framework/test/w3c/test201.txml.scxml deleted file mode 100644 index de0ccd7..0000000 --- a/test/scxml-test-framework/test/w3c/test201.txml.scxml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor supports the basic http event i/o processor. This is an optional -test since platforms are not required to support basic http event i/o --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0"> - <onentry> - <send type="http://www.w3.org/TR/scxml/#BasicHTTPEventProcessor" event="event1"/> - <send event="timeout"/> - </onentry> - - - <transition event="event1" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test205.txml.json b/test/scxml-test-framework/test/w3c/test205.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test205.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test205.txml.scxml b/test/scxml-test-framework/test/w3c/test205.txml.scxml deleted file mode 100644 index 8a00ad3..0000000 --- a/test/scxml-test-framework/test/w3c/test205.txml.scxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor doesn't change the message. We can't test that it never does this, but -at least we can check that the event name and included data are the same as we sent. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="event1"> - <param name="aParam" expr="1"/> - </send> - <send event="timeout"/> - </onentry> - - - <transition event="event1" target="s1"> - <assign location="Var1" expr="_event.data.aParam"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test207.txml.json b/test/scxml-test-framework/test/w3c/test207.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test207.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test207.txml.scxml b/test/scxml-test-framework/test/w3c/test207.txml.scxml deleted file mode 100644 index c0d31d7..0000000 --- a/test/scxml-test-framework/test/w3c/test207.txml.scxml +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that that we can't cancel an event in another session. We invoke a child process. It notifies -us when it has generated a delayed event with sendid foo. We try to cancel foo. The child process sends us event - event success if the event is not cancelled, event fail otherwise. This doesn't test that there is absolutely no way to cancel an event -raised in another session, but the spec doesn't define any way to refer to an event in another process --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="10s"/> - </onentry> - <invoke type="scxml"> - <content> - <!-- when invoked, we raise a delayed event1 with sendid 'foo' and notify our parent. Then we wait. - If event1 occurs, the parent hasn't succeeded in canceling it and we return pass. If event2 occurs - it means event1 was canceled (because event2 is delayed longer than event1) and we return 'fail'. --> - - - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send event="event1" id="foo" delay="3s"/> - <send event="event2" delay="5s"/> - <send target="#_parent" event="childToParent"/> - </onentry> - - <transition event="event1" target="subFinal"> - <send target="#_parent" event="pass"/> - </transition> - <transition event="*" target="subFinal"> - <send target="#_parent" event="fail"/> - </transition> - - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <state id="s01"> - <transition event="childToParent" target="s02"> - <cancel sendid="foo"/> - </transition> - </state> - - <state id="s02"> - <transition event="pass" target="pass"/> - <transition event="fail" target="fail"/> - <transition event="timeout" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test208.txml.json b/test/scxml-test-framework/test/w3c/test208.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test208.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test208.txml.scxml b/test/scxml-test-framework/test/w3c/test208.txml.scxml deleted file mode 100644 index 8938858..0000000 --- a/test/scxml-test-framework/test/w3c/test208.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that cancel works. We cancel delayed event1. If cancel works, we get event2 first and pass. If -we get event1 or an error first, cancel didn't work and we fail. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send id="foo" event="event1" delay="1s"/> - <send event="event2" delay="5s"/> - <cancel sendid="foo"/> - </onentry> - - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test210.txml.json b/test/scxml-test-framework/test/w3c/test210.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test210.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test210.txml.scxml b/test/scxml-test-framework/test/w3c/test210.txml.scxml deleted file mode 100644 index 9d5fb5e..0000000 --- a/test/scxml-test-framework/test/w3c/test210.txml.scxml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that sendidexpr works with cancel. If it takes the most recent value of var1, it should cancel -delayed event1. Thus we get event2 first and pass. If we get event1 or an error first, cancel didn't work and we fail. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="'bar'"/> - </datamodel> - -<state id="s0"> - <onentry> - <send id="foo" event="event1" delay="1s"/> - <send event="event2" delay="5s"/> - <assign location="Var1" expr="'foo'"/> - <cancel sendidexpr="Var1"/> - </onentry> - - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test215.txml.json b/test/scxml-test-framework/test/w3c/test215.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test215.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test215.txml.scxml b/test/scxml-test-framework/test/w3c/test215.txml.scxml deleted file mode 100644 index 67b2158..0000000 --- a/test/scxml-test-framework/test/w3c/test215.txml.scxml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that typexpr is evaluated at runtime. If the original value of var1 is used, the invocation -will fail (test215sub1.scxml is not of type 'foo', even if the platform supports foo as a type). If -the runtime value is used, the invocation will succeed --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> - -<datamodel> - <data id="Var1" expr="'foo'"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="5s"/> - <assign location="Var1" expr="'http://www.w3.org/TR/scxml/'"/> - </onentry> - <invoke typeexpr="Var1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" datamodel="ecmascript" version="1.0"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="done.invoke" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test216.txml.json b/test/scxml-test-framework/test/w3c/test216.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test216.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test216.txml.scxml b/test/scxml-test-framework/test/w3c/test216.txml.scxml deleted file mode 100644 index e14aacf..0000000 --- a/test/scxml-test-framework/test/w3c/test216.txml.scxml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that srcexpr is evaluated at runtime. If the original value of var1 is used, the invocation -will fail (assuming that there is no script named 'foo'). If -the runtime value is used, the invocation will succeed --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<datamodel> - <data id="Var1" expr="'foo'"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="5s"/> - <assign location="Var1" expr="'file:test216sub1.scxml'"/> - </onentry> - <invoke srcexpr="Var1" type="http://www.w3.org/TR/scxml"/> - <transition event="done.invoke" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test220.txml.json b/test/scxml-test-framework/test/w3c/test220.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test220.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test220.txml.scxml b/test/scxml-test-framework/test/w3c/test220.txml.scxml deleted file mode 100644 index 0774ab1..0000000 --- a/test/scxml-test-framework/test/w3c/test220.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the scxml type is supported. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0"> - <onentry> - <send event="timeout" delay="5s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml></content> - </invoke> - <transition event="done.invoke" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test223.txml.json b/test/scxml-test-framework/test/w3c/test223.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test223.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test223.txml.scxml b/test/scxml-test-framework/test/w3c/test223.txml.scxml deleted file mode 100644 index 11baf9f..0000000 --- a/test/scxml-test-framework/test/w3c/test223.txml.scxml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that idlocation is supported. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" idlocation="Var1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition cond="Var1" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test224.txml.json b/test/scxml-test-framework/test/w3c/test224.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test224.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test224.txml.scxml b/test/scxml-test-framework/test/w3c/test224.txml.scxml deleted file mode 100644 index 47110d9..0000000 --- a/test/scxml-test-framework/test/w3c/test224.txml.scxml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the automatically generated id has the form stateid.platformid. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1"/> - <data id="Var2" expr="'s0.'"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" idlocation="Var1"> - <content> - <!-- when invoked, terminate returning done.invoke. This proves that the invocation succeeded. --> - <scxml version="1.0" initial="subFinal" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test225.txml.json b/test/scxml-test-framework/test/w3c/test225.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test225.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test225.txml.scxml b/test/scxml-test-framework/test/w3c/test225.txml.scxml deleted file mode 100644 index 39dcc78..0000000 --- a/test/scxml-test-framework/test/w3c/test225.txml.scxml +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the automatically generated id is unique, we call invoke twice and compare the ids. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1"/> - <data id="Var2"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" idlocation="Var1"> - <content> - <scxml initial="subFinal1" version="1.0" datamodel="ecmascript"> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <invoke type="http://www.w3.org/TR/scxml/" idlocation="Var2"> - <content> - <scxml initial="subFinal2" version="1.0" datamodel="ecmascript"> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - - <transition event="*" target="s1"/> -</state> - -<state id="s1"> - <transition cond="" target="fail"/> - <transition target="pass"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test226.txml.json b/test/scxml-test-framework/test/w3c/test226.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test226.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test226.txml.scxml b/test/scxml-test-framework/test/w3c/test226.txml.scxml deleted file mode 100644 index 57d6fa3..0000000 --- a/test/scxml-test-framework/test/w3c/test226.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- this is basically just a test that invoke works correctly and that you can pass data -to the invoked process. If the invoked session finds aParam==1, it exits, signalling -success. otherwise it will hang and the timeout in this doc signifies failure. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - - <invoke type="http://www.w3.org/TR/scxml/" src="file:test226sub1.txml"> - <param name="Var1" expr="1"/> - </invoke> - - <transition event="varBound" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test228.txml.json b/test/scxml-test-framework/test/w3c/test228.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test228.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test228.txml.scxml b/test/scxml-test-framework/test/w3c/test228.txml.scxml deleted file mode 100644 index 7979330..0000000 --- a/test/scxml-test-framework/test/w3c/test228.txml.scxml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the invokeid is included in events returned from the invoked process. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" id="foo"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke" target="s1"> - <assign location="Var1" expr="_event.invokeid"/> - </transition> - <transition event="*" target="fail"/> -</state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test229.txml.json b/test/scxml-test-framework/test/w3c/test229.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test229.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test229.txml.scxml b/test/scxml-test-framework/test/w3c/test229.txml.scxml deleted file mode 100644 index 6e6d5c1..0000000 --- a/test/scxml-test-framework/test/w3c/test229.txml.scxml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<!-- test that autofoward works. If the child process receives back a copy of the -childToParent event that it sends to this doc, it sends eventReceived, signalling success. (Note -that this doc is not required to process that event explicitly. It should be forwarded in any case.) Otherwise -it eventually times out and the done.invoke signals failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" autoforward="true"> - <content> - <!-- when invoked, send childToParent to parent. - If it is forwarded back to us, send - eventReceived to signal success and terminate. - Otherwise wait for timer to expire and terminate. --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childToParent"/> - <send event="timeout" delay="3s"/> - </onentry> - <transition event="childToParent" target="subFinal"> - <send target="#_parent" event="eventReceived"/> - </transition> - <transition event="*" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="childToParent"/> - <transition event="eventReceived" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test230.txml.json b/test/scxml-test-framework/test/w3c/test230.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test230.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test230.txml.scxml b/test/scxml-test-framework/test/w3c/test230.txml.scxml deleted file mode 100644 index 182da6b..0000000 --- a/test/scxml-test-framework/test/w3c/test230.txml.scxml +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0"?> -<!-- a manual test that an autofowarded event has the same fields and values as the original event. -the child process sends the parent process an event which is forwarded back to it. -Both the parent and child process print out the contents of the event. The tester -must check if they are the same and report his result. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" autoforward="true"> - <content> - <!-- when invoked, send childToParent to parent. If it is forwarded back to us, print out its - fields and terminate. --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childToParent"/> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="childToParent" target="subFinal"> - <log label="name is " expr="_event.name"/> - <log label="type is " expr="_event.type"/> - <log label="sendid is " expr="_event.sendid"/> - <log label="origin is " expr="_event.origin"/> - <log label="origintype is " expr="_event.origintype"/> - <log label="invokeid is " expr="_event.invokeid"/> - <log label="data is " expr="_event.data"/> - </transition> - <transition event="*" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="timeout" target="final"/> - - - <state id="s01"> - <transition event="childToParent" target="s02"> - <log label="name is " expr="_event.name"/> - <log label="type is " expr="_event.type"/> - <log label="sendid is " expr="_event.sendid"/> - <log label="origin is " expr="_event.origin"/> - <log label="origintype is " expr="_event.origintype"/> - <log label="invokeid is " expr="_event.invokeid"/> - <log label="data is " expr="_event.data"/> - </transition> - <transition event="*" target="fail"/> - </state> - - <state id="s02"> - <!-- wait till we get the done event to ensure that the child process has time to print out its results --> - <transition event="done.invoke" target="final"/> - </state> - -</state> - -<final id="final"/> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test232.txml.json b/test/scxml-test-framework/test/w3c/test232.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test232.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test232.txml.scxml b/test/scxml-test-framework/test/w3c/test232.txml.scxml deleted file mode 100644 index 2696fa0..0000000 --- a/test/scxml-test-framework/test/w3c/test232.txml.scxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a parent process can receive multiple events from a child process --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"> - <onentry> - <send target="#_parent" event="childToParent1"/> - <send target="#_parent" event="childToParent2"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - <transition event="timeout" target="fail"/> - - - <state id="s01"> - <transition event="childToParent1" target="s02"/> - </state> - - <state id="s02"> - <transition event="childToParent2" target="s03"/> - </state> - -<state id="s03"> - <transition event="done.invoke" target="pass"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test233.txml.json b/test/scxml-test-framework/test/w3c/test233.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test233.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test233.txml.scxml b/test/scxml-test-framework/test/w3c/test233.txml.scxml deleted file mode 100644 index 92cc8c2..0000000 --- a/test/scxml-test-framework/test/w3c/test233.txml.scxml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that finalize markup runs before the event is processed. The invoked process will -return 2 in _event.data.aParam, so that new value should be in force when we select -the transtitions. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"> - <onentry> - <send target="#_parent" event="childToParent"> - <param name="aParam" expr="2"/> - </send> - </onentry> - </final> - </scxml> - </content> - <finalize> - <assign location="Var1" expr="_event.data.aParam"/> - </finalize> - </invoke> - - <transition event="childToParent" cond="" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test234.txml.json b/test/scxml-test-framework/test/w3c/test234.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test234.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test234.txml.scxml b/test/scxml-test-framework/test/w3c/test234.txml.scxml deleted file mode 100644 index 41cabbf..0000000 --- a/test/scxml-test-framework/test/w3c/test234.txml.scxml +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> -<!-- test that only finalize markup in the invoking state runs. the first invoked process will -return 2 in _event.data.aParam, while second invoked process sleeps without returning any events. -Only the first finalize should execute. So when we get to s1 var1 should have value 2 but -var2 should still be set to 1 --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="p0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - <data id="Var2" expr="1"/> - </datamodel> -<parallel id="p0"> - <onentry> - <send event="timeout" delay="3s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="p01"> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="subFinal1" datamodel="ecmascript"> - <final id="subFinal1"> - <onentry> - <send target="#_parent" event="childToParent"> - <param name="aParam" expr="2"/> - </send> - </onentry> - </final> - </scxml> - </content> - <finalize> - <assign location="Var1" expr="_event.data.aParam"/> - </finalize> - </invoke> - - <transition event="childToParent" cond="" target="s1"/> - <transition event="childToParent" target="fail"/> - </state> - - <state id="p02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="sub0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal2"/> - </state> - <final id="subFinal2"/> - </scxml> - </content> - <finalize> - <assign location="Var2" expr="_event.data.aParam"/> - </finalize> - </invoke> - </state> - -</parallel> - - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test235.txml.json b/test/scxml-test-framework/test/w3c/test235.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test235.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test235.txml.scxml b/test/scxml-test-framework/test/w3c/test235.txml.scxml deleted file mode 100644 index a2809a4..0000000 --- a/test/scxml-test-framework/test/w3c/test235.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- test that done.invoke.id event has the right id. the invoked child terminates immediately -and should generate done.invoke.foo --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/" id="foo"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke.foo" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test236.txml.json b/test/scxml-test-framework/test/w3c/test236.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test236.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test236.txml.scxml b/test/scxml-test-framework/test/w3c/test236.txml.scxml deleted file mode 100644 index 08cdfef..0000000 --- a/test/scxml-test-framework/test/w3c/test236.txml.scxml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- test that done.invoke.id event is the last event we receive. the invoked process sends childToParent -in the exit handler of its final state. We should get it before the done.invoke, and we should get no -events after the done.invoke. Hence timeout indicates success --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"> - <onexit> - <send target="#_parent" event="childToParent"/> - </onexit> - </final> - </scxml> - </content> - </invoke> - - <transition event="childToParent" target="s1"/> - <transition event="done.invoke" target="fail"/> -</state> - -<state id="s1"> - <!-- here we should get done.invoke --> - <transition event="done.invoke" target="s2"/> - <transition event="*" target="fail"/> - </state> - -<state id="s2"> - <transition event="timeout" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test237.txml.json b/test/scxml-test-framework/test/w3c/test237.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test237.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test237.txml.scxml b/test/scxml-test-framework/test/w3c/test237.txml.scxml deleted file mode 100644 index 4bb72b0..0000000 --- a/test/scxml-test-framework/test/w3c/test237.txml.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<!-- test that cancelling works. invoked child sleeps for two seconds, then terminates. We -sleep for 1 sec in s0, then move to s1. This should cause the invocation to get cancelled. -If we receive done.invoke, the invocation wasn't cancelled, and we fail. If we receive no events by -the time timeout2 fires, success --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout1" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <!-- when invoked, sleep for 2 secs then terminate. Parent will try to cancel this session --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="timeout1" target="s1"/> - -</state> - -<state id="s1"> - <onentry> - <send event="timeout2" delay="2s"/> - </onentry> - <!-- here we should NOT get done.invoke --> - <transition event="done.invoke" target="fail"/> - <transition event="*" target="pass"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test239.txml.json b/test/scxml-test-framework/test/w3c/test239.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test239.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test239.txml.scxml b/test/scxml-test-framework/test/w3c/test239.txml.scxml deleted file mode 100644 index e9ea3cd..0000000 --- a/test/scxml-test-framework/test/w3c/test239.txml.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- test that markup can be specified both by 'src' and by <content> --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" src="file:test239sub1.scxml"/> - <transition event="done.invoke" target="s02"/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test239sub1.scxml. --> - <content> - <scxml version="1.0" initial="final" datamodel="ecmascript"> - <final id="final"/> - </scxml> - </content> - </invoke> - - <transition event="done.invoke" target="pass"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test240.txml.json b/test/scxml-test-framework/test/w3c/test240.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test240.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test240.txml.scxml b/test/scxml-test-framework/test/w3c/test240.txml.scxml deleted file mode 100644 index 34dc4bf..0000000 --- a/test/scxml-test-framework/test/w3c/test240.txml.scxml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified both by 'namelist' and by <param>. -invoked child will return success if its Var1 is set to 1, failure otherwise. This -test will fail schema validation because of the multiple occurences of Var1, but -should run correctly. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" namelist="Var1"> - <content> - <scxml initial="sub01" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - <state id="sub01"> - <transition cond="" target="subFinal1"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition event="success" target="s02"/> - <transition event="failure" target="fail"/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <param name="Var1" expr="1"/> - <content> - <scxml initial="sub02" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub02"> - <transition cond="" target="subFinal2"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <transition event="success" target="pass"/> - <transition event="failure" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test241.txml.json b/test/scxml-test-framework/test/w3c/test241.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test241.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test241.txml.scxml b/test/scxml-test-framework/test/w3c/test241.txml.scxml deleted file mode 100644 index c5ac9ff..0000000 --- a/test/scxml-test-framework/test/w3c/test241.txml.scxml +++ /dev/null @@ -1,100 +0,0 @@ -<?xml version="1.0"?> -<!-- The child process will return success ifits Var1 is set to 1, failure otherwise. For this test -we try passing in Var1 by param and by namelist and check that we either get two successes -or two failures. This test will fail schema validation due to multiple declarations of -Var1, but should run correctly. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <invoke type="http://www.w3.org/TR/scxml/" namelist="Var1"> - <content> - <scxml initial="sub01" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub01"> - <transition cond="" target="subFinal1"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal1"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition event="success" target="s02"/> - <transition event="failure" target="s03"/> - </state> - -<state id="s02"> - <invoke type="http://www.w3.org/TR/scxml/"> - <param name="Var1" expr="1"/> - <content> - <scxml initial="sub02" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub02"> - <transition cond="" target="subFinal2"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal2"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <!-- we got success in s01, so we need to do so here --> - <transition event="success" target="pass"/> - <transition event="failure" target="fail"/> - </state> - -<state id="s03"> - <invoke type="http://www.w3.org/TR/scxml/"> - <param name="Var1" expr="1"/> - <content> - <scxml initial="sub03" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub03"> - <transition cond="" target="subFinal3"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal3"> - <send target="#_parent" event="failure"/> - </transition> - </state> - - <final id="subFinal3"/> - </scxml> - </content> - </invoke> - <!-- we got failure in s01, so we need to do so here --> - <transition event="failure" target="pass"/> - <transition event="success" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test242.txml.json b/test/scxml-test-framework/test/w3c/test242.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test242.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test242.txml.scxml b/test/scxml-test-framework/test/w3c/test242.txml.scxml deleted file mode 100644 index f771751..0000000 --- a/test/scxml-test-framework/test/w3c/test242.txml.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> -<!-- test that markup specified by 'src' and by <content> is treated the same way. That means that -either we get done.invoke in both cases or in neither case (in which case we timeout) --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout1" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <invoke type="http://www.w3.org/TR/scxml/" src="file:test242sub1.scxml"/> - <transition event="done.invoke" target="s02"/> - <transition event="timeout1" target="s03"/> - </state> - -<state id="s02"> - <onentry> - <send event="timeout2" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test242sub1.scxml. --> - <content> - <scxml version="1.0" initial="subFinal1" datamodel="ecmascript"> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <!-- we got done.invoke last time, so we need it this time too --> - <transition event="done.invoke" target="pass"/> - <transition event="timeout2" target="fail"/> - </state> - -<state id="s03"> - <onentry> - <send event="timeout3" delay="1s"/> - </onentry> - <invoke type="http://www.w3.org/TR/scxml/"> - <!-- identical to test242sub1.scxml. --> - <content> - <scxml version="1.0" initial="subFinal2" datamodel="ecmascript"> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - <!-- we got timeout last time, so we need it this time too --> - <transition event="timeout3" target="pass"/> - <transition event="done.invoke" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test243.txml.json b/test/scxml-test-framework/test/w3c/test243.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test243.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test243.txml.scxml b/test/scxml-test-framework/test/w3c/test243.txml.scxml deleted file mode 100644 index 32b4c4f..0000000 --- a/test/scxml-test-framework/test/w3c/test243.txml.scxml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified by param. -test240sub1 will return success ifits Var1 is set to 1, failure otherwise. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <param name="Var1" expr="1"/> - <content> - <scxml version="1.0" initial="sub0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub0"> - <transition cond="" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="success" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test244.txml.json b/test/scxml-test-framework/test/w3c/test244.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test244.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test244.txml.scxml b/test/scxml-test-framework/test/w3c/test244.txml.scxml deleted file mode 100644 index 2c3c186..0000000 --- a/test/scxml-test-framework/test/w3c/test244.txml.scxml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- test that datamodel values can be specified by namelist. -invoked child will return success ifits Var1 is set to 1, failure otherwise. -This test will fail schema validation due to multiple occurrences of Var1, -but should run correctly. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" namelist="Var1"> - <content> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="sub0"> - <transition cond="" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="success" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test245.txml.json b/test/scxml-test-framework/test/w3c/test245.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test245.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test245.txml.scxml b/test/scxml-test-framework/test/w3c/test245.txml.scxml deleted file mode 100644 index 2d4b138..0000000 --- a/test/scxml-test-framework/test/w3c/test245.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that non-existent datamodel values are not set. Var2 is not defined in -invoked child's datamodel. It will will return success if its Var2 remains unbound, failure otherwise. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var2" expr="3"/> - </datamodel> - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/" namelist="Var2"> - <content> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <transition cond="Var2" target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <transition event="success" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test247.txml.json b/test/scxml-test-framework/test/w3c/test247.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test247.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test247.txml.scxml b/test/scxml-test-framework/test/w3c/test247.txml.scxml deleted file mode 100644 index 86324a8..0000000 --- a/test/scxml-test-framework/test/w3c/test247.txml.scxml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we get done.invoke. timeout indicates failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml version="1.0" initial="subFinal" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="done.invoke" target="pass"/> - <transition event="timeout" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test250.txml.json b/test/scxml-test-framework/test/w3c/test250.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test250.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test250.txml.scxml b/test/scxml-test-framework/test/w3c/test250.txml.scxml deleted file mode 100644 index 637afc9..0000000 --- a/test/scxml-test-framework/test/w3c/test250.txml.scxml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the onexit handlers run in the invoked process if it is cancelled. This has to be a -manual test, since this process won't accept any events from the child process once it has been cancelled. -Tester must examine log output from child process to determine success --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0" initial="sub01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - <onexit> - <log expr="'Exiting sub0'"/> - </onexit> - <state id="sub01"> - <onexit> - <log expr="'Exiting sub01'"/> - </onexit> - </state> - </state> - <final id="subFinal"> - <onentry> - <log expr="'entering final state, invocation was not cancelled'"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - - <!-- this transition will cause the invocation to be cancelled --> - <transition event="foo" target="final"/> - </state> - -<final id="final"/> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test252.txml.json b/test/scxml-test-framework/test/w3c/test252.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test252.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test252.txml.scxml b/test/scxml-test-framework/test/w3c/test252.txml.scxml deleted file mode 100644 index da77d4a..0000000 --- a/test/scxml-test-framework/test/w3c/test252.txml.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we don't process any events received from the invoked process once it is cancelled. child -process tries to send us childToParent in an onexit handler. If we get it, we fail. -timeout indicates success. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <transition event="timeout" target="pass"/> - <transition event="childToParent" target="fail"/> - <transition event="done.invoke" target="fail"/> - - <state id="s01"> - <onentry> - <send event="foo"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <transition event="timeout" target="subFinal"/> - <onexit> - <send target="#_parent" event="childToParent"/> - </onexit> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <!-- this transition will cause the invocation to be cancelled --> - <transition event="foo" target="s02"/> - </state> - - <state id="s02"/> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test253.txml.json b/test/scxml-test-framework/test/w3c/test253.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test253.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test253.txml.scxml b/test/scxml-test-framework/test/w3c/test253.txml.scxml deleted file mode 100644 index 56a9079..0000000 --- a/test/scxml-test-framework/test/w3c/test253.txml.scxml +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the scxml event processor is used in both directions. If child process uses the -scxml event i/o processor to communicate with us, send it an event. It will send back success if -this process uses the scxml processor to send the message to it, otherwise failure. For this test we allow -'scxml' as an alternative to the full url. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <transition event="timeout" target="fail"/> - - <invoke type="scxml" id="foo"> - <content> - <!-- inform parent we're running then wait for it to send us an event. If it uses the scxml event i/o - processor to do so, return success, otherwise return failure. --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var2"/> - </datamodel> - <state id="sub0"> - <onentry> - <send target="#_parent" event="childRunning"/> - </onentry> - - <transition event="parentToChild" target="sub1"> - <assign location="Var2" expr="_event.origintype"/> - </transition> - </state> - <state id="sub1"> - <transition cond="" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition cond="" target="subFinal"> - <send target="#_parent" event="success"/> - </transition> - <transition target="subFinal"> - <send target="#_parent" event="failure"/> - </transition> - </state> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - - <state id="s01"> - <transition event="childRunning" target="s02"> - <assign location="Var1" expr="_event.origintype"/> - </transition> - </state> - - <state id="s02"> - - <transition cond="" target="s03"> - <send target="#_foo" event="parentToChild"/> - </transition> - <transition cond="" target="s03"> - <send target="#_foo" event="parentToChild"/> - </transition> - - <transition target="fail"/> - - </state> - - - <state id="s03"> - <transition event="success" target="pass"/> - <transition event="fail" target="fail"/> - - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test276.txml.json b/test/scxml-test-framework/test/w3c/test276.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test276.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test276.txml.scxml b/test/scxml-test-framework/test/w3c/test276.txml.scxml deleted file mode 100644 index 2ec3f76..0000000 --- a/test/scxml-test-framework/test/w3c/test276.txml.scxml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> -<!-- test that values passed in from parent process override default values specified in the child, test276sub1.scxml. -The child returns event1 if var1 has value 1, event0 if it has default value 0. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - <state id="s0"> - <invoke type="scxml" src="file:test276sub1.scxml"> - <param name="Var1" expr="1"/> - </invoke> - <transition event="event1" target="pass"/> - <transition event="event0" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test279.txml.json b/test/scxml-test-framework/test/w3c/test279.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test279.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test279.txml.scxml b/test/scxml-test-framework/test/w3c/test279.txml.scxml deleted file mode 100644 index 8bd751c..0000000 --- a/test/scxml-test-framework/test/w3c/test279.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- testing that in case of early binding variables are assigned values at init time, before - the state containing them is visited --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - - <state id="s0"> - <transition cond="" target="pass"/> - - <transition target="fail"/> - - </state> - -<state id="s1"> - <datamodel> - <data id="Var1" expr="1"/> - </datamodel> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test280.txml.json b/test/scxml-test-framework/test/w3c/test280.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test280.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test280.txml.scxml b/test/scxml-test-framework/test/w3c/test280.txml.scxml deleted file mode 100644 index 232592f..0000000 --- a/test/scxml-test-framework/test/w3c/test280.txml.scxml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test late binding. var2 won't get bound until s1 is entered, so it shouldn't have a value in s0 and -accessing it should cause an error. It should get bound before the onentry code in s1 so it should be -possible access it there and assign its value to var1 --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" binding="late"> - - <datamodel> - <data id="Var1"/> - </datamodel> - - <state id="s0"> - <transition cond="typeof Var2 === 'undefined' " target="s1"/> - <transition target="fail"/> - </state> - -<state id="s1"> - <datamodel> - <data id="Var2" expr="1"/> - </datamodel> - <onentry> - <assign location="Var1" expr="Var2"/> - </onentry> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test286.txml.json b/test/scxml-test-framework/test/w3c/test286.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test286.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test286.txml.scxml b/test/scxml-test-framework/test/w3c/test286.txml.scxml deleted file mode 100644 index f07f3c0..0000000 --- a/test/scxml-test-framework/test/w3c/test286.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- test that assigment to a non-declared var causes an error. the transition on foo catches the case -where no error is raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0"> - <onentry> - <assign location="Var1" expr="1"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test287.txml.json b/test/scxml-test-framework/test/w3c/test287.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test287.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test287.txml.scxml b/test/scxml-test-framework/test/w3c/test287.txml.scxml deleted file mode 100644 index 69173b7..0000000 --- a/test/scxml-test-framework/test/w3c/test287.txml.scxml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- a simple test that a legal value may be assigned to a valid data model location --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0" initial="s0"> - -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="s0"> - <onentry> - <assign location="Var1" expr="1"/> - </onentry> - - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test294.txml.json b/test/scxml-test-framework/test/w3c/test294.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test294.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test294.txml.scxml b/test/scxml-test-framework/test/w3c/test294.txml.scxml deleted file mode 100644 index a5813de..0000000 --- a/test/scxml-test-framework/test/w3c/test294.txml.scxml +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a param inside donedata ends up in the data field of the done event and -that content inside donedata sets the full value of the event.data field --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" cond="" target="s1"> - </transition> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param name="Var1" expr="1"/> - </donedata> - </final> - </state> - - <state id="s1" initial="s11"> - - <transition event="done.state.s1" cond="_event.data === 'foo'" target="pass"> - </transition> - - <transition event="done.state.s1" target="fail"> - </transition> - - <state id="s11"> - <transition target="s12"/> - </state> - <final id="s12"> - <donedata> - <content>foo</content> - </donedata> - </final> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test298.txml.json b/test/scxml-test-framework/test/w3c/test298.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test298.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test298.txml.scxml b/test/scxml-test-framework/test/w3c/test298.txml.scxml deleted file mode 100644 index e6cae92..0000000 --- a/test/scxml-test-framework/test/w3c/test298.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- refence a non-existent data model location in param in donedata and see that the right error is raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - - <state id="s0" initial="s01"> - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param name="Var3" location="Var2"/> - </donedata> - </final> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test301.txml.json b/test/scxml-test-framework/test/w3c/test301.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test301.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test301.txml.scxml b/test/scxml-test-framework/test/w3c/test301.txml.scxml deleted file mode 100644 index de2d5ea..0000000 --- a/test/scxml-test-framework/test/w3c/test301.txml.scxml +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0"?> -<!-- the processor should reject this document because it can't download the script. -Therefore we fail if it runs at all. This test is valid only for datamodels that support scripting --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0"> - <script src="D:\foo"/> - - <state id="s0"> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test302.txml.json b/test/scxml-test-framework/test/w3c/test302.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test302.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test302.txml.scxml b/test/scxml-test-framework/test/w3c/test302.txml.scxml deleted file mode 100644 index bf1be6e..0000000 --- a/test/scxml-test-framework/test/w3c/test302.txml.scxml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a script is evaluated at load time. <conf:script> shoudl assign the value 1 to -Var1. Hence, if script is evaluated at download time, Var1 has a value in the initial state s0. -This test is valid only for datamodels that support scripting --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0"> - <script>var Var1 = 1</script> - - <state id="s0"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test303.txml.json b/test/scxml-test-framework/test/w3c/test303.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test303.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test303.txml.scxml b/test/scxml-test-framework/test/w3c/test303.txml.scxml deleted file mode 100644 index 2e44f18..0000000 --- a/test/scxml-test-framework/test/w3c/test303.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- to test that scripts are run as part of executable content, we check that it changes the value of a var at the -right point. This test is valid only for datamodels that support scripting --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0"> -<datamodel> -<data id="Var1" expr="0"/> -</datamodel> - - <state id="s0"> - <onentry> - <assign location="Var1" expr="2"/> - <script>var Var1 = 1</script> - </onentry> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test304.txml.json b/test/scxml-test-framework/test/w3c/test304.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test304.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test304.txml.scxml b/test/scxml-test-framework/test/w3c/test304.txml.scxml deleted file mode 100644 index 8230c82..0000000 --- a/test/scxml-test-framework/test/w3c/test304.txml.scxml +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a variable declared by a script can be accessed like any other part of the data model --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0"> - <script>var Var1 = 1</script> - - <state id="s0"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test307.txml.json b/test/scxml-test-framework/test/w3c/test307.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test307.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test307.txml.scxml b/test/scxml-test-framework/test/w3c/test307.txml.scxml deleted file mode 100644 index 4a38689..0000000 --- a/test/scxml-test-framework/test/w3c/test307.txml.scxml +++ /dev/null @@ -1,43 +0,0 @@ -<?xml version="1.0"?> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" binding="late"> - -<!-- with binding=late, in s0 we access a variable that isn't created until we get to s1. Then in s1 -we access a non-existent substructure of a variable. We use log tags to report the values that both operations -yield, and whether there are errors. This is a manual test, since the tester must report whether the output -is the same in the two cases --> - -<state id="s0"> - <onentry> - <log label="entering s0 value of Var 1 is: " expr="Var1"/> - <raise event="foo"/> - </onentry> - <transition event="error" target="s1"> - <log label="error in state s0" expr="_event"/> - </transition> - <transition event="foo" target="s1"> - <log label="no error in s0" expr=""/> - </transition> - </state> - -<state id="s1"> - <datamodel> - <data id="Var1" expr="1"/> - </datamodel> - - <onentry> - <log label="entering s1, value of non-existent substructure of Var 1 is: " expr="Var1.bar"/> - <raise event="bar"/> - </onentry> - - <transition event="error" target="final"> - <log label="error in state s1" expr="_event"/> - </transition> - <transition event="bar" target="final"> - <log label="No error in s1" expr=""/> - </transition> - -</state> - -<final id="final"/> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test309.txml.json b/test/scxml-test-framework/test/w3c/test309.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test309.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test309.txml.scxml b/test/scxml-test-framework/test/w3c/test309.txml.scxml deleted file mode 100644 index 168c753..0000000 --- a/test/scxml-test-framework/test/w3c/test309.txml.scxml +++ /dev/null @@ -1,14 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an expression that cannot be interpreted as a boolean is treated as false --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - -<state id="s0"> - <transition cond="return" target="fail"/> - <transition target="pass"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test310.txml.json b/test/scxml-test-framework/test/w3c/test310.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test310.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test310.txml.scxml b/test/scxml-test-framework/test/w3c/test310.txml.scxml deleted file mode 100644 index d9245e8..0000000 --- a/test/scxml-test-framework/test/w3c/test310.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- simple test of the in() predicate --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="p"> - - - <parallel id="p"> - - <state id="s0"> - <transition cond="In('s1')" target="pass"/> - <transition target="fail"/> - </state> - - <state id="s1"/> - </parallel> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test311.txml.json b/test/scxml-test-framework/test/w3c/test311.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test311.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test311.txml.scxml b/test/scxml-test-framework/test/w3c/test311.txml.scxml deleted file mode 100644 index 57724f5..0000000 --- a/test/scxml-test-framework/test/w3c/test311.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that assignment to a non-existent location yields an error --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - -<state id="s0"> - <onentry> - <assign location="Var1" expr="1"/> - </onentry> - <transition event="error.execution" target="pass"/> - <transition event=".*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test312.txml.json b/test/scxml-test-framework/test/w3c/test312.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test312.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test312.txml.scxml b/test/scxml-test-framework/test/w3c/test312.txml.scxml deleted file mode 100644 index f5855be..0000000 --- a/test/scxml-test-framework/test/w3c/test312.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that assignment with an illegal expr raises an error --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="return"/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="pass"/> - <transition event=".*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test313.txml.json b/test/scxml-test-framework/test/w3c/test313.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test313.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test313.txml.scxml b/test/scxml-test-framework/test/w3c/test313.txml.scxml deleted file mode 100644 index c697a4d..0000000 --- a/test/scxml-test-framework/test/w3c/test313.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- this is a manual test. The processor is allowed to reject this doc, but if it executes it with its illegal -expression, it must raise an error --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <assign location="Var1" expr="return"/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="pass"/> - <transition event=".*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test314.txml.json b/test/scxml-test-framework/test/w3c/test314.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test314.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test314.txml.scxml b/test/scxml-test-framework/test/w3c/test314.txml.scxml deleted file mode 100644 index c2e69c8..0000000 --- a/test/scxml-test-framework/test/w3c/test314.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- this is a manual test because the processor is allowed to reject this document. But if it executes it, -it should not raise an error until it gets to s03 and evaluates the illegal expr --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - - -<state id="s0" initial="s01"> - <transition event="error.execution" target="fail"/> - - <state id="s01"> - <transition target="s02"/> - </state> - - <state id="s02"> - <transition target="s03"/> - </state> - - <state id="s03"> - <onentry> - <assign location="Var1" expr="return"/> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="pass"/> - <transition event=".*" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test318.txml.json b/test/scxml-test-framework/test/w3c/test318.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test318.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test318.txml.scxml b/test/scxml-test-framework/test/w3c/test318.txml.scxml deleted file mode 100644 index 83a40a4..0000000 --- a/test/scxml-test-framework/test/w3c/test318.txml.scxml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _event stays bound during the onexit and entry into the next state --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> -<datamodel> - <data id="Var1"/> - </datamodel> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" target="s1"/> - </state> - - <state id="s1"> - <onentry> - <raise event="bar"/> - <!-- _event should still be bound to 'foo' at this point --> - <assign location="Var1" expr="_event.name"/> - </onentry> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test319.txml.json b/test/scxml-test-framework/test/w3c/test319.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test319.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test319.txml.scxml b/test/scxml-test-framework/test/w3c/test319.txml.scxml deleted file mode 100644 index adae97c..0000000 --- a/test/scxml-test-framework/test/w3c/test319.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _event is not bound before any event has been raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> - - <state id="s0"> - <onentry> - <if cond="_event"> - <raise event="bound"/> - <else/> - <raise event="unbound"/> - </if> - </onentry> - <transition event="unbound" target="pass"/> - <transition event="bound" target="fail"/> - - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test321.txml.json b/test/scxml-test-framework/test/w3c/test321.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test321.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test321.txml.scxml b/test/scxml-test-framework/test/w3c/test321.txml.scxml deleted file mode 100644 index c24a48f..0000000 --- a/test/scxml-test-framework/test/w3c/test321.txml.scxml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _sessionid is bound on startup --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> -<datamodel> - <data id="Var1" expr="$_sessionid"/> - </datamodel> - - <state id="s0"> -<transition cond="Var1" target="pass"/> - <transition cond="true" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test322.txml.json b/test/scxml-test-framework/test/w3c/test322.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test322.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test322.txml.scxml b/test/scxml-test-framework/test/w3c/test322.txml.scxml deleted file mode 100644 index bde0843..0000000 --- a/test/scxml-test-framework/test/w3c/test322.txml.scxml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _sessionid remains bound to the same value throught the session. this means that it can't -be assigned to --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> -<datamodel> - <data id="Var1" expr="_sessionid"/> - <data id="Var2"/> - </datamodel> - - <state id="s0"> - <transition target="s1"/> - - </state> - - <state id="s1"> - <onentry> - <assign location="_sessionid" expr="'otherName'"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" target="s2"/> - <transition event="*" target="fail"/> - </state> - - <state id="s2"> - - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test323.txml.json b/test/scxml-test-framework/test/w3c/test323.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test323.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test323.txml.scxml b/test/scxml-test-framework/test/w3c/test323.txml.scxml deleted file mode 100644 index 82122c6..0000000 --- a/test/scxml-test-framework/test/w3c/test323.txml.scxml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _name is bound on startup --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> -<datamodel> - <data id="Var1" expr="$_name"/> - </datamodel> - - <state id="s0"> -<transition cond="Var1" target="pass"/> - <transition cond="true" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test324.txml.json b/test/scxml-test-framework/test/w3c/test324.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test324.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test324.txml.scxml b/test/scxml-test-framework/test/w3c/test324.txml.scxml deleted file mode 100644 index 9162f9b..0000000 --- a/test/scxml-test-framework/test/w3c/test324.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _name stays bound till the session ends. This means that it cannot be assigned to --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> - - - <state id="s0"> - <transition cond="_name === 'machineName'" target="s1"/> - <transition target="fail"/> - </state> - - <state id="s1"> - <onentry> - <assign location="_name" expr="'otherName'"/> - </onentry> - <transition cond="_name === 'machineName'" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test325.txml.json b/test/scxml-test-framework/test/w3c/test325.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test325.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test325.txml.scxml b/test/scxml-test-framework/test/w3c/test325.txml.scxml deleted file mode 100644 index 1d3b8fc..0000000 --- a/test/scxml-test-framework/test/w3c/test325.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _ioprocessors is bound at startup. I'm not sure how to test for a set value or -how to test that the entries in it do represent I/O processors, since the set that each implementation -supports may be different. Suggestions welcome --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> -<datamodel> - <data id="Var1" expr="_ioprocessors"/> - </datamodel> - - - <state id="s0"> - <transition cond="Var1" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test326.txml.json b/test/scxml-test-framework/test/w3c/test326.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test326.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test326.txml.scxml b/test/scxml-test-framework/test/w3c/test326.txml.scxml deleted file mode 100644 index a1fe3f9..0000000 --- a/test/scxml-test-framework/test/w3c/test326.txml.scxml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- test that _ioprocessors stays bound till the session ends. This means that it cannot be assigned to --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> -<datamodel> - <data id="Var1" expr="_ioprocessors"/> - <data id="Var2"/> - </datamodel> - - <state id="s0"> - <transition cond="Var1" target="s1"/> - <transition cond="true" target="fail"/> - </state> - - - <state id="s1"> - <onentry> - <assign location="_ioprocessors" expr="'otherName'"/> - <raise event="foo"/> - </onentry> - - <transition event="error.execution" target="s2"/> - <transition event="*" target="fail"/> - </state> - - <state id="s2"> - <onentry> - <assign location="Var2" expr="_ioprocessors"/> - </onentry> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test329.txml.json b/test/scxml-test-framework/test/w3c/test329.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test329.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test329.txml.scxml b/test/scxml-test-framework/test/w3c/test329.txml.scxml deleted file mode 100644 index 90dd692..0000000 --- a/test/scxml-test-framework/test/w3c/test329.txml.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> -<!-- test that none of the system variables can be modified --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> - <datamodel> - <data id="Var1"/> - <data id="Var2"/> - <data id="Var3"/> - <data id="Var4"/> - </datamodel> - - <state id="s0"> - <onentry> - <!-- get _event bound so we can use it in s1--> - <raise event="foo"/> - <assign location="Var1" expr="_sessionid"/> - <assign location="_sessionid" expr="27"/> - </onentry> - - <transition event="foo" cond="" target="s1"/> - <transition event="*" target="fail"/> - </state> - - <state id="s1"> - <onentry> - <assign location="Var2" expr="_event"/> - <assign location="_event" expr="27"/> - </onentry> - <transition cond="" target="s2"/> - <transition target="fail"/> - </state> - -<state id="s2"> - <onentry> - <assign location="Var3" expr="_name"/> - <assign location="_name" expr="27"/> - </onentry> - <transition cond="" target="s3"/> - <transition target="fail"/> - </state> - - -<state id="s3"> - <onentry> - <assign location="Var4" expr="_ioprocessors"/> - <assign location="_ioprocessors" expr="27"/> - </onentry> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test330.txml.json b/test/scxml-test-framework/test/w3c/test330.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test330.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test330.txml.scxml b/test/scxml-test-framework/test/w3c/test330.txml.scxml deleted file mode 100644 index 600e1a7..0000000 --- a/test/scxml-test-framework/test/w3c/test330.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- check that the required fields are present in both internal and external events --> -<scxml xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" name="machineName"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" cond="'name' in _event && 'type' in _event && 'sendid' in _event && 'origin' in _event && 'invokeid' && 'data' in _event" target="s1"/> - <transition event="*" target="fail"/> - </state> - - <state id="s1"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" cond="'name' in _event && 'type' in _event && 'sendid' in _event && 'origin' in _event && 'invokeid' && 'data' in _event" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final xmlns="http://www.w3.org/2005/07/scxml" id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final xmlns="http://www.w3.org/2005/07/scxml" id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test331.txml.json b/test/scxml-test-framework/test/w3c/test331.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test331.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test331.txml.scxml b/test/scxml-test-framework/test/w3c/test331.txml.scxml deleted file mode 100644 index 8d814ea..0000000 --- a/test/scxml-test-framework/test/w3c/test331.txml.scxml +++ /dev/null @@ -1,61 +0,0 @@ -<?xml version="1.0"?> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0" name="machineName"> - -<!-- test that _event.type is set correctly for internal, platform, and external events --> -<datamodel> - <data id="Var1"/> - </datamodel> - - <state id="s0"> - <onentry> - <!-- internal event --> - <raise event="foo"/> - </onentry> - <transition event="foo" target="s1"> - <assign location="Var1" expr="_event.type"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="s2"/> - <transition target="fail"/> - </state> - -<state id="s2"> - <onentry> - <!-- this will generate an error, which is a platform event --> - <assign location="Var2" expr="1"/> - </onentry> - <transition event="error" target="s3"> - <assign location="Var1" expr="_event.type"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s3"> - <transition cond="" target="s4"/> - <transition target="fail"/> - </state> - - <state id="s4"> - <onentry> - <!-- external event --> - <send event="foo"/> - </onentry> - <transition event="foo" target="s5"> - <assign location="Var1" expr="_event.type"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s5"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test332.txml.json b/test/scxml-test-framework/test/w3c/test332.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test332.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test332.txml.scxml b/test/scxml-test-framework/test/w3c/test332.txml.scxml deleted file mode 100644 index c3bee02..0000000 --- a/test/scxml-test-framework/test/w3c/test332.txml.scxml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- test that sendid is present in error events triggered by send errors --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" datamodel="ecmascript" name="machineName"> - <datamodel> - <data id="Var1"/> - <data id="Var2"/> - </datamodel> - - - <state id="s0"> - <onentry> - <!-- this will raise an error and also store the sendid in var1 --> - <send target="baz" event="foo" idlocation="Var1"/> - </onentry> - <transition event="error" target="s1"> - <!-- get the sendid out of the error event --> - <assign location="Var2" expr="_event.sendid"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> -<!-- make sure that the sendid in the error event matches the one generated when send executed --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test333.txml.json b/test/scxml-test-framework/test/w3c/test333.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test333.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test333.txml.scxml b/test/scxml-test-framework/test/w3c/test333.txml.scxml deleted file mode 100644 index 9c30dd5..0000000 --- a/test/scxml-test-framework/test/w3c/test333.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- make sure sendid is blank in a non-error event --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" datamodel="ecmascript" name="machineName"> - - <state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" cond="_event.sendid == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test335.txml.json b/test/scxml-test-framework/test/w3c/test335.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test335.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test335.txml.scxml b/test/scxml-test-framework/test/w3c/test335.txml.scxml deleted file mode 100644 index 1b6e7fb..0000000 --- a/test/scxml-test-framework/test/w3c/test335.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that origin field is blank for internal events --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" datamodel="ecmascript" name="machineName"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" cond="_event.origin == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test336.txml.json b/test/scxml-test-framework/test/w3c/test336.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test336.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test336.txml.scxml b/test/scxml-test-framework/test/w3c/test336.txml.scxml deleted file mode 100644 index 0829262..0000000 --- a/test/scxml-test-framework/test/w3c/test336.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the origin field of an external event contains a URL that lets you send back to the originator. In -this case it's the same session, so if we get bar we succeed --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> - - <state id="s0"> - <onentry> - <send event="foo"/> - </onentry> - <transition event="foo" target="s1"> - <send event="bar" targetexpr="_event.origin" typeexpr="_event.origintype"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <onentry> - <send event="baz"/> - </onentry> - <transition event="bar" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test337.txml.json b/test/scxml-test-framework/test/w3c/test337.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test337.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test337.txml.scxml b/test/scxml-test-framework/test/w3c/test337.txml.scxml deleted file mode 100644 index bea5121..0000000 --- a/test/scxml-test-framework/test/w3c/test337.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that origintype is blank on internal events --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0" name="machineName"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" cond="_event.origintype == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test338.txml.json b/test/scxml-test-framework/test/w3c/test338.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test338.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test338.txml.scxml b/test/scxml-test-framework/test/w3c/test338.txml.scxml deleted file mode 100644 index 429b945..0000000 --- a/test/scxml-test-framework/test/w3c/test338.txml.scxml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- test that invokeid is set correctly in events received from an invoked process. timeout event catches the -case where the invoke doesn't work correctly --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1"/> - <data id="Var2"/> - </datamodel> - - <state id="s0"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - <invoke idlocation="Var1" type="http://www.w3.org/TR/scxml/"> - <content> - <scxml initial="sub0" version="1.0" datamodel="ecmascript" name="machineName"> - <final id="sub0"> - <onentry> - <send target="#_parent" event="event1"/> - </onentry> - </final> - </scxml> - </content> - </invoke> - <transition event="event1" target="s1"> - <assign location="Var2" expr="_event.invokeid"/> - </transition> - <transition event="event0" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test339.txml.json b/test/scxml-test-framework/test/w3c/test339.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test339.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test339.txml.scxml b/test/scxml-test-framework/test/w3c/test339.txml.scxml deleted file mode 100644 index 70b366c..0000000 --- a/test/scxml-test-framework/test/w3c/test339.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that invokeid is blank in an event that wasn't returned from an invoked process --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> - - <state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="foo" cond="_event.invokeid == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test342.txml.json b/test/scxml-test-framework/test/w3c/test342.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test342.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test342.txml.scxml b/test/scxml-test-framework/test/w3c/test342.txml.scxml deleted file mode 100644 index 1ce27a4..0000000 --- a/test/scxml-test-framework/test/w3c/test342.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that eventexpr works and sets the name field of the resulting event --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> - <datamodel> - <data id="Var1" expr="'foo'"/> - <data id="Var2"/> - </datamodel> - - <state id="s0"> - <onentry> - <send eventexpr="Var1"/> - </onentry> - <transition event="foo" target="s1"> - <assign location="Var2" expr="_event.name"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test343.txml.json b/test/scxml-test-framework/test/w3c/test343.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test343.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test343.txml.scxml b/test/scxml-test-framework/test/w3c/test343.txml.scxml deleted file mode 100644 index 68b2b6b..0000000 --- a/test/scxml-test-framework/test/w3c/test343.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal <param> produces error.execution and empty event.data --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" target="fail"/> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param location="Varfoo" name="someParam"/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" cond="_event.data == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test344.txml.json b/test/scxml-test-framework/test/w3c/test344.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test344.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test344.txml.scxml b/test/scxml-test-framework/test/w3c/test344.txml.scxml deleted file mode 100644 index c3983ae..0000000 --- a/test/scxml-test-framework/test/w3c/test344.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a non-boolean cond expression evaluates to false and causes error.execution to be raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - -<state id="s0"> - <transition cond="return" target="fail"/> - <transition target="s1"/> - </state> - -<state id="s1"> - <onentry> - <raise event="foo"/> - </onentry> - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test346.txml.json b/test/scxml-test-framework/test/w3c/test346.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test346.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test346.txml.scxml b/test/scxml-test-framework/test/w3c/test346.txml.scxml deleted file mode 100644 index f9c8081..0000000 --- a/test/scxml-test-framework/test/w3c/test346.txml.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> -<!-- test that any attempt to change the value of a system variable causes error.execution to be raised. -Event1..4 are there to catch the case where the error event is not raised. In cases where it is, we have -to dispose of eventn in the next state, hence the targetless transitions (which simply throw away the event.) --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" name="machineName"> - - - <state id="s0"> - <onentry> - <assign location="_sessionid" expr="'otherName'"/> - <raise event="event1"/> - </onentry> - - <transition event="error.execution" target="s1"/> - <transition event="*" target="fail"/> - </state> - - <state id="s1"> - <onentry> - <assign location="_event" expr="'otherName'"/> - <raise event="event2"/> - </onentry> - <!-- throw out event1 if it's still around --> - <transition event="event1"/> - <transition event="error.execution" target="s2"/> - <!-- event1 would trigger this transition if we didn't drop it. We want this transition to have - a very general trigger to catch cases where the wrong error event was raised --> - <transition event="*" target="fail"/> - </state> - -<state id="s2"> - <onentry> - <assign location="_ioprocessors" expr="'otherName'"/> - <raise event="event3"/> - </onentry> - <transition event="event2"/> - <transition event="error.execution" target="s3"/> - <transition event="*" target="fail"/> - </state> - -<state id="s3"> - <onentry> - <assign location="_name" expr="'otherName'"/> - <raise event="event4"/> - </onentry> - <transition event="event3"/> - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test355.txml.json b/test/scxml-test-framework/test/w3c/test355.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test355.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test355.txml.scxml b/test/scxml-test-framework/test/w3c/test355.txml.scxml deleted file mode 100644 index 03d4a09..0000000 --- a/test/scxml-test-framework/test/w3c/test355.txml.scxml +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0"?> -<!-- test that default initial state is first in document order. If we enter s0 first we succeed, if s1, failure. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - - -<state id="s0"> - <transition target="pass"/> -</state> - -<state id="s1"> - <transition target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test364.txml.json b/test/scxml-test-framework/test/w3c/test364.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test364.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test364.txml.scxml b/test/scxml-test-framework/test/w3c/test364.txml.scxml deleted file mode 100644 index 9040887..0000000 --- a/test/scxml-test-framework/test/w3c/test364.txml.scxml +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0"?> -<!-- test that default initial states are entered when a compound state is entered. First we test -the 'initial' attribute, then the initial element, then default to the first child in document order. -If we get to s01111 we succeed, if any other state, failure. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" initial="s1" version="1.0"> - -<state id="s1" initial="s11p112 s11p122"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - <state id="s11" initial="s111"> - <state id="s111"/> - <parallel id="s11p1"> - <state id="s11p11" initial="s11p111"> - <state id="s11p111"/> - <state id="s11p112"> - <onentry> - <raise event="In-s11p112"/> - </onentry> - </state> - </state> - <state id="s11p12" initial="s11p121"> - <state id="s11p121"/> - <state id="s11p122"> - <transition event="In-s11p112" target="s2"/> - </state> - </state> - </parallel> - </state> -</state> - -<state id="s2"> - <initial> - <transition target="s21p112 s21p122"/> - </initial> - <transition event="timeout" target="fail"/> - <state id="s21" initial="s211"> - <state id="s211"/> - <parallel id="s21p1"> - <state id="s21p11" initial="s21p111"> - <state id="s21p111"/> - <state id="s21p112"> - <onentry> - <raise event="In-s21p112"/> - </onentry> - </state> - </state> - <state id="s21p12" initial="s21p121"> - <state id="s21p121"/> - <state id="s21p122"> - <transition event="In-s21p112" target="s3"/> - </state> - </state> - </parallel> - </state> -</state> - -<state id="s3"> - <transition target="fail"/> - <state id="s31"> - <state id="s311"> - <state id="s3111"> - <transition target="pass"/> - </state> - <state id="s3112"/> - <state id="s312"/> - <state id="s32"/> -</state> -</state> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test372.txml.json b/test/scxml-test-framework/test/w3c/test372.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test372.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test372.txml.scxml b/test/scxml-test-framework/test/w3c/test372.txml.scxml deleted file mode 100644 index 7e2a128..0000000 --- a/test/scxml-test-framework/test/w3c/test372.txml.scxml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that entering a final state generates done.state.parentid after executing the onentry elements. -Var1 should be set to 2 (but not 3) by the time the event is raised --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0" initial="s0final"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="done.state.s0" cond="" target="pass"/> - <transition event="*" target="fail"/> - - <final id="s0final"> - <onentry> - <assign location="Var1" expr="2"/> - </onentry> - <onexit> - <assign location="Var1" expr="3"/> - </onexit> - </final> -</state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test375.txml.json b/test/scxml-test-framework/test/w3c/test375.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test375.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test375.txml.scxml b/test/scxml-test-framework/test/w3c/test375.txml.scxml deleted file mode 100644 index 69a2e7f..0000000 --- a/test/scxml-test-framework/test/w3c/test375.txml.scxml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that onentry handlers are executed in document order. event1 should be raised before event2 --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - - - -<state id="s0"> - <onentry> - <raise event="event1"/> - </onentry> - <onentry> - <raise event="event2"/> - </onentry> - - <transition event="event1" target="s1"/> - <transition event="*" target="fail"/> - -</state> - -<state id="s1"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test376.txml.json b/test/scxml-test-framework/test/w3c/test376.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test376.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test376.txml.scxml b/test/scxml-test-framework/test/w3c/test376.txml.scxml deleted file mode 100644 index 8656795..0000000 --- a/test/scxml-test-framework/test/w3c/test376.txml.scxml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- test that each onentry handler is a separate block. The <send> of event1 will cause an error but - the increment to var1 should happen anyways --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onentry> - <send target="baz" event="event1"/> - </onentry> - <onentry> - <assign location="Var1" expr="Var1 + 1"/> - </onentry> - - <transition cond="" target="pass"/> - <transition target="fail"/> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test377.txml.json b/test/scxml-test-framework/test/w3c/test377.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test377.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test377.txml.scxml b/test/scxml-test-framework/test/w3c/test377.txml.scxml deleted file mode 100644 index cd21f28..0000000 --- a/test/scxml-test-framework/test/w3c/test377.txml.scxml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> -<!-- test that onexit handlers are executed in document order. event1 should be raised before event2 --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - - - -<state id="s0"> - <onexit> - <raise event="event1"/> - </onexit> - <onexit> - <raise event="event2"/> - </onexit> - - <transition target="s1"/> - </state> - - <state id="s1"> - - <transition event="event1" target="s2"/> - <transition event="*" target="fail"/> - -</state> - -<state id="s2"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> -</state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test378.txml.json b/test/scxml-test-framework/test/w3c/test378.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test378.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test378.txml.scxml b/test/scxml-test-framework/test/w3c/test378.txml.scxml deleted file mode 100644 index 4254686..0000000 --- a/test/scxml-test-framework/test/w3c/test378.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that each onexithandler is a separate block. The <send> of event1 will cause an error but - the increment to var1 should happen anyways --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="1"/> - </datamodel> - -<state id="s0"> - <onexit> - <send target="baz" event="event1"/> - </onexit> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - -<transition target="s1"/> -</state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test387.txml.json b/test/scxml-test-framework/test/w3c/test387.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test387.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test387.txml.scxml b/test/scxml-test-framework/test/w3c/test387.txml.scxml deleted file mode 100644 index a56d7d8..0000000 --- a/test/scxml-test-framework/test/w3c/test387.txml.scxml +++ /dev/null @@ -1,99 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the default history state works correctly. From initial state s3 we take a transition to s0's default -shallow history state. That should generate "enteringS011", which takes us to s4. In s4, we -transition to s1's default deep history state. We should end up in s122, generating "enteringS122". Otherwise failure.--> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s3" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - - <transition event="enteringS011" target="s4"/> - <transition event="*" target="fail"/> - - <history type="shallow" id="s0HistShallow"> - <transition target="s01"/> - </history> - <history type="deep" id="s0HistDeep"> - <transition target="s022"/> - </history> - <state id="s01" initial="s011"> - <state id="s011"> - <onentry> - <raise event="enteringS011"/> - </onentry> - </state> - <state id="s012"> - <onentry> - <raise event="enteringS012"/> - </onentry> - </state> - </state> - <state id="s02" initial="s021"> - <state id="s021"> - <onentry> - <raise event="enteringS021"/> - </onentry> - </state> - <state id="s022"> - <onentry> - <raise event="enteringS022"/> - </onentry> - </state> - </state> - -</state> - -<state id="s1" initial="s11"> - - <transition event="enteringS122" target="pass"/> - <transition event="*" target="fail"/> - - <history type="shallow" id="s1HistShallow"> - <transition target="s11"/> - </history> - <history type="deep" id="s1HistDeep"> - <transition target="s122"/> - </history> - <state id="s11" initial="s111"> - <state id="s111"> - <onentry> - <raise event="enteringS111"/> - </onentry> - </state> - <state id="s112"> - <onentry> - <raise event="enteringS112"/> - </onentry> - </state> - </state> - <state id="s12" initial="s121"> - <state id="s121"> - <onentry> - <raise event="enteringS121"/> - </onentry> - </state> - <state id="s122"> - <onentry> - <raise event="enteringS122"/> - </onentry> - </state> - </state> - -</state> - - -<state id="s3"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition target="s0HistShallow"/> -</state> - -<state id="s4"> - <transition target="s1HistDeep"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test388.txml.json b/test/scxml-test-framework/test/w3c/test388.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test388.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test388.txml.scxml b/test/scxml-test-framework/test/w3c/test388.txml.scxml deleted file mode 100644 index c0c2e32..0000000 --- a/test/scxml-test-framework/test/w3c/test388.txml.scxml +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> -<!-- test that history states works correctly. The counter Var1 counts how many times -we have entered s0. The initial state is s012. We then transition to s1, which transitions -to s0's deep history state. entering.s012 should be raised, otherwise failure. Then we transition -to s02, which transitions to s0's shallow history state. That should have value s01, and its initial -state is s011, so we should get entering.s011, otherwise failure.--> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s012" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0" initial="s01"> - <onentry> - <assign location="Var1" expr="Var1 + 1"/> - </onentry> - - <!-- the first time through, go to s1, setting a timer just in case something hangs --> - <transition event="entering.s012" cond="" target="s1"> - <send event="timeout" delay="2s"/> - </transition> - - <!-- the second time, we should get entering.s012. If so, go to s2, otherwise fail --> - <transition event="entering.s012" cond="" target="s2"/> - <transition event="entering" cond="" target="fail"/> - - <!-- the third time we should get entering-s011. If so, pass, otherwise fail --> - <transition event="entering.s011" cond="" target="pass"/> - <transition event="entering" cond="" target="fail"/> - - <!-- if we timeout, the state machine is hung somewhere, so fail --> - <transition event="timeout" target="fail"/> - - <history type="shallow" id="s0HistShallow"> - <transition target="s02"/> - </history> - <history type="deep" id="s0HistDeep"> - <transition target="s022"/> - </history> - <state id="s01" initial="s011"> - <state id="s011"> - <onentry> - <raise event="entering.s011"/> - </onentry> - </state> - <state id="s012"> - <onentry> - <raise event="entering.s012"/> - </onentry> - </state> - </state> - <state id="s02" initial="s021"> - <state id="s021"> - <onentry> - <raise event="entering.s021"/> - </onentry> - </state> - <state id="s022"> - <onentry> - <raise event="entering.s022"/> - </onentry> - </state> - </state> - -</state> - - -<state id="s1"> - <transition target="s0HistDeep"/> -</state> - -<state id="s2"> - <transition target="s0HistShallow"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test396.txml.json b/test/scxml-test-framework/test/w3c/test396.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test396.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test396.txml.scxml b/test/scxml-test-framework/test/w3c/test396.txml.scxml deleted file mode 100644 index dbd6997..0000000 --- a/test/scxml-test-framework/test/w3c/test396.txml.scxml +++ /dev/null @@ -1,18 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the value in _event.name matches the event name used to match against transitions --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - -<state id="s0"> - <onentry> - <raise event="foo"/> - </onentry> - - - <transition event="foo" cond="_event.name == 'foo'" target="pass"/> - <transition event="foo" target="fail"/> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test399.txml.json b/test/scxml-test-framework/test/w3c/test399.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test399.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test399.txml.scxml b/test/scxml-test-framework/test/w3c/test399.txml.scxml deleted file mode 100644 index 7ebccb1..0000000 --- a/test/scxml-test-framework/test/w3c/test399.txml.scxml +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the event name matching works correctly, including prefix matching and the fact -that the event attribute of transition may contain multiple event designators. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="2s"/> - </onentry> - - <!-- this will catch the failure case --> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <onentry> - <raise event="foo"/> - </onentry> - <!-- test that an event can match against a transition with multiple descriptors --> - <transition event="foo bar" target="s02"/> - </state> - - <state id="s02"> - <onentry> - <raise event="bar"/> - </onentry> - <!-- test that an event can match the second descriptor as well --> - <transition event="foo bar" target="s03"/> - </state> - - <state id="s03"> - <onentry> - <raise event="foo.zoo"/> - </onentry> - <!-- test that a prefix descriptor matches --> - <transition event="foo bar" target="s04"/> - </state> - -<state id="s04"> - <onentry> - <raise event="foos"/> - </onentry> - <!-- test that only token prefixes match --> - <transition event="foo" target="fail"/> - <transition event="foos" target="s05"/> -</state> - -<state id="s05"> - <onentry> - <raise event="foo.zoo"/> - </onentry> - <!-- test that .* works at the end of a descriptor --> - <transition event="foo.*" target="s06"/> - </state> - - <state id="s06"> - <onentry> - <raise event="foo"/> - </onentry> - <!-- test that "*" works by itself --> - <transition event="*" target="pass"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test401.txml.json b/test/scxml-test-framework/test/w3c/test401.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test401.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test401.txml.scxml b/test/scxml-test-framework/test/w3c/test401.txml.scxml deleted file mode 100644 index 697ec0e..0000000 --- a/test/scxml-test-framework/test/w3c/test401.txml.scxml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0"?> -<!-- test that errors go in the internal event queue. We send ourselves an external event foo, then perform -and operation that raises an error. Then check that the error event is processed first, even though -it was raised second --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="foo"/> - <!-- assigning to a non-existent location should raise an error --> - <assign location="Var1" expr="2"/> - </onentry> - - - <transition event="foo" target="fail"/> - <transition event="error" target="pass"/> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test402.txml.json b/test/scxml-test-framework/test/w3c/test402.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test402.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test402.txml.scxml b/test/scxml-test-framework/test/w3c/test402.txml.scxml deleted file mode 100644 index 8527c39..0000000 --- a/test/scxml-test-framework/test/w3c/test402.txml.scxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- the assertion that errors are 'like any other event' is pretty broad, but we can check that they -are pulled off the internal queue in order, and that prefix matching works on them. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <!-- catch the failure case --> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <onentry> - <!-- the first internal event. The error will be the second, and event2 will be the third --> - <raise event="event1"/> - <!-- assigning to a non-existent location should raise an error --> - <assign location="Var1" expr="2"/> - </onentry> - - <transition event="event1" target="s02"> - <raise event="event2"/> - </transition> - <transition event="*" target="fail"/> - </state> - -<state id="s02"> - <transition event="error" target="s03"/> - <transition event="*" target="fail"/> - </state> - -<state id="s03"> - <transition event="event2" target="pass"/> - <transition event="*" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test403a.txml.json b/test/scxml-test-framework/test/w3c/test403a.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test403a.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test403a.txml.scxml b/test/scxml-test-framework/test/w3c/test403a.txml.scxml deleted file mode 100644 index a40d623..0000000 --- a/test/scxml-test-framework/test/w3c/test403a.txml.scxml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0"?> -<!-- we test one part of 'optimal enablement' meaning that of all transitions that are enabled, we chose the ones -in child states over parent states, and use document order to break ties. We have -a parent state s0 with two children, s01 and s02. In s01, we test that a) if -a transition in the child matches, we don't consider matches in the parent and b) -that if two transitions match in any state, we take the first in document order. -In s02 we test that we take a transition in the parent if there is no -matching transition in the child. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <!-- catch the failure case --> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - <transition event="event1" target="fail"/> - <transition event="event2" target="pass"/> - - <state id="s01"> - <onentry> - <!-- this should be caught by the first transition in this state, taking us to S02 --> - <raise event="event1"/> - </onentry> - - <transition event="event1" target="s02"/> - <transition event="*" target="fail"/> - </state> - -<state id="s02"> - <onentry> - <!-- since the local transition has a cond that evaluates to false this should be caught by a - transition in the parent state, taking us to pass --> - <raise event="event2"/> - </onentry> - <transition event="event1" target="fail"/> - <transition event="event2" cond="false" target="fail"/> - </state> - -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test403b.txml.json b/test/scxml-test-framework/test/w3c/test403b.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test403b.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test403b.txml.scxml b/test/scxml-test-framework/test/w3c/test403b.txml.scxml deleted file mode 100644 index 6d694b0..0000000 --- a/test/scxml-test-framework/test/w3c/test403b.txml.scxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that 'optimally enabled set' really is a set, specifically that if a transition is optimally enabled in -two different states, it is taken only once. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0" initial="p0"> - <!-- this transition should never be taken because a transition in a lower state should - always be selected --> - <transition event="event1"> - <assign location="Var1" expr="Var1 + 1"/> - </transition> - - - - <parallel id="p0"> - - <onentry> - <raise event="event1"/> - <raise event="event2"/> - </onentry> - - <!-- this transition will be selected by both states p0s1 and p0s2, but should be executed only once --> - <transition event="event1"> - <assign location="Var1" expr="Var1 + 1"/> - </transition> - - <state id="p0s1"> - <transition event="event2" cond="" target="pass"/> - <transition event="event2" target="fail"/> - </state> - - <state id="p0s2"/> - -</parallel> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test403c.txml.json b/test/scxml-test-framework/test/w3c/test403c.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test403c.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test403c.txml.scxml b/test/scxml-test-framework/test/w3c/test403c.txml.scxml deleted file mode 100644 index a816904..0000000 --- a/test/scxml-test-framework/test/w3c/test403c.txml.scxml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> -<!-- we test 'optimally enabled set', specifically that preemption works correctly --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0" initial="p0"> - <onentry> - <raise event="event1"/> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="event2" target="fail"/> - <transition event="timeout" target="fail"/> - - <parallel id="p0"> - - <state id="p0s1"> - <transition event="event1"/> - <transition event="event2"/> - </state> - - <state id="p0s2"> - <transition event="event1" target="p0s1"> - <raise event="event2"/> - </transition> - - </state> - - <state id="p0s3"> - <!-- this transition should be blocked by the one in p0s2--> - <transition event="event1" target="fail"/> - <!-- this transition will preempt the one that p0s2 inherits - from an ancestor --> - <transition event="event2" target="s1"/> - - </state> - -<state id="p0s4"> - <!-- this transition never gets preempted, should fire twice --> - <transition event="*"> - <assign location="Var1" expr="Var1 + 1"/> - </transition> - </state> - -</parallel> -</state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test404.txml.json b/test/scxml-test-framework/test/w3c/test404.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test404.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test404.txml.scxml b/test/scxml-test-framework/test/w3c/test404.txml.scxml deleted file mode 100644 index a37534a..0000000 --- a/test/scxml-test-framework/test/w3c/test404.txml.scxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0"?> -<!-- test that states are exited in exit order (children before parents with reverse doc order used to break ties - before the executable content in the transitions. event1, event2, event3, event4 should be raised in that - order when s01p is exited --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01p"> - - - -<parallel id="s01p"> - <onexit> - <!-- this should be the 3rd event raised --> - <raise event="event3"/> - </onexit> - <transition target="s02"> - <!-- this should be the fourth event raised --> - <raise event="event4"/> - </transition> - - <state id="s01p1"> - <onexit> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onexit> - </state> - - <state id="s01p2"> - <!-- this should be the first event raised --> - <onexit> - <raise event="event1"/> - </onexit> - </state> - </parallel> - - <state id="s02"> - <transition event="event1" target="s03"/> - <transition event="*" target="fail"/> - </state> - - <state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" target="fail"/> - </state> - - <state id="s04"> - <transition event="event3" target="s05"/> - <transition event="*" target="fail"/> - </state> - - <state id="s05"> - <transition event="event4" target="pass"/> - <transition event="*" target="fail"/> - </state> - - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test405.txml.json b/test/scxml-test-framework/test/w3c/test405.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test405.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test405.txml.scxml b/test/scxml-test-framework/test/w3c/test405.txml.scxml deleted file mode 100644 index 48275ef..0000000 --- a/test/scxml-test-framework/test/w3c/test405.txml.scxml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the executable content in the transitions is executed in document order after -the states are exited. event1, event2, event3, event4 should be raised in that order when the -state machine is entered --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - -<state id="s0" initial="s01p"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - -<parallel id="s01p"> - <transition event="event1" target="s02"/> - - - <state id="s01p1" initial="s01p11"> - <state id="s01p11"> - <onexit> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onexit> - <transition target="s01p12"> - <!-- this should be the third event raised --> - <raise event="event3"/> - </transition> - </state> - <state id="s01p12"/> - </state> <!-- end s01p1 --> - - <state id="s01p2" initial="s01p21"> - <state id="s01p21"> - <onexit> - <!-- this should be the first event raised --> - <raise event="event1"/> - </onexit> - <transition target="s01p22"> - <!-- this should be the fourth event raised --> - <raise event="event4"/> - </transition> - </state> - <state id="s01p22"/> - - </state> <!-- end s01p2 --> - </parallel> - - - <state id="s02"> - <transition event="event2" target="s03"/> - <transition event="*" target="fail"/> - </state> - - <state id="s03"> - <transition event="event3" target="s04"/> - <transition event="*" target="fail"/> - </state> - - - <state id="s04"> - <transition event="event4" target="pass"/> - <transition event="*" target="fail"/> - </state> - - </state> <!-- end s01 --> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test406.txml.json b/test/scxml-test-framework/test/w3c/test406.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test406.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test406.txml.scxml b/test/scxml-test-framework/test/w3c/test406.txml.scxml deleted file mode 100644 index 66c83fd..0000000 --- a/test/scxml-test-framework/test/w3c/test406.txml.scxml +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0"?> -<!-- Test that states are entered in entry order (parents before children with document order used to break ties) -after the executable content in the transition is executed. event1, event2, event3, event4 should be raised in that -order when the transition in s01 is taken --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s0" datamodel="ecmascript"> - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s01"> - <transition target="s0p2"> - <!-- this should be the first event raised --> - <raise event="event1"/> - </transition> - </state> - -<parallel id="s0p2"> - - <transition event="event1" target="s03"/> - - <state id="s01p21"> - <onentry> - <!-- third event --> - <raise event="event3"/> - </onentry> - </state> - - <state id="s01p22"> - <onentry> - <!-- the fourth event --> - <raise event="event4"/> - </onentry> - </state> - - <onentry> - <!-- this should be the second event raised --> - <raise event="event2"/> - </onentry> - </parallel> - - - <state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" target="fail"/> - </state> - - <state id="s04"> - <transition event="event3" target="s05"/> - <transition event="*" target="fail"/> - </state> - - - <state id="s05"> - <transition event="event4" target="pass"/> - <transition event="*" target="fail"/> - </state> - - </state> <!-- end s0 --> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test407.txml.json b/test/scxml-test-framework/test/w3c/test407.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test407.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test407.txml.scxml b/test/scxml-test-framework/test/w3c/test407.txml.scxml deleted file mode 100644 index 12a49b7..0000000 --- a/test/scxml-test-framework/test/w3c/test407.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- a simple test that onexit handlers work. var1 should be incremented when we leave s0 --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - -<state id="s0"> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition target="s1"/> -</state> - -<state id="s1"> - <transition cond="" target="pass"/> - <transition target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test409.txml.json b/test/scxml-test-framework/test/w3c/test409.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test409.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test409.txml.scxml b/test/scxml-test-framework/test/w3c/test409.txml.scxml deleted file mode 100644 index 102c953..0000000 --- a/test/scxml-test-framework/test/w3c/test409.txml.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that states are removed from the active states list as they are exited. When s01's onexit handler -fires, s011 should not be on the active state list, so in(S011) should be false, and event1 should not -be raised. Therefore the timeout should fire to indicate success --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <transition event="timeout" target="pass"/> - <transition event="event1" target="fail"/> - - <state id="s01" initial="s011"> - <onexit> - <if cond="In('s011')"> - <raise event="event1"/> - </if> - </onexit> - - <state id="s011"> - <transition target="s02"/> - </state> - </state> <!-- end s01 --> - -<state id="s02"/> - -</state> <!-- end s0 --> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test411.txml.json b/test/scxml-test-framework/test/w3c/test411.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test411.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test411.txml.scxml b/test/scxml-test-framework/test/w3c/test411.txml.scxml deleted file mode 100644 index 9ca7405..0000000 --- a/test/scxml-test-framework/test/w3c/test411.txml.scxml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that states are added to the active states list as they are entered and before onentry handlers -are executed. When s0's onentry handler fires we should not be in s01. But when s01's onentry handler -fires, we should be in s01. Therefore event1 should not fire, but event2 should. Either event1 or -timeout also indicates failure --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - <if cond="In('s01')"> - <raise event="event1"/> - </if> - </onentry> - - <transition event="timeout" target="fail"/> - <transition event="event1" target="fail"/> - <transition event="event2" target="pass"/> - - <state id="s01"> - <onentry> - <if cond="In('s01')"> - <raise event="event2"/> - </if> - </onentry> - </state> - -</state> <!-- end s0 --> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test412.txml.json b/test/scxml-test-framework/test/w3c/test412.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test412.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test412.txml.scxml b/test/scxml-test-framework/test/w3c/test412.txml.scxml deleted file mode 100644 index c4cbed9..0000000 --- a/test/scxml-test-framework/test/w3c/test412.txml.scxml +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0"?> -<!-- test that executable content in the <initial> transition executes after the onentry handler on the state -and before the onentry handler of the child states. Event1, event2, and event3 should occur in that order. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0" initial="s01"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - - <transition event="timeout" target="fail"/> - <transition event="event1" target="fail"/> - <transition event="event2" target="pass"/> - - <state id="s01"> - <onentry> - <raise event="event1"/> - </onentry> - <initial> - <transition target="s011"> - <raise event="event2"/> - </transition> - </initial> - - <state id="s011"> - <onentry> - <raise event="event3"/> - </onentry> - <transition target="s02"/> - </state> - </state> - -<state id="s02"> - <transition event="event1" target="s03"/> - <transition event="*" target="fail"/> - </state> - -<state id="s03"> - <transition event="event2" target="s04"/> - <transition event="*" target="fail"/> - </state> - -<state id="s04"> - <transition event="event3" target="pass"/> - <transition event="*" target="fail"/> - </state> - -</state> <!-- end s0 --> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test413.txml.json b/test/scxml-test-framework/test/w3c/test413.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test413.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test413.txml.scxml b/test/scxml-test-framework/test/w3c/test413.txml.scxml deleted file mode 100644 index 5cca2db..0000000 --- a/test/scxml-test-framework/test/w3c/test413.txml.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the state machine is put into the configuration specified by the initial element, without regard -to any other defaults. we should start off in s2p111 and s2p122. the atomic -states we should not enter all have immediate transitions to failure in them --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s2p112 s2p122" version="1.0" datamodel="ecmascript"> - - <state id="s1"> - <transition target="fail"/> - </state> - -<state id="s2" initial="s2p1"> - -<parallel id="s2p1"> - <!-- this transition will be triggered only if we end up in an illegal configuration where we're in - either s2p112 or s2p122, but not both of them --> - <transition target="fail"/> - - <state id="s2p11" initial="s2p111"> - <state id="s2p111"> - <transition target="fail"/> - </state> - - <state id="s2p112"> - <transition cond="In('s2p122')" target="pass"/> - </state> - - </state> <!-- end s2p11 --> - - <state id="s2p12" initial="s2p121"> - <state id="s2p121"> - <transition target="fail"/> - </state> - - <state id="s2p122"> - <transition cond="In('s2p112')" target="pass"/> - </state> - </state> - -</parallel> - -</state> <!-- end s2 --> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test416.txml.json b/test/scxml-test-framework/test/w3c/test416.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test416.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test416.txml.scxml b/test/scxml-test-framework/test/w3c/test416.txml.scxml deleted file mode 100644 index e72a499..0000000 --- a/test/scxml-test-framework/test/w3c/test416.txml.scxml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the done.state.id gets generated when we enter the final state of a compound state --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript"> - - <state id="s1" initial="s11"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <state id="s11" initial="s111"> - <transition event="done.state.s11" target="pass"/> - <state id="s111"> - <transition target="s11final"/> - </state> - <final id="s11final"/> - </state> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test417.txml.json b/test/scxml-test-framework/test/w3c/test417.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test417.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test417.txml.scxml b/test/scxml-test-framework/test/w3c/test417.txml.scxml deleted file mode 100644 index 52a43f7..0000000 --- a/test/scxml-test-framework/test/w3c/test417.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we get the done.state.id event when all of a -parallel elements children enter final states. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript"> - - <state id="s1" initial="s1p1"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - - <parallel id="s1p1"> - <transition event="done.state.s1p1" target="pass"/> - - <state id="s1p11" initial="s1p111"> - <state id="s1p111"> - <transition target="s1p11final"/> - </state> - <final id="s1p11final"/> - </state> - - <state id="s1p12" initial="s1p121"> - <state id="s1p121"> - <transition target="s1p12final"/> - </state> - <final id="s1p12final"/> - </state> - - </parallel> -</state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test419.txml.json b/test/scxml-test-framework/test/w3c/test419.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test419.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test419.txml.scxml b/test/scxml-test-framework/test/w3c/test419.txml.scxml deleted file mode 100644 index b8894c3..0000000 --- a/test/scxml-test-framework/test/w3c/test419.txml.scxml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> -<!-- test that eventless transitions take precedence over event-driven ones --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript"> - - <state id="s1"> - <onentry> - <raise event="internalEvent"/> - <send event="externalEvent"/> - </onentry> - - <transition event="*" target="fail"/> - <transition target="pass"/> - -</state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test421.txml.json b/test/scxml-test-framework/test/w3c/test421.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test421.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test421.txml.scxml b/test/scxml-test-framework/test/w3c/test421.txml.scxml deleted file mode 100644 index 881f650..0000000 --- a/test/scxml-test-framework/test/w3c/test421.txml.scxml +++ /dev/null @@ -1,30 +0,0 @@ -<?xml version="1.0"?> -<!-- test that internal events take priority over external ones, and that the processor -keeps pulling off internal events until it finds one that triggers a transition --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript"> - - <state id="s1" initial="s11"> - <onentry> - <send event="externalEvent"/> - <raise event="internalEvent1"/> - <raise event="internalEvent2"/> - <raise event="internalEvent3"/> - <raise event="internalEvent4"/> - </onentry> - - <transition event="externalEvent" target="fail"/> - - <state id="s11"> - <transition event="internalEvent3" target="s12"/> - </state> - - <state id="s12"> - <transition event="internalEvent4" target="pass"/> - </state> - -</state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test422.txml.json b/test/scxml-test-framework/test/w3c/test422.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test422.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test422.txml.scxml b/test/scxml-test-framework/test/w3c/test422.txml.scxml deleted file mode 100644 index 1f296ed..0000000 --- a/test/scxml-test-framework/test/w3c/test422.txml.scxml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0"?> -<!-- Test that at the end of a macrostep, the processor executes all invokes in states -that have been entered and not exited during the step. (The invokes are supposed to be executed -in document order, but we can test that since each invocation is separate and they may take -different amounts to time to start up.) In this case, there are three invoke statements, -in states s1, s11 and s12. Each invoked process returns an event named after its parent state. -The invokes in s1 and s12 should execute, but not the one -in s11. So we should receive invokeS1, invokeS12, but not invokeS12. Furthermore, when the timeout fires, var1 should equal 2.--> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" initial="s1" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> - </datamodel> - <state id="s1" initial="s11"> - <onentry> - <send event="timeout" delay="5s"/> - </onentry> - <transition event="invokeS1 invokeS12"> - <assign location="Var1" expr="Var1 + 1"/> - </transition> - <transition event="invokeS11" target="fail"/> - - <transition event="timeout" cond="" target="pass"/> - <transition event="timeout" target="fail"/> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub0" version="1.0" datamodel="ecmascript"> - <state id="sub0"> - <onentry> - <send target="#_parent" event="invokeS1"/> - </onentry> - <transition target="subFinal0"/> - </state> - <final id="subFinal0"/> - </scxml> - </content> - </invoke> - - <state id="s11"> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub1" version="1.0" datamodel="ecmascript"> - <state id="sub1"> - <onentry> - <send target="#_parent" event="invokeS11"/> - </onentry> - <transition target="subFinal1"/> - </state> - <final id="subFinal1"/> - </scxml> - </content> - </invoke> - <transition target="s12"/> - </state> - <state id="s12"> - <invoke> - <content> - <!-- when invoked, send 'foo' to parent, then terminate. --> - <scxml initial="sub2" version="1.0" datamodel="ecmascript"> - <state id="sub2"> - <onentry> - <send target="#_parent" event="invokeS12"/> - </onentry> - <transition target="subFinal2"/> - </state> - <final id="subFinal2"/> - </scxml> - </content> - </invoke> - </state> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test423.txml.json b/test/scxml-test-framework/test/w3c/test423.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test423.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test423.txml.scxml b/test/scxml-test-framework/test/w3c/test423.txml.scxml deleted file mode 100644 index b0ab886..0000000 --- a/test/scxml-test-framework/test/w3c/test423.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we keep pulling external events off the queue till we find one that matches a transition. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - - <state id="s0"> - <onentry> - <send event="externalEvent1"/> - <send event="externalEvent2" delay="1s"/> - <raise event="internalEvent"/> - </onentry> - <!-- in this state we should process only internalEvent --> - <transition event="internalEvent" target="s1"/> - <transition event="*" target="fail"/> - </state> - - <state id="s1"> - <!-- in this state we ignore externalEvent1 and wait for externalEvent2 --> - <transition event="externalEvent2" target="pass"/> - <transition event="internalEvent" target="fail"/> - </state> - - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test487.txml.json b/test/scxml-test-framework/test/w3c/test487.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test487.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test487.txml.scxml b/test/scxml-test-framework/test/w3c/test487.txml.scxml deleted file mode 100644 index 84ea76d..0000000 --- a/test/scxml-test-framework/test/w3c/test487.txml.scxml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0"?> -<!-- test illegal assignment. error.execution should be raised. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> -<datamodel> - <data id="Var1" expr="return"/> - </datamodel> - -<state id="s0"> - <onentry> - <raise event="event"/> - </onentry> - - <transition event="error.execution" target="pass"/> - <transition event="*" target="fail"/> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test488.txml.json b/test/scxml-test-framework/test/w3c/test488.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test488.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test488.txml.scxml b/test/scxml-test-framework/test/w3c/test488.txml.scxml deleted file mode 100644 index e0d919a..0000000 --- a/test/scxml-test-framework/test/w3c/test488.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal expr in <param> produces error.execution and empty event.data --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" target="fail"/> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <param expr="return" name="someParam"/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" cond="_event.data === ''" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test503.txml.json b/test/scxml-test-framework/test/w3c/test503.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test503.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test503.txml.scxml b/test/scxml-test-framework/test/w3c/test503.txml.scxml deleted file mode 100644 index b747beb..0000000 --- a/test/scxml-test-framework/test/w3c/test503.txml.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0"?> -<!-- test that a targetless transition does not exit and reenter its source state --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s1" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- how often we have exited s2 --> - <data id="Var2" expr="0"/> <!-- how often the targetless transition in s2 has been executed --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="s2"/> - </state> - - <state id="s2"> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition event="foo"> - <assign location="Var2" expr="Var2 + 1"/> - </transition> - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" cond="" target="s3"/> - <transition event="bar" target="fail"/> - </state> - - <state id="s3"> - <!-- make sure that s2 was exited only once --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test504.txml.json b/test/scxml-test-framework/test/w3c/test504.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test504.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test504.txml.scxml b/test/scxml-test-framework/test/w3c/test504.txml.scxml deleted file mode 100644 index e2c37b6..0000000 --- a/test/scxml-test-framework/test/w3c/test504.txml.scxml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an external transition exits all states up the the LCCA --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s1" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- how often we have exited p --> - <data id="Var2" expr="0"/> <!-- how often we have exited ps1 --> - <data id="Var3" expr="0"/> <!-- how often we have exited ps2 --> - <data id="Var4" expr="0"/> <!-- how often the transition for foo has been taken --> - <data id="Var5" expr="0"/> <!-- how often we have exited s2 --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="p"/> - </state> - -<state id="s2"> - <onexit> - <assign location="Var5" expr="Var5 + 1"/> - </onexit> - -<parallel id="p"> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition event="foo" target="ps1"> - <assign location="Var4" expr="Var4 + 1"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" cond="" target="s3"/> - <transition event="bar" target="fail"/> - - <state id="ps1"> - <onexit> - <assign location="Var2" expr="Var2 + 1"/> - </onexit> - </state> - <state id="ps2"> - <onexit> - <assign location="Var3" expr="Var3 + 1"/> - </onexit> - </state> -</parallel> -</state> - -<state id="s3"> - <!-- make sure that p was exited twice --> - <transition cond="" target="s4"/> - <transition target="fail"/> - </state> - -<state id="s4"> - <!-- make sure that ps1 was exited twice --> - <transition cond="" target="s5"/> - <transition target="fail"/> - </state> - -<state id="s5"> - <!-- make sure that ps2 was exited twice --> - <transition cond="" target="s6"/> - <transition target="fail"/> - </state> - -<state id="s6"> - <!-- make sure that s1 was exited once --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test505.txml.json b/test/scxml-test-framework/test/w3c/test505.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test505.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test505.txml.scxml b/test/scxml-test-framework/test/w3c/test505.txml.scxml deleted file mode 100644 index 87c63e7..0000000 --- a/test/scxml-test-framework/test/w3c/test505.txml.scxml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an internal transition does not exit its source state --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s1" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- how often we have exited s1 --> - <data id="Var2" expr="0"/> <!-- how often we have exited s11 --> - <data id="Var3" expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition event="foo" type="internal" target="s11"> - <assign location="Var3" expr="Var3 + 1"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" cond="" target="s2"/> - <transition event="bar" target="fail"/> - - <state id="s11"> - <onexit> - <assign location="Var2" expr="Var2 + 1"/> - </onexit> - </state> - </state> - -<state id="s2"> - <!-- make sure that s1 was exited once --> - <transition cond="" target="s3"/> - <transition target="fail"/> - </state> - - -<state id="s3"> - <!-- make sure that s11 was exited twice --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test506.txml.json b/test/scxml-test-framework/test/w3c/test506.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test506.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test506.txml.scxml b/test/scxml-test-framework/test/w3c/test506.txml.scxml deleted file mode 100644 index 39be6c9..0000000 --- a/test/scxml-test-framework/test/w3c/test506.txml.scxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an internal transition whose targets are not proper descendants of its source state -behaves like an external transition --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s1" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- how often we have exited s2 --> - <data id="Var2" expr="0"/> <!-- how often we have exited s21 --> - <data id="Var3" expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="s2"/> - </state> - -<state id="s2" initial="s21"> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition event="foo" type="internal" target="s2"> - <assign location="Var3" expr="Var3 + 1"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" cond="" target="s3"/> - <transition event="bar" target="fail"/> - - <state id="s21"> - <onexit> - <assign location="Var2" expr="Var2 + 1"/> - </onexit> - </state> - -</state> - -<state id="s3"> - <!-- make sure that s2 was exited twice --> - <transition cond="" target="s4"/> - <transition target="fail"/> - </state> - -<state id="s4"> - <!-- make sure that s21 was exited twice --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test521.txml.json b/test/scxml-test-framework/test/w3c/test521.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test521.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test521.txml.scxml b/test/scxml-test-framework/test/w3c/test521.txml.scxml deleted file mode 100644 index ea55b10..0000000 --- a/test/scxml-test-framework/test/w3c/test521.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor raises error.communication if it cannot dispatch the event. -(To create an undispatchable event, we choose a non-existent session as target). If it raises -the error event, we succeed. Otherwise we eventually timeout and fail. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> - - -<state id="s0"> - <onentry> - <!-- should cause an error --> - <send target="#_scxml_foo" event="event2"/> - <!-- this will get added to the external event queue after the error has been raised --> - <send event="timeout"/> - </onentry> - - <!-- once we've entered the state, we should check for internal events first --> - <transition event="error.communication" target="pass"/> - <transition event="*" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test525.txml.json b/test/scxml-test-framework/test/w3c/test525.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test525.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test525.txml.scxml b/test/scxml-test-framework/test/w3c/test525.txml.scxml deleted file mode 100644 index 6e627af..0000000 --- a/test/scxml-test-framework/test/w3c/test525.txml.scxml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that <foreach> does a shallow copy, so that modifying the array does not change -the iteration behavior. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" datamodel="ecmascript" version="1.0"> - <datamodel> - <data id="Var1"> - [1,2,3] - </data> - <data id="Var2" expr="0"/> <!-- counts the number of iterations --> - </datamodel> - -<state id="s0"> - <onentry> - <foreach item="Var3" array="Var1"> - <assign location="Var1" expr="[].concat(Var1, [4])"/> - <assign location="Var2" expr="Var2 + 1"/> - </foreach> - </onentry> - - <transition cond="" target="pass"/> - <transition target="fail"/> -</state> - - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test527.txml.json b/test/scxml-test-framework/test/w3c/test527.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test527.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test527.txml.scxml b/test/scxml-test-framework/test/w3c/test527.txml.scxml deleted file mode 100644 index 83dd3bf..0000000 --- a/test/scxml-test-framework/test/w3c/test527.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- simple test that 'expr' works with <content> --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" cond="_event.data === 'foo'" target="pass"> - </transition> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content expr="'foo'"/> - </donedata> - </final> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test528.txml.json b/test/scxml-test-framework/test/w3c/test528.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test528.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test528.txml.scxml b/test/scxml-test-framework/test/w3c/test528.txml.scxml deleted file mode 100644 index 1b516a6..0000000 --- a/test/scxml-test-framework/test/w3c/test528.txml.scxml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0"?> -<!-- test that illegal 'expr' produces error.execution and empty event.data --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0" initial="s01"> - <!-- we should get the error before the done event --> - <transition event="error.execution" target="s1"/> - <transition event="done.state.s0" target="fail"/> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content expr="return"/> - </donedata> - </final> - </state> - - - <!-- if we get here, we received the error event. Now check that the done - event has empty event.data --> - - <state id="s1"> - <transition event="done.state.s0" cond="_event.data == null" target="pass"/> - <transition event="*" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test529.txml.json b/test/scxml-test-framework/test/w3c/test529.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test529.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test529.txml.scxml b/test/scxml-test-framework/test/w3c/test529.txml.scxml deleted file mode 100644 index 133ab93..0000000 --- a/test/scxml-test-framework/test/w3c/test529.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- simple test that children workn with <content> --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" version="1.0" datamodel="ecmascript" initial="s0"> - - - <state id="s0" initial="s01"> - - <transition event="done.state.s0" cond="_event.data === '21'" target="pass"> - </transition> - - <transition event="done.state.s0" target="fail"> - </transition> - - <state id="s01"> - <transition target="s02"/> - </state> - <final id="s02"> - <donedata> - <content>21</content> - </donedata> - </final> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test530.txml.json b/test/scxml-test-framework/test/w3c/test530.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test530.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test530.txml.scxml b/test/scxml-test-framework/test/w3c/test530.txml.scxml deleted file mode 100644 index cade191..0000000 --- a/test/scxml-test-framework/test/w3c/test530.txml.scxml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0"?> -<!-- test that <content> child is evaluated when <invoke> is. Var1 is initialized -with an integer value, then set to an scxml script in the onentry to s0. If <content> -is evaluated at the right time, we should get invoke.done, otherwise an error --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" expr="1"/> - </datamodel> - - <state id="s0"> - <onentry> - <assign location="Var1"> - <scxml version="1.0"><final/></scxml> - </assign> - <send event="timeout" delay="2s"/> - </onentry> - - <invoke type="http://www.w3.org/TR/scxml/"> - <content expr="Var1"/> - </invoke> - - <transition event="done.invoke" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - </scxml> diff --git a/test/scxml-test-framework/test/w3c/test533.txml.json b/test/scxml-test-framework/test/w3c/test533.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test533.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test533.txml.scxml b/test/scxml-test-framework/test/w3c/test533.txml.scxml deleted file mode 100644 index 1f2b0d7..0000000 --- a/test/scxml-test-framework/test/w3c/test533.txml.scxml +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0"?> -<!-- test that an internal transition whose source state is not compound does exit its source state --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s1" version="1.0" datamodel="ecmascript"> -<datamodel> - <data id="Var1" expr="0"/> <!-- how often we have exited p --> - <data id="Var2" expr="0"/> <!-- how often we have exited ps1 --> - <data id="Var3" expr="0"/> <!-- how often we have exited ps2 --> - <data id="Var4" expr="0"/> <!-- how often the transition for foo has been taken --> - </datamodel> - - <state id="s1"> - <onentry> - <raise event="foo"/> - <raise event="bar"/> - </onentry> - <transition target="p"/> - </state> - -<parallel id="p"> - <onexit> - <assign location="Var1" expr="Var1 + 1"/> - </onexit> - <transition event="foo" type="internal" target="ps1"> - <assign location="Var4" expr="Var4 + 1"/> - </transition> - - <!-- make sure the transition on foo was actually taken --> - <transition event="bar" cond="" target="s2"/> - <transition event="bar" target="fail"/> - - <state id="ps1"> - <onexit> - <assign location="Var2" expr="Var2 + 1"/> - </onexit> - </state> - <state id="ps2"> - <onexit> - <assign location="Var3" expr="Var3 + 1"/> - </onexit> - </state> -</parallel> - -<state id="s2"> - <!-- make sure that p was exited twice --> - <transition cond="" target="s3"/> - <transition target="fail"/> - </state> - -<state id="s3"> - <!-- make sure that ps1 was exited twice --> - <transition cond="" target="s4"/> - <transition target="fail"/> - </state> - -<state id="s4"> - <!-- make sure that ps2 was exited twice --> - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test550.txml.json b/test/scxml-test-framework/test/w3c/test550.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test550.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test550.txml.scxml b/test/scxml-test-framework/test/w3c/test550.txml.scxml deleted file mode 100644 index 6112db6..0000000 --- a/test/scxml-test-framework/test/w3c/test550.txml.scxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0"?> -<!-- test that expr can be used to assign a value to a var. This test uses early binding --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript" binding="early"> - - <state id="s0"> - - <transition cond="" target="pass"/> - <transition target="fail"/> - </state> - - <state id="s1"> - <datamodel> - <data id="Var1" expr="2"/> - </datamodel> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test551.txml.json b/test/scxml-test-framework/test/w3c/test551.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test551.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test551.txml.scxml b/test/scxml-test-framework/test/w3c/test551.txml.scxml deleted file mode 100644 index d0bb3fc..0000000 --- a/test/scxml-test-framework/test/w3c/test551.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- test that inline content can be used to assign a value to a var. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" binding="early" datamodel="ecmascript"> - - - <state id="s0"> - - <transition cond="Var1" target="pass"/> - <transition target="fail"/> - </state> - -<state id="s1"> - <datamodel> - <data id="Var1"> - [1,2,3] - </data> - </datamodel> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test552.txml.json b/test/scxml-test-framework/test/w3c/test552.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test552.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test552.txml.scxml b/test/scxml-test-framework/test/w3c/test552.txml.scxml deleted file mode 100644 index e3bf668..0000000 --- a/test/scxml-test-framework/test/w3c/test552.txml.scxml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- test that src content can be used to assign a value to a var. Edit -test552.txt to have a value that's legal for the datamodel in question --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - <datamodel> - <data id="Var1" src="file:test552.txt"/> - </datamodel> - - <state id="s0"> - - <transition cond="Var1" target="pass"/> - <transition target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - - - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test553.txml.json b/test/scxml-test-framework/test/w3c/test553.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test553.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test553.txml.scxml b/test/scxml-test-framework/test/w3c/test553.txml.scxml deleted file mode 100644 index 6806373..0000000 --- a/test/scxml-test-framework/test/w3c/test553.txml.scxml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- we test that the processor does not dispatch the event if evaluation -of <send>'s args causes an error.. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" datamodel="ecmascript" version="1.0"> - - -<state id="s0"> - <onentry> - <!-- timeout event --> - <send event="timeout" delay="3s"/> - <!-- include a non-existing var in the namelist --> - <send event="event1" namelist="Var2"/> - </onentry> - - <!-- if we get the timeout before event1, we assume that event1 hasn't been sent - We ignore the error event here because this assertion doesn't mention it --> - <transition event="timeout" target="pass"/> - <transition event="event1" target="fail"/> - </state> - - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test554.txml.json b/test/scxml-test-framework/test/w3c/test554.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test554.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test554.txml.scxml b/test/scxml-test-framework/test/w3c/test554.txml.scxml deleted file mode 100644 index 48724ad..0000000 --- a/test/scxml-test-framework/test/w3c/test554.txml.scxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<!-- test that if the evaluation of <invoke>'s args causes an error, the -invocation is cancelled. In this test, that means that we don't get done.invoke -before the timer goes off. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s0" version="1.0" datamodel="ecmascript"> - - -<state id="s0"> - <onentry> - <send event="timer" delay="2s"/> - </onentry> - - <!-- namelist references an undeclared variable --> - <invoke type="http://www.w3.org/TR/scxml/" namelist="Var2"> - <content> - <scxml initial="subFinal" version="1.0" datamodel="ecmascript"> - <final id="subFinal"/> - </scxml> - </content> - </invoke> - <transition event="timer" target="pass"/> - <transition event="done.invoke" target="fail"/> - </state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test570.txml.json b/test/scxml-test-framework/test/w3c/test570.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test570.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test570.txml.scxml b/test/scxml-test-framework/test/w3c/test570.txml.scxml deleted file mode 100644 index cbd2ce0..0000000 --- a/test/scxml-test-framework/test/w3c/test570.txml.scxml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0"?> -<!-- test that we generate done.state.id when all a parallel state's children are in final states --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="p0" datamodel="ecmascript" version="1.0"> - <datamodel> - <data id="Var1" expr="0"/> - </datamodel> -<parallel id="p0"> - <onentry> - <send event="timeout" delay="2s"/> - <raise event="e1"/> - <raise event="e2"/> - </onentry> - <!-- record that we get the first done event --> - <transition event="done.state.p0s1"> - <assign location="Var1" expr="1"/> - </transition> - <!-- we should get the second done event before done.state.p0 --> - <transition event="done.state.p0s2" target="s1"/> - <transition event="timeout" target="fail"/> - - - <state id="p0s1" initial="p0s11"> - <state id="p0s11"> - <transition event="e1" target="p0s1final"/> - </state> - <final id="p0s1final"/> - </state> - - <state id="p0s2" initial="p0s21"> - <state id="p0s21"> - <transition event="e2" target="p0s2final"/> - </state> - <final id="p0s2final"/> - </state> - - </parallel> - - <state id="s1"> - <!-- if we get done.state.p0, success --> - <transition event="done.state.p0" cond="" target="pass"/> - <transition event="*" target="fail"/> - </state> - - <final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> - <final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> - -</scxml> diff --git a/test/scxml-test-framework/test/w3c/test576.txml.json b/test/scxml-test-framework/test/w3c/test576.txml.json deleted file mode 100644 index 2b697c0..0000000 --- a/test/scxml-test-framework/test/w3c/test576.txml.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "initialConfiguration" : ["pass"], - "events" : [] -} diff --git a/test/scxml-test-framework/test/w3c/test576.txml.scxml b/test/scxml-test-framework/test/w3c/test576.txml.scxml deleted file mode 100644 index cf5d225..0000000 --- a/test/scxml-test-framework/test/w3c/test576.txml.scxml +++ /dev/null @@ -1,39 +0,0 @@ -<?xml version="1.0"?> -<!-- test that the 'initial' value of scxml is respected. We set the value to deeply nested non-default parallel siblings and -test that both are entered. --> -<scxml xmlns="http://www.w3.org/2005/07/scxml" xmlns:conf="http://www.w3.org/2005/scxml-conformance" initial="s11p112 s11p122" datamodel="ecmascript" version="1.0"> - - -<state id="s0"> - <transition target="fail"/> -</state> - -<state id="s1"> - <onentry> - <send event="timeout" delay="1s"/> - </onentry> - <transition event="timeout" target="fail"/> - <state id="s11" initial="s111"> - <state id="s111"/> - <parallel id="s11p1"> - <state id="s11p11" initial="s11p111"> - <state id="s11p111"/> - <state id="s11p112"> - <onentry> - <raise event="In-s11p112"/> - </onentry> - </state> - </state> - <state id="s11p12" initial="s11p121"> - <state id="s11p121"/> - <state id="s11p122"> - <transition event="In-s11p112" target="pass"/> - </state> - </state> - </parallel> - </state> -</state> - -<final id="pass"><onentry><log label="Outcome" expr="'pass'"/></onentry></final> -<final id="fail"><onentry><log label="Outcome" expr="'fail'"/></onentry></final> -</scxml> diff --git a/test/src/scxml-test-framework-client.cpp b/test/src/scxml-test-framework-client.cpp index fefe3d9..73df8ce 100644 --- a/test/src/scxml-test-framework-client.cpp +++ b/test/src/scxml-test-framework-client.cpp @@ -112,7 +112,7 @@ public: // return; std::cout << "---- received:" << std::endl; - evhttp_request_own(request.curlReq); +// evhttp_request_own(request.curlReq); std::cout << request.data.compound.at("content").atom << std::endl; uscxml::Data jsonReq = uscxml::Data::fromJSON(request.data.compound.at("content").atom); @@ -142,8 +142,8 @@ public: assert(_interpreters.find(token) == _interpreters.end()); interpreter->setName(token); interpreter->addMonitor(this); - interpreter->start(); _interpreters[token] = std::make_pair(interpreter, request); + interpreter->start(); } return; } diff --git a/test/src/test-predicates.cpp b/test/src/test-predicates.cpp index 0149d93..08aa3e1 100644 --- a/test/src/test-predicates.cpp +++ b/test/src/test-predicates.cpp @@ -30,8 +30,8 @@ int main(int argc, char** argv) { assert(Interpreter::isParallel(parallelState)); assert(!Interpreter::isCompound(parallelState)); // parallel states are not compound! - Node<std::string> initialState = interpreter->getInitialState(); - assert(initialState == atomicState); + NodeSet<std::string> initialState = interpreter->getInitialStates(); + assert(initialState[0] == atomicState); NodeSet<std::string> childs = interpreter->getChildStates(compoundState); Node<std::string> compundChild1 = interpreter->getState("compundChild1"); |