[overlord-commits] Overlord SVN: r539 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb: src and 16 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Sun Mar 15 12:13:48 EDT 2009
Author: objectiser
Date: 2009-03-15 12:13:48 -0400 (Sun, 15 Mar 2009)
New Revision: 539
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/testmodels/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/CreateSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/IfActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/MessageRouterActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ParallelActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/PerformActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ReceiveMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/RetrieveSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ScheduleStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SendMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SwitchActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhenActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhileActionTest.java
Removed:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/testmodels/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/CreateSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/IfActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/MessageRouterActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ParallelActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/PerformActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ReceiveMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/RetrieveSessionActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ScheduleStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SendMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetMessageActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetStateActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SwitchActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhenActionTest.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhileActionTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/.classpath
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/AbstractESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/ESBBrokerProcess at Broker.jboss-esb.xml
Log:
SOAG-94 - fixed issue with missing attributes on the service and action elements. Also moved some of the unit tests - some were specific to stateful actions, so moved into a 'stateful' sub-packages, and others require a plugin test to be launched, so need to be separate out.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/.classpath
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/.classpath 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/.classpath 2009-03-15 16:13:48 UTC (rev 539)
@@ -2,6 +2,7 @@
<classpath>
<classpathentry kind="src" path="src/java"/>
<classpathentry kind="src" path="src/test"/>
+ <classpathentry kind="src" path="src/plugintest"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="bin"/>
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/DefaultESBService.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/DefaultESBService.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -33,11 +33,14 @@
*/
public class DefaultESBService extends ModelObject implements ESBService {
+ private static final long serialVersionUID = 1266018368857224091L;
+
public static final String LISTENERS_ELEMENT = "listeners";
public static final String BUSIDREF_ATTR = "busidref";
public static final String JMS_LISTENER_ELEMENT = "jms-listener";
public static final String MAX_THREADS_ATTR = "maxThreads";
public static final String NAME_ATTR = "name";
+ public static final String DESCRIPTION_ATTR = "description";
public static final String CATEGORY_ATTR = "category";
public static final String ROOT_PROPERTY = "root";
public static final String BUSINESS_OBJECT_TYPE_PROPERTY = "session";
@@ -90,6 +93,7 @@
m_service.setAttribute(CATEGORY_ATTR, category);
m_service.setAttribute(NAME_ATTR, name);
+ m_service.setAttribute(DESCRIPTION_ATTR, "");
m_actionsElem = m_model.getESBConfiguration().
getOwnerDocument().createElement(ACTIONS_ELEMENT);
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/AbstractESBAction.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/java/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/AbstractESBAction.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -40,7 +40,8 @@
public static final String VALUE_ATTR = "value";
public static final String NAME_ATTR = "name";
public static final String PROPERTY_ELEMENT = "property";
- public static final String CLASS_PROPERTY = "class";
+ public static final String CLASS_ATTR = "class";
+ public static final String PROCESS_ATTR = "process";
/**
* The constructor for initializing the action based on
@@ -73,8 +74,13 @@
m_action = service.getService().
getOwnerDocument().createElement(ACTION_ELEMENT);
- m_action.setAttribute(CLASS_PROPERTY, actionClass);
+ m_action.setAttribute(CLASS_ATTR, actionClass);
+ m_action.setAttribute(PROCESS_ATTR, "process");
+
+ m_action.setAttribute(NAME_ATTR, service.getName()+"_action_"+
+ (service.getActions().size()+1));
+
getSource().setObject(this);
}
@@ -322,7 +328,7 @@
String ret=null;
if (m_action != null) {
- ret = m_action.getAttribute(CLASS_PROPERTY);
+ ret = m_action.getAttribute(CLASS_ATTR);
}
return(ret);
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,348 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.generator;
+
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
+
+import org.scribble.conversation.model.*;
+import org.scribble.extensions.RegistryFactory;
+import org.scribble.model.ModelReference;
+import org.scribble.model.change.ModelGenerator;
+import org.w3c.dom.Node;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
+
+import junit.framework.*;
+
+public class GeneratorTest extends TestCase {
+
+ public static TestSuite suite() {
+ TestSuite suite = new TestSuite("Conversation->jboss-esb.xml Generator Tests");
+ suite.addTest(new ConversationToJBossESBTest("ESBBrokerProcess at Broker"));
+ return suite;
+ }
+
+ /**
+ * The test case for running the conversation to jboss-esb.xml test.
+ */
+ protected static class ConversationToJBossESBTest extends TestCase {
+
+ /**
+ * This constructor is initialized with the test
+ * name.
+ *
+ * @param name The test name
+ */
+ public ConversationToJBossESBTest(String name) {
+ super(name);
+ m_name = name;
+ }
+
+ /**
+ * This method runs the test.
+ *
+ * @param result The test result
+ */
+ public void run(TestResult result) {
+ result.startTest(this);
+
+ String filename="testmodels/"+m_name+".scv";
+
+ java.io.InputStream is=
+ GeneratorTest.class.getResourceAsStream(filename);
+
+ if (is == null) {
+ result.addError(this,
+ new Throwable("Unable to locate resource: "+filename));
+ } else {
+ org.scribble.parser.Parser p=new org.scribble.conversation.parser.ConversationParser();
+ org.scribble.model.ModelReference ref=
+ new org.scribble.model.ModelReference(ConversationNotation.NOTATION_CODE);
+ org.scribble.model.admin.DefaultModelListener l=
+ new org.scribble.model.admin.DefaultModelListener();
+
+ org.scribble.model.Model model=p.parse(ref, is, l);
+
+ if (model == null) {
+ result.addError(this, new Throwable("Model is null"));
+
+ } else if ((model instanceof ConversationModel) == false) {
+ result.addError(this, new Throwable("Model is null"));
+
+ } else if (l.getErrors().size() != 0) {
+ result.addError(this, new Throwable("Failed to parse Conversation Model"));
+
+ for (int i=0; i < l.getErrors().size(); i++) {
+ System.err.println("ModelIssue: "+
+ l.getErrors().get(i).getMessage());
+ }
+ } else {
+ ConversationModel cm=(ConversationModel)model;
+
+ ModelGenerator generator=(ModelGenerator)
+ RegistryFactory.getRegistry().getExtension(
+ ModelGenerator.class, null);
+
+ if (generator != null) {
+ ModelReference targetRef=
+ new ModelReference(JBossESBNotation.NOTATION_CODE);
+
+ DefaultESBLanguageModel target=
+ new DefaultESBLanguageModel(targetRef,
+ cm.getConversation().isStateless());
+
+ generator.generate(targetRef,
+ model.getModelName().getLocatedRole(),
+ target, model);
+
+ if (target.getESBConfiguration() != null) {
+ try {
+ String text=getText(target.getESBConfiguration(), true);
+
+ checkResults(result, text);
+ } catch(Exception e) {
+ result.addError(this, e);
+ }
+ } else {
+ result.addError(this,
+ new Throwable("No jboss-esb.xml generated"));
+ }
+
+ } else {
+ result.addError(this,
+ new Throwable("Unable to find Model Generator"));
+ }
+ }
+ }
+
+ result.endTest(this);
+ }
+
+ /**
+ * This method checks the generated jboss-esb.xml against a
+ * previously stored correct version.
+ *
+ * @param result The test result
+ * @param esbconfig The ESB configuration
+ */
+ protected void checkResults(TestResult result, String esbconfig) {
+
+ String filename="results/"+m_name+".jboss-esb.xml";
+
+ java.io.InputStream is=
+ GeneratorTest.class.getResourceAsStream(filename);
+
+ if (is != null) {
+
+ try {
+ byte[] b=new byte[is.available()];
+
+ is.read(b);
+
+ is.close();
+
+ String orig=new String(b);
+
+ if (orig.equals(esbconfig) == false) {
+ result.addError(this,
+ new Throwable("Generated ESB configuration does not match stored version"));
+
+ System.out.println("COMPARED GENERATED:");
+ System.out.println(esbconfig);
+ System.out.println("WITH ORIGINAL:");
+ System.out.println(orig);
+ }
+ } catch(Exception e) {
+ result.addError(this, e);
+ }
+ } else {
+ result.addError(this,
+ new Throwable("Resulting ESB configuration '"+filename+
+ "' not found for comparison"));
+ }
+ }
+
+ /**
+ * This class converts a DOM representation node to
+ * text with appropriate presentation formatting.
+ *
+ * @param node The DOM node
+ * @param pretty Whether to format the text for presentation
+ * @return The text
+ * @throws Exception Failed to convert
+ */
+ public static String getText(Node node, boolean pretty) throws Exception {
+ String ret=getText(node);
+
+ if (pretty) {
+ ret = reformat(ret);
+ }
+
+ return(ret);
+ }
+
+ /**
+ * This method reformats the XML text for presentation.
+ *
+ * @param xmltext The original XML text
+ * @return The reformatted text
+ */
+ protected static String reformat(String xmltext) {
+ String ret=xmltext;
+ int pos=0;
+ int prevpos=0;
+ StringBuffer buf=new StringBuffer();
+ int level=0;
+
+ while ((pos=ret.indexOf('<', prevpos)) != -1) {
+
+ if (prevpos < pos &&
+ ret.substring(prevpos, pos).trim().length() > 0 &&
+ ret.charAt(prevpos-1) != '?') {
+
+ if (ret.charAt(prevpos) == '\r' &&
+ ret.charAt(prevpos+1) == '\n') {
+ prevpos += 2;
+ }
+ for (int i=0; i < level; i++) {
+ buf.append(" ");
+ }
+
+ buf.append(ret.substring(prevpos, pos).trim());
+ buf.append("\r\n");
+ }
+
+ int endpos=ret.indexOf('>', pos);
+
+ if (endpos > 0) {
+ boolean noreturn=false;
+
+ if (pos > 0 && ret.charAt(pos+1) == '/') {
+ level--;
+ }
+
+ for (int i=0; i < level; i++) {
+ buf.append(" ");
+ }
+ buf.append(ret.substring(pos, endpos+1));
+
+ if (ret.charAt(endpos-1)== '?') {
+ //noreturn = true;
+
+ } else if (ret.charAt(endpos-1) == '/') {
+ // Ignore
+ } else if (pos > 0 && ret.charAt(pos+1) == '/') {
+ // Ignore
+
+ } else if (pos > 0 && ret.charAt(pos+1) == '!') {
+ // Ignore
+
+ } else {
+ level++;
+ }
+
+ if (noreturn == false) {
+ buf.append("\r\n");
+ }
+
+ pos = endpos+1;
+ }
+
+ prevpos = pos;
+ }
+
+ if (prevpos != -1 &&
+ ret.substring(prevpos).trim().length() > 0) {
+ buf.append(ret.substring(prevpos));
+ }
+
+ ret = buf.toString();
+
+ return(ret);
+ }
+
+ /**
+ * This class converts a DOM representation node to
+ * text.
+ *
+ * @param node The DOM node
+ * @return The text
+ * @throws Exception Failed to convert
+ */
+ public static String getText(Node node) throws Exception {
+ String ret=null;
+
+ try {
+ // Transform the DOM represent to text
+ java.io.ByteArrayOutputStream xmlstr=
+ new java.io.ByteArrayOutputStream();
+
+ DOMSource source=new DOMSource();
+ source.setNode(node);
+
+ StreamResult result=new StreamResult(xmlstr);
+
+ Transformer trans=
+ TransformerFactory.newInstance().newTransformer();
+ trans.transform(source, result);
+
+ xmlstr.close();
+
+ ret = new String(xmlstr.toByteArray());
+
+ if ((node instanceof org.w3c.dom.Document) == false) {
+
+ // Strip off any <?xml> header
+ int index=ret.indexOf("<?xml");
+ if (index != -1) {
+ index = ret.indexOf("<", 1);
+
+ if (index != -1) {
+ ret = ret.substring(index);
+ } else {
+ index = ret.indexOf("?>");
+
+ if (index != -1) {
+ index += 2;
+
+ // Remove any trailing whitespaces
+ // after XML header
+ while (index < ret.length() &&
+ Character.isWhitespace(ret.charAt(index))) {
+ index++;
+ }
+
+ ret = ret.substring(index);
+ }
+ }
+ }
+ }
+
+ } catch(Exception e) {
+ throw new Exception("Failed to transform " +
+ "DOM representation into text", e);
+ }
+
+ return(ret);
+ }
+
+ private String m_name=null;
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,122 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.generator;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.generator.TypeMapper;
+
+import junit.framework.TestCase;
+
+public class TypeMapperTest extends TestCase {
+
+ public void testGetJavaTypeCustomClass() {
+ String pack="org.acme.service";
+ String namespace=TypeMapper.JAVA_PREFIX+pack;
+ String localpart="Message";
+ String clsName=pack+"."+localpart;
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+
+ public void testGetJavaTypeDOMElement() {
+ String namespace="http://www.jboss.org/example";
+ String localpart="Message";
+ String clsName=org.w3c.dom.Element.class.getName();
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+
+ public void testGetJavaTypeXSDString() {
+ String namespace=TypeMapper.XSD_NAMESPACE;
+ String localpart="string";
+ String clsName=String.class.getName();
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+
+ public void testGetJavaTypeXSDBoolean() {
+ String namespace=TypeMapper.XSD_NAMESPACE;
+ String localpart="boolean";
+ String clsName="boolean";
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+
+ public void testGetJavaTypeXSDDecimal() {
+ String namespace=TypeMapper.XSD_NAMESPACE;
+ String localpart="decimal";
+ String clsName="int";
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+
+ public void testGetJavaTypeXSDInteger() {
+ String namespace=TypeMapper.XSD_NAMESPACE;
+ String localpart="integer";
+ String clsName="int";
+
+ String type=TypeMapper.getJavaType(namespace, localpart);
+
+ if (type == null) {
+ fail("Type not returned");
+ }
+
+ if (type.equals(clsName) == false) {
+ fail("Expecting '"+clsName+"', but got: "+type);
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results)
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results
___________________________________________________________________
Name: svn:mergeinfo
+
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/ESBBrokerProcess at Broker.jboss-esb.xml
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/ESBBrokerProcess at Broker.jboss-esb.xml 2009-03-02 14:05:59 UTC (rev 531)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/results/ESBBrokerProcess at Broker.jboss-esb.xml 2009-03-15 16:13:48 UTC (rev 539)
@@ -46,12 +46,12 @@
</jms-provider>
</providers>
<services>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker">
<listeners>
<jms-listener busidref="busId1" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SwitchAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SwitchAction" name="ESBBrokerProcess_Broker_action_1" process="process">
<property name="serviceDescriptionName" value="{org.pi4soa.esbbroker.esbbroker}ESBBrokerProcess-Broker"/>
<property name="conversationType" value="overlord.cdl.samples.LoanBroker at Broker"/>
<property name="paths">
@@ -71,16 +71,16 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__1">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__1">
<listeners>
<jms-listener busidref="busId2" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__1"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__1_action_1" process="process">
<property name="operation" value="makeEnquiry"/>
<property name="messageType" value="enquiry"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.IfAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.IfAction" name="ESBBrokerProcess_Broker__1_action_2" process="process">
<property name="paths">
<if service-category="org.pi4soa.esbbroker.esbbroker" service-name="ESBBrokerProcess_Broker__2"/>
<else service-category="org.pi4soa.esbbroker.esbbroker" service-name="ESBBrokerProcess_Broker__3"/>
@@ -88,12 +88,12 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__2">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__2">
<listeners>
<jms-listener busidref="busId3" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__2"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__2_action_1" process="process">
<property name="operation" value="getQuote"/>
<property name="messageType" value="requestForQuote"/>
<property name="serviceCategory" value=""/>
@@ -103,22 +103,22 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__3">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__3">
<listeners>
<jms-listener busidref="busId4" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__3"/>
</listeners>
<actions/>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="getQuote">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="getQuote">
<listeners>
<jms-listener busidref="busId5" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__4"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__4_action_1" process="process">
<property name="operation" value="getQuote"/>
<property name="messageType" value="quote"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.IfAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.IfAction" name="ESBBrokerProcess_Broker__4_action_2" process="process">
<property name="paths">
<if service-category="org.pi4soa.esbbroker.esbbroker" service-name="ESBBrokerProcess_Broker__5"/>
<else service-category="org.pi4soa.esbbroker.esbbroker" service-name="ESBBrokerProcess_Broker__6"/>
@@ -126,12 +126,12 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__5">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__5">
<listeners>
<jms-listener busidref="busId6" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__5"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__5_action_1" process="process">
<property name="operation" value="getQuote"/>
<property name="messageType" value="requestForQuote"/>
<property name="serviceCategory" value=""/>
@@ -141,34 +141,34 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__6">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__6">
<listeners>
<jms-listener busidref="busId7" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__6"/>
</listeners>
<actions/>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__7">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__7">
<listeners>
<jms-listener busidref="busId8" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__7"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__7_action_1" process="process">
<property name="operation" value="makeEnquiry"/>
<property name="messageType" value="quoteList"/>
<property name="clientRole" value="Buyer"/>
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__8">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__8">
<listeners>
<jms-listener busidref="busId9" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__8"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__8_action_1" process="process">
<property name="operation" value="buy"/>
<property name="messageType" value="buy"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__8_action_2" process="process">
<property name="operation" value="checkCredit"/>
<property name="messageType" value="CreditCheckRequest"/>
<property name="serviceCategory" value=""/>
@@ -178,16 +178,16 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__9">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__9">
<listeners>
<jms-listener busidref="busId10" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__9"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__9_action_1" process="process">
<property name="operation" value="checkCredit"/>
<property name="messageType" value="CreditCheckOk"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__9_action_2" process="process">
<property name="operation" value="confirm"/>
<property name="messageType" value="orderConfirmed"/>
<property name="serviceCategory" value=""/>
@@ -197,55 +197,55 @@
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="confirm">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="confirm">
<listeners>
<jms-listener busidref="busId11" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__10"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__10_action_1" process="process">
<property name="operation" value="confirm"/>
<property name="messageType" value="bookingReference"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__10_action_2" process="process">
<property name="operation" value="buy"/>
<property name="messageType" value="bookingReference"/>
<property name="clientRole" value="Buyer"/>
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__11">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__11">
<listeners>
<jms-listener busidref="busId12" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__11"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__11_action_1" process="process">
<property name="operation" value="checkCredit"/>
<property name="messageType" value="CreditCheckInvalid"/>
</action>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SendMessageAction" name="ESBBrokerProcess_Broker__11_action_2" process="process">
<property name="operation" value="buy"/>
<property name="messageType" value="orderRejected"/>
<property name="clientRole" value="Buyer"/>
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="ESBBrokerProcess_Broker__12">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="ESBBrokerProcess_Broker__12">
<listeners>
<jms-listener busidref="busId13" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-ESBBrokerProcess_Broker__12"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.ReceiveMessageAction" name="ESBBrokerProcess_Broker__12_action_1" process="process">
<property name="operation" value="cancel"/>
<property name="messageType" value="cancel"/>
</action>
</actions>
</service>
- <service category="org.pi4soa.esbbroker.esbbroker" name="checkCredit">
+ <service category="org.pi4soa.esbbroker.esbbroker" description="" name="checkCredit">
<listeners>
<jms-listener busidref="busId14" maxThreads="1" name="org.pi4soa.esbbroker.esbbroker-checkCredit"/>
</listeners>
<actions>
- <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SwitchAction">
+ <action class="org.jboss.soa.overlord.jbossesb.actions.stateless.SwitchAction" name="checkCredit_action_1" process="process">
<property name="paths">
<case service-category="org.pi4soa.esbbroker.esbbroker" service-name="ESBBrokerProcess_Broker__9">
<message type="CreditCheckOk"/>
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/testmodels (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/testmodels)
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/plugintest/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/testmodels
___________________________________________________________________
Name: svn:mergeinfo
+
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/GeneratorTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,348 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.generator;
-
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.scribble.conversation.model.*;
-import org.scribble.extensions.RegistryFactory;
-import org.scribble.model.ModelReference;
-import org.scribble.model.change.ModelGenerator;
-import org.w3c.dom.Node;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
-
-import junit.framework.*;
-
-public class GeneratorTest extends TestCase {
-
- public static TestSuite suite() {
- TestSuite suite = new TestSuite("Conversation->jboss-esb.xml Generator Tests");
- suite.addTest(new ConversationToJBossESBTest("ESBBrokerProcess at Broker"));
- return suite;
- }
-
- /**
- * The test case for running the conversation to jboss-esb.xml test.
- */
- protected static class ConversationToJBossESBTest extends TestCase {
-
- /**
- * This constructor is initialized with the test
- * name.
- *
- * @param name The test name
- */
- public ConversationToJBossESBTest(String name) {
- super(name);
- m_name = name;
- }
-
- /**
- * This method runs the test.
- *
- * @param result The test result
- */
- public void run(TestResult result) {
- result.startTest(this);
-
- String filename="testmodels/"+m_name+".scv";
-
- java.io.InputStream is=
- GeneratorTest.class.getResourceAsStream(filename);
-
- if (is == null) {
- result.addError(this,
- new Throwable("Unable to locate resource: "+filename));
- } else {
- org.scribble.parser.Parser p=new org.scribble.conversation.parser.ConversationParser();
- org.scribble.model.ModelReference ref=
- new org.scribble.model.ModelReference(ConversationNotation.NOTATION_CODE);
- org.scribble.model.admin.DefaultModelListener l=
- new org.scribble.model.admin.DefaultModelListener();
-
- org.scribble.model.Model model=p.parse(ref, is, l);
-
- if (model == null) {
- result.addError(this, new Throwable("Model is null"));
-
- } else if ((model instanceof ConversationModel) == false) {
- result.addError(this, new Throwable("Model is null"));
-
- } else if (l.getErrors().size() != 0) {
- result.addError(this, new Throwable("Failed to parse Conversation Model"));
-
- for (int i=0; i < l.getErrors().size(); i++) {
- System.err.println("ModelIssue: "+
- l.getErrors().get(i).getMessage());
- }
- } else {
- ConversationModel cm=(ConversationModel)model;
-
- ModelGenerator generator=(ModelGenerator)
- RegistryFactory.getRegistry().getExtension(
- ModelGenerator.class, null);
-
- if (generator != null) {
- ModelReference targetRef=
- new ModelReference(JBossESBNotation.NOTATION_CODE);
-
- DefaultESBLanguageModel target=
- new DefaultESBLanguageModel(targetRef,
- cm.getConversation().isStateless());
-
- generator.generate(targetRef,
- model.getModelName().getLocatedRole(),
- target, model);
-
- if (target.getESBConfiguration() != null) {
- try {
- String text=getText(target.getESBConfiguration(), true);
-
- checkResults(result, text);
- } catch(Exception e) {
- result.addError(this, e);
- }
- } else {
- result.addError(this,
- new Throwable("No jboss-esb.xml generated"));
- }
-
- } else {
- result.addError(this,
- new Throwable("Unable to find Model Generator"));
- }
- }
- }
-
- result.endTest(this);
- }
-
- /**
- * This method checks the generated jboss-esb.xml against a
- * previously stored correct version.
- *
- * @param result The test result
- * @param esbconfig The ESB configuration
- */
- protected void checkResults(TestResult result, String esbconfig) {
-
- String filename="results/"+m_name+".jboss-esb.xml";
-
- java.io.InputStream is=
- GeneratorTest.class.getResourceAsStream(filename);
-
- if (is != null) {
-
- try {
- byte[] b=new byte[is.available()];
-
- is.read(b);
-
- is.close();
-
- String orig=new String(b);
-
- if (orig.equals(esbconfig) == false) {
- result.addError(this,
- new Throwable("Generated ESB configuration does not match stored version"));
-
- System.out.println("COMPARED GENERATED:");
- System.out.println(esbconfig);
- System.out.println("WITH ORIGINAL:");
- System.out.println(orig);
- }
- } catch(Exception e) {
- result.addError(this, e);
- }
- } else {
- result.addError(this,
- new Throwable("Resulting ESB configuration '"+filename+
- "' not found for comparison"));
- }
- }
-
- /**
- * This class converts a DOM representation node to
- * text with appropriate presentation formatting.
- *
- * @param node The DOM node
- * @param pretty Whether to format the text for presentation
- * @return The text
- * @throws Exception Failed to convert
- */
- public static String getText(Node node, boolean pretty) throws Exception {
- String ret=getText(node);
-
- if (pretty) {
- ret = reformat(ret);
- }
-
- return(ret);
- }
-
- /**
- * This method reformats the XML text for presentation.
- *
- * @param xmltext The original XML text
- * @return The reformatted text
- */
- protected static String reformat(String xmltext) {
- String ret=xmltext;
- int pos=0;
- int prevpos=0;
- StringBuffer buf=new StringBuffer();
- int level=0;
-
- while ((pos=ret.indexOf('<', prevpos)) != -1) {
-
- if (prevpos < pos &&
- ret.substring(prevpos, pos).trim().length() > 0 &&
- ret.charAt(prevpos-1) != '?') {
-
- if (ret.charAt(prevpos) == '\r' &&
- ret.charAt(prevpos+1) == '\n') {
- prevpos += 2;
- }
- for (int i=0; i < level; i++) {
- buf.append(" ");
- }
-
- buf.append(ret.substring(prevpos, pos).trim());
- buf.append("\r\n");
- }
-
- int endpos=ret.indexOf('>', pos);
-
- if (endpos > 0) {
- boolean noreturn=false;
-
- if (pos > 0 && ret.charAt(pos+1) == '/') {
- level--;
- }
-
- for (int i=0; i < level; i++) {
- buf.append(" ");
- }
- buf.append(ret.substring(pos, endpos+1));
-
- if (ret.charAt(endpos-1)== '?') {
- //noreturn = true;
-
- } else if (ret.charAt(endpos-1) == '/') {
- // Ignore
- } else if (pos > 0 && ret.charAt(pos+1) == '/') {
- // Ignore
-
- } else if (pos > 0 && ret.charAt(pos+1) == '!') {
- // Ignore
-
- } else {
- level++;
- }
-
- if (noreturn == false) {
- buf.append("\r\n");
- }
-
- pos = endpos+1;
- }
-
- prevpos = pos;
- }
-
- if (prevpos != -1 &&
- ret.substring(prevpos).trim().length() > 0) {
- buf.append(ret.substring(prevpos));
- }
-
- ret = buf.toString();
-
- return(ret);
- }
-
- /**
- * This class converts a DOM representation node to
- * text.
- *
- * @param node The DOM node
- * @return The text
- * @throws Exception Failed to convert
- */
- public static String getText(Node node) throws Exception {
- String ret=null;
-
- try {
- // Transform the DOM represent to text
- java.io.ByteArrayOutputStream xmlstr=
- new java.io.ByteArrayOutputStream();
-
- DOMSource source=new DOMSource();
- source.setNode(node);
-
- StreamResult result=new StreamResult(xmlstr);
-
- Transformer trans=
- TransformerFactory.newInstance().newTransformer();
- trans.transform(source, result);
-
- xmlstr.close();
-
- ret = new String(xmlstr.toByteArray());
-
- if ((node instanceof org.w3c.dom.Document) == false) {
-
- // Strip off any <?xml> header
- int index=ret.indexOf("<?xml");
- if (index != -1) {
- index = ret.indexOf("<", 1);
-
- if (index != -1) {
- ret = ret.substring(index);
- } else {
- index = ret.indexOf("?>");
-
- if (index != -1) {
- index += 2;
-
- // Remove any trailing whitespaces
- // after XML header
- while (index < ret.length() &&
- Character.isWhitespace(ret.charAt(index))) {
- index++;
- }
-
- ret = ret.substring(index);
- }
- }
- }
- }
-
- } catch(Exception e) {
- throw new Exception("Failed to transform " +
- "DOM representation into text", e);
- }
-
- return(ret);
- }
-
- private String m_name=null;
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/generator/TypeMapperTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,122 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.generator;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.generator.TypeMapper;
-
-import junit.framework.TestCase;
-
-public class TypeMapperTest extends TestCase {
-
- public void testGetJavaTypeCustomClass() {
- String pack="org.acme.service";
- String namespace=TypeMapper.JAVA_PREFIX+pack;
- String localpart="Message";
- String clsName=pack+"."+localpart;
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-
- public void testGetJavaTypeDOMElement() {
- String namespace="http://www.jboss.org/example";
- String localpart="Message";
- String clsName=org.w3c.dom.Element.class.getName();
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-
- public void testGetJavaTypeXSDString() {
- String namespace=TypeMapper.XSD_NAMESPACE;
- String localpart="string";
- String clsName=String.class.getName();
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-
- public void testGetJavaTypeXSDBoolean() {
- String namespace=TypeMapper.XSD_NAMESPACE;
- String localpart="boolean";
- String clsName="boolean";
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-
- public void testGetJavaTypeXSDDecimal() {
- String namespace=TypeMapper.XSD_NAMESPACE;
- String localpart="decimal";
- String clsName="int";
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-
- public void testGetJavaTypeXSDInteger() {
- String namespace=TypeMapper.XSD_NAMESPACE;
- String localpart="integer";
- String clsName="int";
-
- String type=TypeMapper.getJavaType(namespace, localpart);
-
- if (type == null) {
- fail("Type not returned");
- }
-
- if (type.equals(clsName) == false) {
- fail("Expecting '"+clsName+"', but got: "+type);
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/CreateSessionActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/CreateSessionActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/CreateSessionActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,189 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.CreateSessionAction;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.UnsupportedAction;
-
-import junit.framework.TestCase;
-
-public class CreateSessionActionTest extends TestCase {
-
- public void testValidateFirstAction() {
- TestESBService service=new TestESBService();
-
- UnsupportedAction unsupported=new UnsupportedAction(service, null);
-
- CreateSessionAction action=new CreateSessionAction(service, null);
-
- service.getActions().add(action);
- service.getActions().add(unsupported);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNotFirstAction() {
- TestESBService service=new TestESBService();
-
- UnsupportedAction unsupported=new UnsupportedAction(service, null);
-
- CreateSessionAction action=new CreateSessionAction(service, null);
-
- service.getActions().add(unsupported);
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_BE_FIRST_ACTION",
- new String[]{"CreateSession"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateRootNoConversationType() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- CreateSessionAction action=new CreateSessionAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_CONVERSATION_TYPE",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateRootWithConversationType() {
- String convType="test.Type at MyRole";
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("conversationType", convType);
-
- service.setConversationType(convType);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- CreateSessionAction action=new CreateSessionAction(service, elem);
-
- service.getActions().add(action);
-
- service.setModel(model);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
-
- public void testValidateRootWithConversationTypeNoRole() {
- String convType="test.Type";
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("conversationType", convType);
-
- service.setConversationType(convType);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- CreateSessionAction action=new CreateSessionAction(service, elem);
-
- service.getActions().add(action);
-
- service.setModel(model);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_CONVERSATION_TYPE_ROLE",
- new String[]{convType}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- CreateSessionAction action=new CreateSessionAction(service, null);
-
- if (action.isSessionType() == false) {
- fail("Action is not flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- CreateSessionAction action=new CreateSessionAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/IfActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/IfActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/IfActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,630 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import junit.framework.TestCase;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.IfAction;
-import org.scribble.model.*;
-import org.scribble.conversation.model.*;
-
-public class IfActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- IfAction action=new IfAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2","name2"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat3","name3"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoPathsContent() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat3");
- other2.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_IF_ORDER_WRONG",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOnlyOneIf() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><if service-category=\"cat3\" " +
- "service-name=\"name3\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_IF_ORDER_WRONG",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOutOfOrderElse() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_IF_ORDER_WRONG",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediateIf() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" immediate=\"fred\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{IfAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediateElseIf() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" immediate=\"fred\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{IfAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediateElse() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" immediate=\"fred\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{IfAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof If) == false) {
- fail("Expecting an 'If' activity");
- }
-
- If ifAction=(If)act;
-
- if (ifAction.getConditionalBlocks().size() != 2) {
- fail("Expecting two conditional blocks: "+ifAction.getConditionalBlocks().size());
- }
-
- if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (ifAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
- fail("Second conditional block should have 1 activity = act2");
- }
-
- if (ifAction.getElseBlock() == null) {
- fail("Else block not defined");
- }
-
- if (ifAction.getElseBlock().getContents().size() != 1 ||
- ifAction.getElseBlock().getContents().get(0) != act3) {
- fail("Else block should have 1 activity = act3");
- }
- }
-
- public void testConvertNotExcludingEmptyPaths() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><if service-category=\"cat1\" " +
- "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
- "service-name=\"name2\" /><else service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- IfAction action=new IfAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof If) == false) {
- fail("Expecting an 'If' activity");
- }
-
- If ifAction=(If)act;
-
- if (ifAction.getConditionalBlocks().size() != 2) {
- fail("Expecting two conditional blocks: "+ifAction.getConditionalBlocks().size());
- }
-
- if (ifAction.getConditionalBlocks().get(0).getContents().size() != 0) {
- fail("First conditional block should be empty");
- }
-
- if (ifAction.getConditionalBlocks().get(1).getContents().size() != 0) {
- fail("Second conditional block should be empty");
- }
-
- if (ifAction.getElseBlock() == null) {
- fail("Else block not defined");
- }
-
- if (ifAction.getElseBlock().getContents().size() != 0) {
- fail("Else block should have be empty");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- IfAction action=new IfAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- IfAction action=new IfAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/MessageRouterActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/MessageRouterActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/MessageRouterActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,272 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.MessageRouterAction;
-
-import junit.framework.TestCase;
-
-public class MessageRouterActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateSessionBasedService() {
- TestESBService service=new TestESBService();
- service.setSessionBased(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><route service-category=\"cat1\" " +
- "service-name=\"name1\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_CANNOT_SESSION_BASED_ACTIONS_WITH_ROUTER",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><route service-category=\"cat1\" " +
- "service-name=\"name1\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateInitiateServiceNotRoot() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><route service-category=\"cat1\" " +
- "service-name=\"name1\" initiate=\"true\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other=new TestESBService();
- other.setCategory("cat1");
- other.setName("name1");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other);
- model.addService(service);
-
- service.setModel(model);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_CANNOT_INITIATE_NON_ROOT",
- new String[]{other.getCategory(),
- other.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNotInitiateRootService() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><route service-category=\"cat1\" " +
- "service-name=\"name1\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other=new TestESBService();
- other.setCategory("cat1");
- other.setName("name1");
- other.setRoot(true);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other);
- model.addService(service);
-
- service.setModel(model);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_INITIATE_ROOT",
- new String[]{other.getCategory(),
- other.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoRoutes() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_ROUTER_ONE_OR_MORE_PATHS",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceDetailsMissing() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><route service-category=\"cat1\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- MessageRouterAction action=new MessageRouterAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- MessageRouterAction action=new MessageRouterAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- MessageRouterAction action=new MessageRouterAction(service, null);
-
- if (action.isSessionBased() == true) {
- fail("Action is flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ParallelActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ParallelActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ParallelActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,526 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.scribble.conversation.model.*;
-import org.scribble.model.Activity;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ParallelAction;
-
-import junit.framework.TestCase;
-
-public class ParallelActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- ParallelAction action=new ParallelAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2","name2"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat3","name3"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateLessThanTwoPaths() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat3");
- other2.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PARALLEL_MORE_THAN_TWO_PATHS",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOnlyOneJoin() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MULTIPLE_JOINS",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOutOfOrderJoin() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PARALLEL_PATH_AFTER_JOIN",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path " +
- "service-name=\"name2\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediate() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" immediate=\"fred\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{ParallelAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(null));
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Parallel) == false) {
- fail("Expecting an 'Parallel' activity");
- }
-
- Parallel parallelAction=(Parallel)act;
-
- if (parallelAction.getBlocks().size() != 2) {
- fail("Expecting two blocks: "+parallelAction.getBlocks().size());
- }
-
- if (parallelAction.getBlocks().get(0).getContents().size() != 1 ||
- parallelAction.getBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (parallelAction.getBlocks().get(1).getContents().size() != 1 ||
- parallelAction.getBlocks().get(1).getContents().get(0) != act2) {
- fail("Second conditional block should have 1 activity = act2");
- }
-
- if (activities.get(1) != act3) {
- fail("Activity after parallel should be act3");
- }
- }
-
- public void testConvertNotExcludingEmptyPaths() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><path service-category=\"cat1\" " +
- "service-name=\"name1\" /><path service-category=\"cat2\" " +
- "service-name=\"name2\" /><join service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- ParallelAction action=new ParallelAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(null));
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Parallel) == false) {
- fail("Expecting an 'Parallel' activity");
- }
-
- Parallel parallelAction=(Parallel)act;
-
- if (parallelAction.getBlocks().size() != 2) {
- fail("Expecting two blocks: "+parallelAction.getBlocks().size());
- }
-
- if (parallelAction.getBlocks().get(0).getContents().size() != 1 ||
- parallelAction.getBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (parallelAction.getBlocks().get(1).getContents().size() != 0) {
- fail("Second conditional block should be empty");
- }
-
- if (activities.get(1) != act3) {
- fail("Activity after parallel should be act3");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- ParallelAction action=new ParallelAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- ParallelAction action=new ParallelAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/PerformActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/PerformActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/PerformActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,779 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.PerformAction;
-import org.scribble.conversation.model.*;
-import org.scribble.model.Activity;
-
-import junit.framework.TestCase;
-
-public class PerformActionTest extends TestCase {
-
- public void testValidateNoServiceCategory() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_NAME, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- PerformAction action=new PerformAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"serviceCategory"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoServiceName() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- PerformAction action=new PerformAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"serviceName"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateService() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1", "name1"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateReturnService() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
- props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2", "name2"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceCreatesSession() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
- props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(false);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_FOUND_PERFORM_CREATE_SESSION",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateParentReferenceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.PARENT_REFERENCE, "fred");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(Object.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{"fred", Object.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateParentReferenceNotWritable() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.PARENT_REFERENCE, "class");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(Object.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_WRITABLE_PROPERTY",
- new String[]{"class", Object.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateParentReferenceIncorrectType() {
- TestESBService service=new TestESBService();
- service.setSessionClass(ParentPojo.class);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.PARENT_REFERENCE, "invalidParent");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(ChildPojo.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_INVALID_PROPERTY_TYPE",
- new String[]{"invalidParent",
- ChildPojo.class.getName(),
- ParentPojo.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateParentReferenceCorrectType() {
- TestESBService service=new TestESBService();
- service.setSessionClass(ParentPojo.class);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.PARENT_REFERENCE, "validParent");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(ChildPojo.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateParentReferenceCorrectType2() {
- TestESBService service=new TestESBService();
- service.setSessionClass(ParentPojo.class);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.PARENT_REFERENCE, "validParentView");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(ChildPojo.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateBindDetailsNotFound() {
- TestESBService service=new TestESBService();
-
- String varName="fred";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
-
- java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
- customProps.put(PerformAction.BIND_DETAILS,
- "<root><bind to-variable=\""+varName+"\" /></root>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(Object.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{varName, Object.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateBindDetailsNotWritable() {
- TestESBService service=new TestESBService();
-
- String varName="class";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
-
- java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
- customProps.put(PerformAction.BIND_DETAILS,
- "<root><bind to-variable=\""+varName+"\" /></root>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(Object.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_WRITABLE_PROPERTY",
- new String[]{varName, Object.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateBindDetailsCorrect() {
- TestESBService service=new TestESBService();
-
- String varName="validParent";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
-
- java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
- customProps.put(PerformAction.BIND_DETAILS,
- "<root><bind to-variable=\""+varName+"\" /></root>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setCreateSession(true);
- other1.setSessionClass(ChildPojo.class);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvertRun() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
- props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Run) == false) {
- fail("Expecting an 'Run' activity");
- }
-
- Run runAction=(Run)act;
-
- if (runAction.getDefinition() == null) {
- fail("Run definition was null");
- }
-
- if (runAction.getDefinition().getBlock().getContents().size() != 1) {
- fail("Expecting one ran block activity: "+runAction.getDefinition().getBlock().getContents().size());
- }
-
- if (runAction.getDefinition().getBlock().getContents().get(0) != act1) {
- fail("Run model block should have 1 activity = act1");
- }
-
- if (activities.get(1) != act2) {
- fail("Subsequent activity after run was not act2");
- }
- }
-
- public void testConvertSpawn() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting 1 activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Spawn) == false) {
- fail("Expecting a 'Spawn' activity");
- }
-
- Spawn spawnAction=(Spawn)act;
-
- if (spawnAction.getDefinition() == null) {
- fail("Run definition was null");
- }
-
- if (spawnAction.getDefinition().getBlock().getContents().size() != 1) {
- fail("Expecting one block activity: "+spawnAction.getDefinition().getBlock().getContents().size());
- }
-
- if (spawnAction.getDefinition().getBlock().getContents().get(0) != act1) {
- fail("Spawn model block should have 1 activity = act1");
- }
- }
-
- public void testConvertNotExcludingEmptyPath() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(PerformAction.SERVICE_CATEGORY, "cat1");
- props.put(PerformAction.SERVICE_NAME, "name1");
- props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
- props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- PerformAction action=new PerformAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Run) == false) {
- fail("Expecting an 'Run' activity");
- }
-
- Run runAction=(Run)act;
-
- if (runAction.getDefinition() == null) {
- fail("Run definition was null");
- }
-
- if (runAction.getDefinition().getBlock().getContents().size() != 0) {
- fail("Expecting zero ran block activities: "+runAction.getDefinition().getBlock().getContents().size());
- }
-
- if (activities.get(1) != act2) {
- fail("Subsequent activity after run was not act2");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- PerformAction action=new PerformAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- PerformAction action=new PerformAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-
- public interface ParentView {
-
- }
-
- public class ParentPojo implements ParentView {
-
- }
-
- public class ChildPojo {
-
- public void setValidParent(ParentPojo p) {
- }
-
- public void setValidParentView(ParentView p) {
- }
-
- public void setInvalidParent(String p) {
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ReceiveMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ReceiveMessageActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ReceiveMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,287 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.scribble.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ReceiveMessageAction;
-
-import junit.framework.TestCase;
-
-public class ReceiveMessageActionTest extends TestCase {
-
- public void testValidateNoMessageType() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("identities", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"messageType"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoIdentities() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"identities"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvertRoles() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getToRole() == null) {
- fail("'To' role is null");
- }
-
- if (interaction.getToRole().getName().equals(role) == false) {
- fail("'To' role should be '"+role+"', but found: "+interaction.getToRole().getName());
- }
-
- if (interaction.getFromRole() != null) {
- fail("'From' role should be null");
- }
- }
-
- public void testConvertMessageBased() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getMessageSignature() == null) {
- fail("Message signature is null");
- }
-
- if (interaction.getMessageSignature().getOperation() != null) {
- fail("Operation should be null");
- }
-
- if (interaction.getMessageSignature().getTypes().size() != 1) {
- fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
- }
-
- TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
-
- if (ref.getNamespace() == null ||
- ref.getNamespace().equals(ns) == false) {
- fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
- }
-
- if (ref.getLocalpart() == null ||
- ref.getLocalpart().equals(lp) == false) {
- fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
- }
- }
-
- public void testConvertRPCBased() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String opname="op";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("operation", opname);
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getMessageSignature() == null) {
- fail("Message signature is null");
- }
-
- if (interaction.getMessageSignature().getOperation() == null) {
- fail("Operation should not be null");
- }
-
- if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
- fail("Operation expected '"+opname+"', but got: "+
- interaction.getMessageSignature().getOperation());
- }
-
- if (interaction.getMessageSignature().getTypes().size() != 1) {
- fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
- }
-
- TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
-
- if (ref.getNamespace() == null ||
- ref.getNamespace().equals(ns) == false) {
- fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
- }
-
- if (ref.getLocalpart() == null ||
- ref.getLocalpart().equals(lp) == false) {
- fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- ReceiveMessageAction action=new ReceiveMessageAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/RetrieveSessionActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/RetrieveSessionActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/RetrieveSessionActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,128 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.RetrieveSessionAction;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.UnsupportedAction;
-
-import junit.framework.TestCase;
-
-public class RetrieveSessionActionTest extends TestCase {
-
- public void testValidateFirstAction() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("identities", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- UnsupportedAction unsupported=new UnsupportedAction(service, null);
-
- RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
-
- service.getActions().add(action);
- service.getActions().add(unsupported);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNotFirstAction() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("identities", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- UnsupportedAction unsupported=new UnsupportedAction(service, null);
-
- RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
-
- service.getActions().add(unsupported);
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_BE_FIRST_ACTION",
- new String[]{"RetrieveSession"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoIdentities() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"identities"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- RetrieveSessionAction action=new RetrieveSessionAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- RetrieveSessionAction action=new RetrieveSessionAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ScheduleStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ScheduleStateActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ScheduleStateActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,257 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.scribble.model.Activity;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ScheduleStateAction;
-
-import junit.framework.TestCase;
-
-public class ScheduleStateActionTest extends TestCase {
-
- public void testValidateNoServiceCategory() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceName", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"serviceCategory"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoServiceName() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceCategory", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"serviceName"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateService() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceCategory", "cat1");
- props.put("serviceName", "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1", "name1"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceCategory", "cat1");
- props.put("serviceName", "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(null));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- if (activities.get(0) != act1) {
- fail("Activity was not act1");
- }
- }
-
- public void testConvertBackToWhileLoop() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceCategory", "cat1");
- props.put("serviceName", "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
- other1.setLoop(true);
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- DefaultConversionContext context=new DefaultConversionContext(null);
- context.push(other1);
-
- action.convert(activities, context);
-
- if (activities.size() != 0) {
- fail("Should be no activities, but found: "+activities.size());
- }
- }
-
- public void testConvertBackToJoinState() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("serviceCategory", "cat1");
- props.put("serviceName", "name1");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(service);
-
- service.setModel(model);
-
- ScheduleStateAction action=new ScheduleStateAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- DefaultConversionContext context=new DefaultConversionContext(null);
- context.markJoin(other1);
-
- action.convert(activities, context);
-
- if (activities.size() != 0) {
- fail("Should be no activities, but found: "+activities.size());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- ScheduleStateAction action=new ScheduleStateAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- ScheduleStateAction action=new ScheduleStateAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SendMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SendMessageActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SendMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,363 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.DefaultConversionContext;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SendMessageAction;
-import org.scribble.model.Activity;
-import org.scribble.model.Interaction;
-import org.scribble.model.TypeReference;
-
-import junit.framework.TestCase;
-
-public class SendMessageActionTest extends TestCase {
-
- public void testValidateNoMessageType() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("identities", "");
- props.put("serviceCategory", "");
- props.put("serviceName", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SendMessageAction action=new SendMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"messageType"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoIdentities() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "");
- props.put("clientRole", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SendMessageAction action=new SendMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"identities"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateNoDestination() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "");
- props.put("identities", "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SendMessageAction action=new SendMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_REQ_RESP_EPR",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateResponseService() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "");
- props.put("identities", "");
- props.put("serviceCategory", "cat1");
- props.put("serviceName", "name1");
- props.put("responseServiceCategory", "cat2");
- props.put("responseServiceName", "name2");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- SendMessageAction action=new SendMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2", "name2"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvertRoles() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- SendMessageAction action=new SendMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getFromRole() == null) {
- fail("'From' role is null");
- }
-
- if (interaction.getFromRole().getName().equals(role) == false) {
- fail("'From' role should be '"+role+"', but found: "+interaction.getFromRole().getName());
- }
-
- if (interaction.getToRole() != null) {
- fail("'To' role should be null");
- }
- }
-
- public void testConvertMessageBased() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- SendMessageAction action=new SendMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getMessageSignature() == null) {
- fail("Message signature is null");
- }
-
- if (interaction.getMessageSignature().getOperation() != null) {
- fail("Operation should be null");
- }
-
- if (interaction.getMessageSignature().getTypes().size() != 1) {
- fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
- }
-
- TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
-
- if (ref.getNamespace() == null ||
- ref.getNamespace().equals(ns) == false) {
- fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
- }
-
- if (ref.getLocalpart() == null ||
- ref.getLocalpart().equals(lp) == false) {
- fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
- }
- }
-
- public void testConvertRPCBased() {
- TestESBService service=new TestESBService();
-
- String ns="MessageTypeNS";
- String lp="MessageType";
- String opname="op";
- String role="Buyer";
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("operation", opname);
- props.put("messageType", "{"+ns+"}"+lp);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- SendMessageAction action=new SendMessageAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(role));
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof Interaction) == false) {
- fail("Expecting an 'Interaction' activity");
- }
-
- Interaction interaction=(Interaction)act;
-
- if (interaction.getMessageSignature() == null) {
- fail("Message signature is null");
- }
-
- if (interaction.getMessageSignature().getOperation() == null) {
- fail("Operation should not be null");
- }
-
- if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
- fail("Operation expected '"+opname+"', but got: "+
- interaction.getMessageSignature().getOperation());
- }
-
- if (interaction.getMessageSignature().getTypes().size() != 1) {
- fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
- }
-
- TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
-
- if (ref.getNamespace() == null ||
- ref.getNamespace().equals(ns) == false) {
- fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
- }
-
- if (ref.getLocalpart() == null ||
- ref.getLocalpart().equals(lp) == false) {
- fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- SendMessageAction action=new SendMessageAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- SendMessageAction action=new SendMessageAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetMessageActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetMessageActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,74 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SetMessageAction;
-
-import junit.framework.TestCase;
-
-public class SetMessageActionTest extends TestCase {
-
- public void testValidateNoExpression() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SetMessageAction action=new SetMessageAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{SetMessageAction.STATE_EXPRESSION}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- SetMessageAction action=new SetMessageAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- SetMessageAction action=new SetMessageAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetStateActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetStateActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetStateActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,358 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SetStateAction;
-
-import junit.framework.TestCase;
-
-public class SetStateActionTest extends TestCase {
-
- public void testValidateNoVariable() {
- TestESBService service=new TestESBService();
- service.setRoot(true);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{SetStateAction.VARIABLE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableNotClassProperty() {
- String varName="classX";
- Class<?> cls=java.lang.Object.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_FOUND_VARIABLE",
- new String[]{varName, cls.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateVariableIsClassProperty() {
- String varName="writableProperty";
- Class<?> cls=TestClass2.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMultiPartVariableIsClassWritableProperty() {
- String varName="testClass2.writableProperty";
- Class<?> cls=TestClass1.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMultiPartVariableIsClassNotWritableProperty() {
- String varName="testClass2.readableProperty";
- Class<?> cls=TestClass1.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_WRITABLE_PROPERTY",
- new String[]{"readableProperty", TestClass2.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMultiPartVariableIsClassNotReadableProperty() {
- String varName="testClass2.writableProperty";
- Class<?> cls=TestClass3.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.STATE_EXPRESSION, "");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_READABLE_PROPERTY",
- new String[]{"testClass2", TestClass3.class.getName()}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingExpression() {
- String varName="writableProperty";
- Class<?> cls=TestClass2.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateBothExpressions() {
- String varName="writableProperty";
- Class<?> cls=TestClass2.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
- props.put(SetStateAction.STATE_EXPRESSION, "state");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMessageExpression() {
- String varName="writableProperty";
- Class<?> cls=TestClass2.class;
-
- TestESBService service=new TestESBService();
- service.setRoot(true);
- service.setSessionClass(cls);
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put(SetStateAction.VARIABLE, varName);
- props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
- props, null);
-
- SetStateAction action=new SetStateAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- SetStateAction action=new SetStateAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- SetStateAction action=new SetStateAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-
- public class TestClass1 {
- public TestClass1() {
- }
-
- public TestClass2 getTestClass2() {
- return(null);
- }
- }
-
- public class TestClass2 {
- public TestClass2() {
- }
-
- public String getReadableProperty() {
- return(null);
- }
-
- public void setWritableProperty(String str) {
- }
- }
-
- public class TestClass3 {
- public TestClass3() {
- }
-
- public void setTestClass2(TestClass2 tc2) {
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SwitchActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SwitchActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SwitchActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,382 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SwitchAction;
-import org.scribble.conversation.model.If;
-import org.scribble.model.Activity;
-
-import junit.framework.TestCase;
-
-public class SwitchActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- SwitchAction action=new SwitchAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><case service-category=\"cat1\" " +
- "service-name=\"name1\" /><case service-category=\"cat2\" " +
- "service-name=\"name2\" /><case service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- SwitchAction action=new SwitchAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2","name2"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat3","name3"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateLessThanOnePath() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat3");
- other2.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- SwitchAction action=new SwitchAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_SWITCH_ONE_OR_MORE_PATHS",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><case service-category=\"cat1\" " +
- "service-name=\"name1\" /><case " +
- "service-name=\"name2\" /><case service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- SwitchAction action=new SwitchAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><case service-category=\"cat1\" " +
- "service-name=\"name1\" /><case service-category=\"cat2\" " +
- "service-name=\"name2\" /><case service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- SwitchAction action=new SwitchAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof If) == false) {
- fail("Expecting an 'If' activity");
- }
-
- If ifAction=(If)act;
-
- if (ifAction.getConditionalBlocks().size() != 3) {
- fail("Expecting three conditional blocks: "+ifAction.getConditionalBlocks().size());
- }
-
- if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (ifAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
- fail("Second conditional block should have 1 activity = act2");
- }
-
- if (ifAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
- fail("Third conditional block should have 1 activity = act3");
- }
-
- if (ifAction.getElseBlock() != null) {
- fail("Else block should not be defined");
- }
- }
-
- public void testConvertNotExcludingEmptyPaths() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><case service-category=\"cat1\" " +
- "service-name=\"name1\" /><case service-category=\"cat2\" " +
- "service-name=\"name2\" /><case service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- SwitchAction action=new SwitchAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof If) == false) {
- fail("Expecting an 'If' activity");
- }
-
- If ifAction=(If)act;
-
- if (ifAction.getConditionalBlocks().size() != 3) {
- fail("Expecting three conditional blocks: "+ifAction.getConditionalBlocks().size());
- }
-
- if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (ifAction.getConditionalBlocks().get(1).getContents().size() != 0) {
- fail("Second conditional block should be empty");
- }
-
- if (ifAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
- ifAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
- fail("Third conditional block should have 1 activity = act3");
- }
-
- if (ifAction.getElseBlock() != null) {
- fail("Else block should not be defined");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- SwitchAction action=new SwitchAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- SwitchAction action=new SwitchAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhenActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhenActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhenActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,374 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.WhenAction;
-import org.scribble.conversation.model.*;
-import org.scribble.model.*;
-
-import junit.framework.TestCase;
-
-public class WhenActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- WhenAction action=new WhenAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><when service-category=\"cat1\" " +
- "service-name=\"name1\" /><when service-category=\"cat2\" " +
- "service-name=\"name2\" /><when service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- WhenAction action=new WhenAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2","name2"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat3","name3"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateLessThanOnePath() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat3");
- other2.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhenAction action=new WhenAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_WHEN_ONE_OR_MORE_PATHS",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><when service-category=\"cat1\" " +
- "service-name=\"name1\" /><when " +
- "service-name=\"name2\" /><when service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhenAction action=new WhenAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><when service-category=\"cat1\" " +
- "service-name=\"name1\" /><when service-category=\"cat2\" " +
- "service-name=\"name2\" /><when service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhenAction action=new WhenAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof When) == false) {
- fail("Expecting an 'When' activity");
- }
-
- When whenAction=(When)act;
-
- if (whenAction.getConditionalBlocks().size() != 3) {
- fail("Expecting three conditional blocks: "+whenAction.getConditionalBlocks().size());
- }
-
- if (whenAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
- whenAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (whenAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
- whenAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
- fail("Second conditional block should have 1 activity = act2");
- }
-
- if (whenAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
- whenAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
- fail("Second conditional block should have 1 activity = act3");
- }
- }
-
- public void testConvertNotExcludingEmptyPath() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><when service-category=\"cat1\" " +
- "service-name=\"name1\" /><when service-category=\"cat2\" " +
- "service-name=\"name2\" /><when service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestActivity act3=new TestActivity();
- other3.getContents().add(act3);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhenAction action=new WhenAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, null);
-
- if (activities.size() != 1) {
- fail("Expecting one activity, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof When) == false) {
- fail("Expecting an 'When' activity");
- }
-
- When whenAction=(When)act;
-
- if (whenAction.getConditionalBlocks().size() != 3) {
- fail("Expecting three conditional blocks: "+whenAction.getConditionalBlocks().size());
- }
-
- if (whenAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
- whenAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
- fail("First conditional block should have 1 activity = act1");
- }
-
- if (whenAction.getConditionalBlocks().get(1).getContents().size() != 0) {
- fail("Second conditional block should be empty");
- }
-
- if (whenAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
- whenAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
- fail("Third conditional block should have 1 activity = act3");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- WhenAction action=new WhenAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- WhenAction action=new WhenAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Deleted: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhileActionTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhileActionTest.java 2009-03-13 07:34:38 UTC (rev 538)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhileActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -1,565 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions;
-
-import org.scribble.conversation.model.*;
-import org.scribble.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
-import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.WhileAction;
-
-import junit.framework.TestCase;
-
-public class WhileActionTest extends TestCase {
-
- public void testValidatePathsSpecified() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
-
- WhileAction action=new WhileAction(service, elem);
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_NOT_SPECIFIED_PROPERTY",
- new String[]{"paths"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateServiceNotFound() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" /><exit service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat1","name1"}));
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
- "_NOT_FOUND_SERVICE_DESCRIPTOR",
- new String[]{"cat2","name2"}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOneWhilePath() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat3");
- other2.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_DEFINE_SINGLE_WHILE_EXIT",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOneWhileExit() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><exit service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_MUST_DEFINE_SINGLE_WHILE_PATH",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails1() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while " +
- "service-name=\"name2\" /><exit service-category=\"cat3\" " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateMissingServiceDetails2() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat2\" " +
- "service-name=\"name2\" /><exit " +
- "service-name=\"name3\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_PATH_SERVICE_DETAILS_MISSING",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateOutOfOrderExit() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><exit service-category=\"cat1\" " +
- "service-name=\"name1\" /><while service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBService other3=new TestESBService();
- other3.setCategory("cat3");
- other3.setName("name3");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(other3);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_WHILE_PATH_AFTER_EXIT",
- new String[]{}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediateWhile() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" immediate=\"fred\" /><exit service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{WhileAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testValidateImmediateExit() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" /><exit service-category=\"cat2\" " +
- "service-name=\"name2\" immediate=\"fred\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- TestModelListener l=new TestModelListener();
-
- l.addExpectedError(org.scribble.util.MessageUtil.format(
- java.util.PropertyResourceBundle.getBundle(
- "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
- "_BOOLEAN",
- new String[]{WhileAction.IMMEDIATE}));
-
- action.validate(l);
-
- if (l.isValid() == false) {
- fail(l.invalidMessage());
- }
- }
-
- public void testConvert() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" /><exit service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestActivity act1=new TestActivity();
- other1.getContents().add(act1);
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(null));
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof While) == false) {
- fail("Expecting an 'While' activity");
- }
-
- While whileAction=(While)act;
-
- if (whileAction.getBlock().getContents().size() != 1) {
- fail("Expecting one entry in while block: "+whileAction.getBlock().getContents().size());
- }
-
- if (whileAction.getBlock().getContents().get(0) != act1) {
- fail("While block should have 1 activity = act1");
- }
-
- if (activities.get(1) != act2) {
- fail("Activity following while should be act2");
- }
- }
-
- public void testConvertNotExcludingEmptyBody() {
- TestESBService service=new TestESBService();
-
- java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
- props.put("paths", "<property><while service-category=\"cat1\" " +
- "service-name=\"name1\" /><exit service-category=\"cat2\" " +
- "service-name=\"name2\" /></property>");
-
- org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
-
- TestESBService other1=new TestESBService();
- other1.setCategory("cat1");
- other1.setName("name1");
-
- TestESBService other2=new TestESBService();
- other2.setCategory("cat2");
- other2.setName("name2");
-
- TestActivity act2=new TestActivity();
- other2.getContents().add(act2);
-
- TestESBLanguageModel model=new TestESBLanguageModel();
- model.addService(other1);
- model.addService(other2);
- model.addService(service);
-
- service.setModel(model);
-
- WhileAction action=new WhileAction(service, elem);
- action.initializeLinks();
-
- service.getActions().add(action);
-
- java.util.List<Activity> activities=new java.util.Vector<Activity>();
-
- action.convert(activities, new DefaultConversionContext(null));
-
- if (activities.size() != 2) {
- fail("Expecting two activities, but got: "+activities.size());
- }
-
- Activity act=activities.get(0);
-
- if ((act instanceof While) == false) {
- fail("Expecting an 'While' activity");
- }
-
- While whileAction=(While)act;
-
- if (whileAction.getBlock().getContents().size() != 0) {
- fail("Expecting zero entries in while block: "+whileAction.getBlock().getContents().size());
- }
-
- if (activities.get(1) != act2) {
- fail("Activity following while should be act2");
- }
- }
-
- public void testIsCreateSession() {
- TestESBService service=new TestESBService();
-
- WhileAction action=new WhileAction(service, null);
-
- if (action.isSessionType() == true) {
- fail("Action is flagged as a 'CreateSession'");
- }
- }
-
- public void testIsSessionBased() {
- TestESBService service=new TestESBService();
-
- WhileAction action=new WhileAction(service, null);
-
- if (action.isSessionBased() == false) {
- fail("Action is not flagged as a 'SessionBased'");
- }
- }
-}
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/CreateSessionActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/CreateSessionActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/CreateSessionActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/CreateSessionActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,190 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.CreateSessionAction;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.UnsupportedAction;
+
+import junit.framework.TestCase;
+
+public class CreateSessionActionTest extends TestCase {
+
+ public void testValidateFirstAction() {
+ TestESBService service=new TestESBService();
+
+ UnsupportedAction unsupported=new UnsupportedAction(service, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ service.getActions().add(action);
+ service.getActions().add(unsupported);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNotFirstAction() {
+ TestESBService service=new TestESBService();
+
+ UnsupportedAction unsupported=new UnsupportedAction(service, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ service.getActions().add(unsupported);
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_BE_FIRST_ACTION",
+ new String[]{"CreateSession"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateRootNoConversationType() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_CONVERSATION_TYPE",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateRootWithConversationType() {
+ String convType="test.Type at MyRole";
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("conversationType", convType);
+
+ service.setConversationType(convType);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, elem);
+
+ service.getActions().add(action);
+
+ service.setModel(model);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+
+ public void testValidateRootWithConversationTypeNoRole() {
+ String convType="test.Type";
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("conversationType", convType);
+
+ service.setConversationType(convType);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ CreateSessionAction action=new CreateSessionAction(service, elem);
+
+ service.getActions().add(action);
+
+ service.setModel(model);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_CONVERSATION_TYPE_ROLE",
+ new String[]{convType}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ if (action.isSessionType() == false) {
+ fail("Action is not flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ CreateSessionAction action=new CreateSessionAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/CreateSessionActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/IfActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/IfActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/IfActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/IfActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,632 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import junit.framework.TestCase;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.IfAction;
+import org.scribble.model.*;
+import org.scribble.conversation.model.*;
+
+public class IfActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ IfAction action=new IfAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2","name2"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat3","name3"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoPathsContent() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat3");
+ other2.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_IF_ORDER_WRONG",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOnlyOneIf() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><if service-category=\"cat3\" " +
+ "service-name=\"name3\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_IF_ORDER_WRONG",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOutOfOrderElse() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_IF_ORDER_WRONG",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediateIf() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" immediate=\"fred\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{IfAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediateElseIf() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" immediate=\"fred\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{IfAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediateElse() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" immediate=\"fred\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{IfAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof If) == false) {
+ fail("Expecting an 'If' activity");
+ }
+
+ If ifAction=(If)act;
+
+ if (ifAction.getConditionalBlocks().size() != 2) {
+ fail("Expecting two conditional blocks: "+ifAction.getConditionalBlocks().size());
+ }
+
+ if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (ifAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
+ fail("Second conditional block should have 1 activity = act2");
+ }
+
+ if (ifAction.getElseBlock() == null) {
+ fail("Else block not defined");
+ }
+
+ if (ifAction.getElseBlock().getContents().size() != 1 ||
+ ifAction.getElseBlock().getContents().get(0) != act3) {
+ fail("Else block should have 1 activity = act3");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPaths() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><if service-category=\"cat1\" " +
+ "service-name=\"name1\" /><elseif service-category=\"cat2\" " +
+ "service-name=\"name2\" /><else service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ IfAction action=new IfAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof If) == false) {
+ fail("Expecting an 'If' activity");
+ }
+
+ If ifAction=(If)act;
+
+ if (ifAction.getConditionalBlocks().size() != 2) {
+ fail("Expecting two conditional blocks: "+ifAction.getConditionalBlocks().size());
+ }
+
+ if (ifAction.getConditionalBlocks().get(0).getContents().size() != 0) {
+ fail("First conditional block should be empty");
+ }
+
+ if (ifAction.getConditionalBlocks().get(1).getContents().size() != 0) {
+ fail("Second conditional block should be empty");
+ }
+
+ if (ifAction.getElseBlock() == null) {
+ fail("Else block not defined");
+ }
+
+ if (ifAction.getElseBlock().getContents().size() != 0) {
+ fail("Else block should have be empty");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ IfAction action=new IfAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ IfAction action=new IfAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/IfActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/MessageRouterActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/MessageRouterActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/MessageRouterActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/MessageRouterActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,273 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.MessageRouterAction;
+
+import junit.framework.TestCase;
+
+public class MessageRouterActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateSessionBasedService() {
+ TestESBService service=new TestESBService();
+ service.setSessionBased(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><route service-category=\"cat1\" " +
+ "service-name=\"name1\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_CANNOT_SESSION_BASED_ACTIONS_WITH_ROUTER",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><route service-category=\"cat1\" " +
+ "service-name=\"name1\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateInitiateServiceNotRoot() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><route service-category=\"cat1\" " +
+ "service-name=\"name1\" initiate=\"true\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other=new TestESBService();
+ other.setCategory("cat1");
+ other.setName("name1");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other);
+ model.addService(service);
+
+ service.setModel(model);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_CANNOT_INITIATE_NON_ROOT",
+ new String[]{other.getCategory(),
+ other.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNotInitiateRootService() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><route service-category=\"cat1\" " +
+ "service-name=\"name1\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other=new TestESBService();
+ other.setCategory("cat1");
+ other.setName("name1");
+ other.setRoot(true);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other);
+ model.addService(service);
+
+ service.setModel(model);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_INITIATE_ROOT",
+ new String[]{other.getCategory(),
+ other.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoRoutes() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_ROUTER_ONE_OR_MORE_PATHS",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceDetailsMissing() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><route service-category=\"cat1\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ MessageRouterAction action=new MessageRouterAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ MessageRouterAction action=new MessageRouterAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ MessageRouterAction action=new MessageRouterAction(service, null);
+
+ if (action.isSessionBased() == true) {
+ fail("Action is flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/MessageRouterActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ParallelActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ParallelActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ParallelActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ParallelActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,528 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.scribble.conversation.model.*;
+import org.scribble.model.Activity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ParallelAction;
+
+import junit.framework.TestCase;
+
+public class ParallelActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ ParallelAction action=new ParallelAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2","name2"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat3","name3"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateLessThanTwoPaths() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat3");
+ other2.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PARALLEL_MORE_THAN_TWO_PATHS",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOnlyOneJoin() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MULTIPLE_JOINS",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOutOfOrderJoin() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PARALLEL_PATH_AFTER_JOIN",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path " +
+ "service-name=\"name2\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediate() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" immediate=\"fred\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{ParallelAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Parallel) == false) {
+ fail("Expecting an 'Parallel' activity");
+ }
+
+ Parallel parallelAction=(Parallel)act;
+
+ if (parallelAction.getBlocks().size() != 2) {
+ fail("Expecting two blocks: "+parallelAction.getBlocks().size());
+ }
+
+ if (parallelAction.getBlocks().get(0).getContents().size() != 1 ||
+ parallelAction.getBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (parallelAction.getBlocks().get(1).getContents().size() != 1 ||
+ parallelAction.getBlocks().get(1).getContents().get(0) != act2) {
+ fail("Second conditional block should have 1 activity = act2");
+ }
+
+ if (activities.get(1) != act3) {
+ fail("Activity after parallel should be act3");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPaths() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><path service-category=\"cat1\" " +
+ "service-name=\"name1\" /><path service-category=\"cat2\" " +
+ "service-name=\"name2\" /><join service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ParallelAction action=new ParallelAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Parallel) == false) {
+ fail("Expecting an 'Parallel' activity");
+ }
+
+ Parallel parallelAction=(Parallel)act;
+
+ if (parallelAction.getBlocks().size() != 2) {
+ fail("Expecting two blocks: "+parallelAction.getBlocks().size());
+ }
+
+ if (parallelAction.getBlocks().get(0).getContents().size() != 1 ||
+ parallelAction.getBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (parallelAction.getBlocks().get(1).getContents().size() != 0) {
+ fail("Second conditional block should be empty");
+ }
+
+ if (activities.get(1) != act3) {
+ fail("Activity after parallel should be act3");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ParallelAction action=new ParallelAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ParallelAction action=new ParallelAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ParallelActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/PerformActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/PerformActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/PerformActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/PerformActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,781 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.PerformAction;
+import org.scribble.conversation.model.*;
+import org.scribble.model.Activity;
+
+import junit.framework.TestCase;
+
+public class PerformActionTest extends TestCase {
+
+ public void testValidateNoServiceCategory() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_NAME, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ PerformAction action=new PerformAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"serviceCategory"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoServiceName() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ PerformAction action=new PerformAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"serviceName"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateService() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1", "name1"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateReturnService() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
+ props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2", "name2"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceCreatesSession() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
+ props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(false);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_FOUND_PERFORM_CREATE_SESSION",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateParentReferenceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.PARENT_REFERENCE, "fred");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(Object.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_FOUND_VARIABLE",
+ new String[]{"fred", Object.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateParentReferenceNotWritable() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.PARENT_REFERENCE, "class");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(Object.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_WRITABLE_PROPERTY",
+ new String[]{"class", Object.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateParentReferenceIncorrectType() {
+ TestESBService service=new TestESBService();
+ service.setSessionClass(ParentPojo.class);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.PARENT_REFERENCE, "invalidParent");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(ChildPojo.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_INVALID_PROPERTY_TYPE",
+ new String[]{"invalidParent",
+ ChildPojo.class.getName(),
+ ParentPojo.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateParentReferenceCorrectType() {
+ TestESBService service=new TestESBService();
+ service.setSessionClass(ParentPojo.class);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.PARENT_REFERENCE, "validParent");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(ChildPojo.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateParentReferenceCorrectType2() {
+ TestESBService service=new TestESBService();
+ service.setSessionClass(ParentPojo.class);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.PARENT_REFERENCE, "validParentView");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(ChildPojo.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateBindDetailsNotFound() {
+ TestESBService service=new TestESBService();
+
+ String varName="fred";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+
+ java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
+ customProps.put(PerformAction.BIND_DETAILS,
+ "<root><bind to-variable=\""+varName+"\" /></root>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(Object.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_FOUND_VARIABLE",
+ new String[]{varName, Object.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateBindDetailsNotWritable() {
+ TestESBService service=new TestESBService();
+
+ String varName="class";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+
+ java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
+ customProps.put(PerformAction.BIND_DETAILS,
+ "<root><bind to-variable=\""+varName+"\" /></root>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(Object.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_WRITABLE_PROPERTY",
+ new String[]{varName, Object.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateBindDetailsCorrect() {
+ TestESBService service=new TestESBService();
+
+ String varName="validParent";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+
+ java.util.Map<String,String> customProps=new java.util.Hashtable<String,String>();
+ customProps.put(PerformAction.BIND_DETAILS,
+ "<root><bind to-variable=\""+varName+"\" /></root>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, customProps);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setCreateSession(true);
+ other1.setSessionClass(ChildPojo.class);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvertRun() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
+ props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Run) == false) {
+ fail("Expecting an 'Run' activity");
+ }
+
+ Run runAction=(Run)act;
+
+ if (runAction.getDefinition() == null) {
+ fail("Run definition was null");
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().size() != 1) {
+ fail("Expecting one ran block activity: "+runAction.getDefinition().getBlock().getContents().size());
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().get(0) != act1) {
+ fail("Run model block should have 1 activity = act1");
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Subsequent activity after run was not act2");
+ }
+ }
+
+ public void testConvertSpawn() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting 1 activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Spawn) == false) {
+ fail("Expecting a 'Spawn' activity");
+ }
+
+ Spawn spawnAction=(Spawn)act;
+
+ if (spawnAction.getDefinition() == null) {
+ fail("Run definition was null");
+ }
+
+ if (spawnAction.getDefinition().getBlock().getContents().size() != 1) {
+ fail("Expecting one block activity: "+spawnAction.getDefinition().getBlock().getContents().size());
+ }
+
+ if (spawnAction.getDefinition().getBlock().getContents().get(0) != act1) {
+ fail("Spawn model block should have 1 activity = act1");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(PerformAction.SERVICE_CATEGORY, "cat1");
+ props.put(PerformAction.SERVICE_NAME, "name1");
+ props.put(PerformAction.RETURN_SERVICE_CATEGORY, "cat2");
+ props.put(PerformAction.RETURN_SERVICE_NAME, "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ PerformAction action=new PerformAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Run) == false) {
+ fail("Expecting an 'Run' activity");
+ }
+
+ Run runAction=(Run)act;
+
+ if (runAction.getDefinition() == null) {
+ fail("Run definition was null");
+ }
+
+ if (runAction.getDefinition().getBlock().getContents().size() != 0) {
+ fail("Expecting zero ran block activities: "+runAction.getDefinition().getBlock().getContents().size());
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Subsequent activity after run was not act2");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ PerformAction action=new PerformAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ PerformAction action=new PerformAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+
+ public interface ParentView {
+
+ }
+
+ public class ParentPojo implements ParentView {
+
+ }
+
+ public class ChildPojo {
+
+ public void setValidParent(ParentPojo p) {
+ }
+
+ public void setValidParentView(ParentView p) {
+ }
+
+ public void setInvalidParent(String p) {
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/PerformActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ReceiveMessageActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ReceiveMessageActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ReceiveMessageActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ReceiveMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,288 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.scribble.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ReceiveMessageAction;
+
+import junit.framework.TestCase;
+
+public class ReceiveMessageActionTest extends TestCase {
+
+ public void testValidateNoMessageType() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("identities", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"messageType"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoIdentities() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"identities"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvertRoles() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getToRole() == null) {
+ fail("'To' role is null");
+ }
+
+ if (interaction.getToRole().getName().equals(role) == false) {
+ fail("'To' role should be '"+role+"', but found: "+interaction.getToRole().getName());
+ }
+
+ if (interaction.getFromRole() != null) {
+ fail("'From' role should be null");
+ }
+ }
+
+ public void testConvertMessageBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+ fail("Operation should be null");
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testConvertRPCBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String opname="op";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("operation", opname);
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() == null) {
+ fail("Operation should not be null");
+ }
+
+ if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
+ fail("Operation expected '"+opname+"', but got: "+
+ interaction.getMessageSignature().getOperation());
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ReceiveMessageAction action=new ReceiveMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ReceiveMessageActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/RetrieveSessionActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/RetrieveSessionActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/RetrieveSessionActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/RetrieveSessionActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,129 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.RetrieveSessionAction;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.UnsupportedAction;
+
+import junit.framework.TestCase;
+
+public class RetrieveSessionActionTest extends TestCase {
+
+ public void testValidateFirstAction() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("identities", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ UnsupportedAction unsupported=new UnsupportedAction(service, null);
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
+
+ service.getActions().add(action);
+ service.getActions().add(unsupported);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNotFirstAction() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("identities", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ UnsupportedAction unsupported=new UnsupportedAction(service, null);
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
+
+ service.getActions().add(unsupported);
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_BE_FIRST_ACTION",
+ new String[]{"RetrieveSession"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoIdentities() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"identities"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ RetrieveSessionAction action=new RetrieveSessionAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/RetrieveSessionActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ScheduleStateActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/ScheduleStateActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ScheduleStateActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ScheduleStateActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,259 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.scribble.model.Activity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.ScheduleStateAction;
+
+import junit.framework.TestCase;
+
+public class ScheduleStateActionTest extends TestCase {
+
+ public void testValidateNoServiceCategory() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceName", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"serviceCategory"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoServiceName() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"serviceName"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateService() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1", "name1"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ if (activities.get(0) != act1) {
+ fail("Activity was not act1");
+ }
+ }
+
+ public void testConvertBackToWhileLoop() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+ other1.setLoop(true);
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.push(other1);
+
+ action.convert(activities, context);
+
+ if (activities.size() != 0) {
+ fail("Should be no activities, but found: "+activities.size());
+ }
+ }
+
+ public void testConvertBackToJoinState() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(service);
+
+ service.setModel(model);
+
+ ScheduleStateAction action=new ScheduleStateAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ DefaultConversionContext context=new DefaultConversionContext(null);
+ context.markJoin(other1);
+
+ action.convert(activities, context);
+
+ if (activities.size() != 0) {
+ fail("Should be no activities, but found: "+activities.size());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ ScheduleStateAction action=new ScheduleStateAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ ScheduleStateAction action=new ScheduleStateAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/ScheduleStateActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SendMessageActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SendMessageActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SendMessageActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SendMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,364 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.DefaultConversionContext;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SendMessageAction;
+import org.scribble.model.Activity;
+import org.scribble.model.Interaction;
+import org.scribble.model.TypeReference;
+
+import junit.framework.TestCase;
+
+public class SendMessageActionTest extends TestCase {
+
+ public void testValidateNoMessageType() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("identities", "");
+ props.put("serviceCategory", "");
+ props.put("serviceName", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"messageType"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoIdentities() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "");
+ props.put("clientRole", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"identities"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateNoDestination() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "");
+ props.put("identities", "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_REQ_RESP_EPR",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateResponseService() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "");
+ props.put("identities", "");
+ props.put("serviceCategory", "cat1");
+ props.put("serviceName", "name1");
+ props.put("responseServiceCategory", "cat2");
+ props.put("responseServiceName", "name2");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2", "name2"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvertRoles() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getFromRole() == null) {
+ fail("'From' role is null");
+ }
+
+ if (interaction.getFromRole().getName().equals(role) == false) {
+ fail("'From' role should be '"+role+"', but found: "+interaction.getFromRole().getName());
+ }
+
+ if (interaction.getToRole() != null) {
+ fail("'To' role should be null");
+ }
+ }
+
+ public void testConvertMessageBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+ fail("Operation should be null");
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testConvertRPCBased() {
+ TestESBService service=new TestESBService();
+
+ String ns="MessageTypeNS";
+ String lp="MessageType";
+ String opname="op";
+ String role="Buyer";
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("operation", opname);
+ props.put("messageType", "{"+ns+"}"+lp);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SendMessageAction action=new SendMessageAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(role));
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof Interaction) == false) {
+ fail("Expecting an 'Interaction' activity");
+ }
+
+ Interaction interaction=(Interaction)act;
+
+ if (interaction.getMessageSignature() == null) {
+ fail("Message signature is null");
+ }
+
+ if (interaction.getMessageSignature().getOperation() == null) {
+ fail("Operation should not be null");
+ }
+
+ if (interaction.getMessageSignature().getOperation().equals(opname) == false) {
+ fail("Operation expected '"+opname+"', but got: "+
+ interaction.getMessageSignature().getOperation());
+ }
+
+ if (interaction.getMessageSignature().getTypes().size() != 1) {
+ fail("Only one type expected, but got: "+interaction.getMessageSignature().getTypes().size());
+ }
+
+ TypeReference ref=interaction.getMessageSignature().getTypes().get(0);
+
+ if (ref.getNamespace() == null ||
+ ref.getNamespace().equals(ns) == false) {
+ fail("Namespace should be '"+ns+"', but found: "+ref.getNamespace());
+ }
+
+ if (ref.getLocalpart() == null ||
+ ref.getLocalpart().equals(lp) == false) {
+ fail("Local type should be '"+lp+"', but found: "+ref.getLocalpart());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SendMessageAction action=new SendMessageAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SendMessageAction action=new SendMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SendMessageActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetMessageActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetMessageActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetMessageActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetMessageActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SetMessageAction;
+
+import junit.framework.TestCase;
+
+public class SetMessageActionTest extends TestCase {
+
+ public void testValidateNoExpression() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SetMessageAction action=new SetMessageAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{SetMessageAction.STATE_EXPRESSION}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SetMessageAction action=new SetMessageAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SetMessageAction action=new SetMessageAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetMessageActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetStateActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SetStateActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetStateActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetStateActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,359 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SetStateAction;
+
+import junit.framework.TestCase;
+
+public class SetStateActionTest extends TestCase {
+
+ public void testValidateNoVariable() {
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{SetStateAction.VARIABLE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateVariableNotClassProperty() {
+ String varName="classX";
+ Class<?> cls=java.lang.Object.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_FOUND_VARIABLE",
+ new String[]{varName, cls.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateVariableIsClassProperty() {
+ String varName="writableProperty";
+ Class<?> cls=TestClass2.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMultiPartVariableIsClassWritableProperty() {
+ String varName="testClass2.writableProperty";
+ Class<?> cls=TestClass1.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMultiPartVariableIsClassNotWritableProperty() {
+ String varName="testClass2.readableProperty";
+ Class<?> cls=TestClass1.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_WRITABLE_PROPERTY",
+ new String[]{"readableProperty", TestClass2.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMultiPartVariableIsClassNotReadableProperty() {
+ String varName="testClass2.writableProperty";
+ Class<?> cls=TestClass3.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.STATE_EXPRESSION, "");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_READABLE_PROPERTY",
+ new String[]{"testClass2", TestClass3.class.getName()}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingExpression() {
+ String varName="writableProperty";
+ Class<?> cls=TestClass2.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateBothExpressions() {
+ String varName="writableProperty";
+ Class<?> cls=TestClass2.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
+ props.put(SetStateAction.STATE_EXPRESSION, "state");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_SPECIFY_STATE_OR_MESSAGE_EXPRESSION",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMessageExpression() {
+ String varName="writableProperty";
+ Class<?> cls=TestClass2.class;
+
+ TestESBService service=new TestESBService();
+ service.setRoot(true);
+ service.setSessionClass(cls);
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put(SetStateAction.VARIABLE, varName);
+ props.put(SetStateAction.MESSAGE_EXPRESSION, "mesg");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null,
+ props, null);
+
+ SetStateAction action=new SetStateAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SetStateAction action=new SetStateAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SetStateAction action=new SetStateAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+
+ public class TestClass1 {
+ public TestClass1() {
+ }
+
+ public TestClass2 getTestClass2() {
+ return(null);
+ }
+ }
+
+ public class TestClass2 {
+ public TestClass2() {
+ }
+
+ public String getReadableProperty() {
+ return(null);
+ }
+
+ public void setWritableProperty(String str) {
+ }
+ }
+
+ public class TestClass3 {
+ public TestClass3() {
+ }
+
+ public void setTestClass2(TestClass2 tc2) {
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SetStateActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SwitchActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/SwitchActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SwitchActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SwitchActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,384 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.SwitchAction;
+import org.scribble.conversation.model.If;
+import org.scribble.model.Activity;
+
+import junit.framework.TestCase;
+
+public class SwitchActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ SwitchAction action=new SwitchAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><case service-category=\"cat1\" " +
+ "service-name=\"name1\" /><case service-category=\"cat2\" " +
+ "service-name=\"name2\" /><case service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ SwitchAction action=new SwitchAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2","name2"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat3","name3"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateLessThanOnePath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat3");
+ other2.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ SwitchAction action=new SwitchAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_SWITCH_ONE_OR_MORE_PATHS",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><case service-category=\"cat1\" " +
+ "service-name=\"name1\" /><case " +
+ "service-name=\"name2\" /><case service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ SwitchAction action=new SwitchAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><case service-category=\"cat1\" " +
+ "service-name=\"name1\" /><case service-category=\"cat2\" " +
+ "service-name=\"name2\" /><case service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ SwitchAction action=new SwitchAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof If) == false) {
+ fail("Expecting an 'If' activity");
+ }
+
+ If ifAction=(If)act;
+
+ if (ifAction.getConditionalBlocks().size() != 3) {
+ fail("Expecting three conditional blocks: "+ifAction.getConditionalBlocks().size());
+ }
+
+ if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (ifAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
+ fail("Second conditional block should have 1 activity = act2");
+ }
+
+ if (ifAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
+ fail("Third conditional block should have 1 activity = act3");
+ }
+
+ if (ifAction.getElseBlock() != null) {
+ fail("Else block should not be defined");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPaths() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><case service-category=\"cat1\" " +
+ "service-name=\"name1\" /><case service-category=\"cat2\" " +
+ "service-name=\"name2\" /><case service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ SwitchAction action=new SwitchAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof If) == false) {
+ fail("Expecting an 'If' activity");
+ }
+
+ If ifAction=(If)act;
+
+ if (ifAction.getConditionalBlocks().size() != 3) {
+ fail("Expecting three conditional blocks: "+ifAction.getConditionalBlocks().size());
+ }
+
+ if (ifAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (ifAction.getConditionalBlocks().get(1).getContents().size() != 0) {
+ fail("Second conditional block should be empty");
+ }
+
+ if (ifAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
+ ifAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
+ fail("Third conditional block should have 1 activity = act3");
+ }
+
+ if (ifAction.getElseBlock() != null) {
+ fail("Else block should not be defined");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ SwitchAction action=new SwitchAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ SwitchAction action=new SwitchAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/SwitchActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhenActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhenActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhenActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhenActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,376 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBLanguageModel;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestESBService;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.TestModelListener;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.WhenAction;
+import org.scribble.conversation.model.*;
+import org.scribble.model.*;
+
+import junit.framework.TestCase;
+
+public class WhenActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ WhenAction action=new WhenAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><when service-category=\"cat1\" " +
+ "service-name=\"name1\" /><when service-category=\"cat2\" " +
+ "service-name=\"name2\" /><when service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhenAction action=new WhenAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2","name2"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat3","name3"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateLessThanOnePath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat3");
+ other2.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhenAction action=new WhenAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_WHEN_ONE_OR_MORE_PATHS",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><when service-category=\"cat1\" " +
+ "service-name=\"name1\" /><when " +
+ "service-name=\"name2\" /><when service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhenAction action=new WhenAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><when service-category=\"cat1\" " +
+ "service-name=\"name1\" /><when service-category=\"cat2\" " +
+ "service-name=\"name2\" /><when service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhenAction action=new WhenAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof When) == false) {
+ fail("Expecting an 'When' activity");
+ }
+
+ When whenAction=(When)act;
+
+ if (whenAction.getConditionalBlocks().size() != 3) {
+ fail("Expecting three conditional blocks: "+whenAction.getConditionalBlocks().size());
+ }
+
+ if (whenAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
+ whenAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (whenAction.getConditionalBlocks().get(1).getContents().size() != 1 ||
+ whenAction.getConditionalBlocks().get(1).getContents().get(0) != act2) {
+ fail("Second conditional block should have 1 activity = act2");
+ }
+
+ if (whenAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
+ whenAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
+ fail("Second conditional block should have 1 activity = act3");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyPath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><when service-category=\"cat1\" " +
+ "service-name=\"name1\" /><when service-category=\"cat2\" " +
+ "service-name=\"name2\" /><when service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestActivity act3=new TestActivity();
+ other3.getContents().add(act3);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhenAction action=new WhenAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, null);
+
+ if (activities.size() != 1) {
+ fail("Expecting one activity, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof When) == false) {
+ fail("Expecting an 'When' activity");
+ }
+
+ When whenAction=(When)act;
+
+ if (whenAction.getConditionalBlocks().size() != 3) {
+ fail("Expecting three conditional blocks: "+whenAction.getConditionalBlocks().size());
+ }
+
+ if (whenAction.getConditionalBlocks().get(0).getContents().size() != 1 ||
+ whenAction.getConditionalBlocks().get(0).getContents().get(0) != act1) {
+ fail("First conditional block should have 1 activity = act1");
+ }
+
+ if (whenAction.getConditionalBlocks().get(1).getContents().size() != 0) {
+ fail("Second conditional block should be empty");
+ }
+
+ if (whenAction.getConditionalBlocks().get(2).getContents().size() != 1 ||
+ whenAction.getConditionalBlocks().get(2).getContents().get(0) != act3) {
+ fail("Third conditional block should have 1 activity = act3");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ WhenAction action=new WhenAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ WhenAction action=new WhenAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhenActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
Copied: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhileActionTest.java (from rev 531, cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/WhileActionTest.java)
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhileActionTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhileActionTest.java 2009-03-15 16:13:48 UTC (rev 539)
@@ -0,0 +1,567 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful;
+
+import org.scribble.conversation.model.*;
+import org.scribble.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.*;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.ESBActionTestUtil;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.TestActivity;
+import org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.WhileAction;
+
+import junit.framework.TestCase;
+
+public class WhileActionTest extends TestCase {
+
+ public void testValidatePathsSpecified() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, props, null);
+
+ WhileAction action=new WhileAction(service, elem);
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_NOT_SPECIFIED_PROPERTY",
+ new String[]{"paths"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateServiceNotFound() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" /><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat1","name1"}));
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.Messages"),
+ "_NOT_FOUND_SERVICE_DESCRIPTOR",
+ new String[]{"cat2","name2"}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOneWhilePath() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat3");
+ other2.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_DEFINE_SINGLE_WHILE_EXIT",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOneWhileExit() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_MUST_DEFINE_SINGLE_WHILE_PATH",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails1() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while " +
+ "service-name=\"name2\" /><exit service-category=\"cat3\" " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateMissingServiceDetails2() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat2\" " +
+ "service-name=\"name2\" /><exit " +
+ "service-name=\"name3\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_PATH_SERVICE_DETAILS_MISSING",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateOutOfOrderExit() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><exit service-category=\"cat1\" " +
+ "service-name=\"name1\" /><while service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBService other3=new TestESBService();
+ other3.setCategory("cat3");
+ other3.setName("name3");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(other3);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_WHILE_PATH_AFTER_EXIT",
+ new String[]{}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediateWhile() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" immediate=\"fred\" /><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{WhileAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testValidateImmediateExit() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" /><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" immediate=\"fred\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ TestModelListener l=new TestModelListener();
+
+ l.addExpectedError(org.scribble.util.MessageUtil.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.jboss.tools.overlord.cdl.runtime.jbossesb.model.actions.stateful.Messages"),
+ "_BOOLEAN",
+ new String[]{WhileAction.IMMEDIATE}));
+
+ action.validate(l);
+
+ if (l.isValid() == false) {
+ fail(l.invalidMessage());
+ }
+ }
+
+ public void testConvert() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" /><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestActivity act1=new TestActivity();
+ other1.getContents().add(act1);
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof While) == false) {
+ fail("Expecting an 'While' activity");
+ }
+
+ While whileAction=(While)act;
+
+ if (whileAction.getBlock().getContents().size() != 1) {
+ fail("Expecting one entry in while block: "+whileAction.getBlock().getContents().size());
+ }
+
+ if (whileAction.getBlock().getContents().get(0) != act1) {
+ fail("While block should have 1 activity = act1");
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Activity following while should be act2");
+ }
+ }
+
+ public void testConvertNotExcludingEmptyBody() {
+ TestESBService service=new TestESBService();
+
+ java.util.Map<String,String> props=new java.util.Hashtable<String,String>();
+ props.put("paths", "<property><while service-category=\"cat1\" " +
+ "service-name=\"name1\" /><exit service-category=\"cat2\" " +
+ "service-name=\"name2\" /></property>");
+
+ org.w3c.dom.Element elem=ESBActionTestUtil.getAction(null, null, props);
+
+ TestESBService other1=new TestESBService();
+ other1.setCategory("cat1");
+ other1.setName("name1");
+
+ TestESBService other2=new TestESBService();
+ other2.setCategory("cat2");
+ other2.setName("name2");
+
+ TestActivity act2=new TestActivity();
+ other2.getContents().add(act2);
+
+ TestESBLanguageModel model=new TestESBLanguageModel();
+ model.addService(other1);
+ model.addService(other2);
+ model.addService(service);
+
+ service.setModel(model);
+
+ WhileAction action=new WhileAction(service, elem);
+ action.initializeLinks();
+
+ service.getActions().add(action);
+
+ java.util.List<Activity> activities=new java.util.Vector<Activity>();
+
+ action.convert(activities, new DefaultConversionContext(null));
+
+ if (activities.size() != 2) {
+ fail("Expecting two activities, but got: "+activities.size());
+ }
+
+ Activity act=activities.get(0);
+
+ if ((act instanceof While) == false) {
+ fail("Expecting an 'While' activity");
+ }
+
+ While whileAction=(While)act;
+
+ if (whileAction.getBlock().getContents().size() != 0) {
+ fail("Expecting zero entries in while block: "+whileAction.getBlock().getContents().size());
+ }
+
+ if (activities.get(1) != act2) {
+ fail("Activity following while should be act2");
+ }
+ }
+
+ public void testIsCreateSession() {
+ TestESBService service=new TestESBService();
+
+ WhileAction action=new WhileAction(service, null);
+
+ if (action.isSessionType() == true) {
+ fail("Action is flagged as a 'CreateSession'");
+ }
+ }
+
+ public void testIsSessionBased() {
+ TestESBService service=new TestESBService();
+
+ WhileAction action=new WhileAction(service, null);
+
+ if (action.isSessionBased() == false) {
+ fail("Action is not flagged as a 'SessionBased'");
+ }
+ }
+}
Property changes on: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.runtime.jbossesb/src/test/org/jboss/tools/overlord/cdl/runtime/jbossesb/model/actions/stateful/WhileActionTest.java
___________________________________________________________________
Name: svn:mergeinfo
+
More information about the overlord-commits
mailing list