You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by lw...@apache.org on 2006/11/28 09:38:08 UTC
svn commit: r479946 - in
/incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test:
InsertObjectTest.java SelectObjectTest.java
Author: lwaterman
Date: Tue Nov 28 00:38:08 2006
New Revision: 479946
URL: http://svn.apache.org/viewvc?view=rev&rev=479946
Log:
Add unit tests
Added:
incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/SelectObjectTest.java
Modified:
incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/InsertObjectTest.java
Modified: incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/InsertObjectTest.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/InsertObjectTest.java?view=diff&rev=479946&r1=479945&r2=479946
==============================================================================
--- incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/InsertObjectTest.java (original)
+++ incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/InsertObjectTest.java Tue Nov 28 00:38:08 2006
@@ -1,22 +1,45 @@
package org.apache.ode.dao.jpa.test;
+import java.io.IOException;
+import java.util.Calendar;
import java.util.Collection;
+import java.util.GregorianCalendar;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
+import javax.xml.namespace.QName;
+import org.apache.ode.bpel.common.CorrelationKey;
+import org.apache.ode.bpel.dao.ActivityRecoveryDAO;
import org.apache.ode.bpel.dao.BpelDAOConnection;
+import org.apache.ode.bpel.dao.CorrelationSetDAO;
+import org.apache.ode.bpel.dao.CorrelatorDAO;
+import org.apache.ode.bpel.dao.MessageDAO;
import org.apache.ode.bpel.dao.MessageExchangeDAO;
+import org.apache.ode.bpel.dao.PartnerLinkDAO;
+import org.apache.ode.bpel.dao.ProcessDAO;
+import org.apache.ode.bpel.dao.ProcessInstanceDAO;
+import org.apache.ode.bpel.dao.ScopeDAO;
+import org.apache.ode.bpel.dao.ScopeStateEnum;
+import org.apache.ode.bpel.dao.XmlDataDAO;
import org.apache.ode.dao.jpa.ojpa.*;
+import org.apache.ode.utils.DOMUtils;
import org.apache.openjpa.persistence.ArgumentException;
+import org.xml.sax.SAXException;
import junit.framework.TestCase;
public class InsertObjectTest extends TestCase {
private EntityManager em;
+ private static final String TEST_NS = "http://org.apache.ode.jpa.test";
+ private static final String CORRELATOR_ID1 = "testCorrelator1";
+ private static final String CORRELATOR_ID2 = "testCorrelator2";
+ private static final Calendar cal = new GregorianCalendar();
+
+
@Override
protected void setUp() throws Exception {
@@ -34,21 +57,18 @@
public void testStart() throws Exception {
- BPELDAOConnectionFactoryImpl factory = new BPELDAOConnectionFactoryImpl();
+ BPELDAOConnectionFactoryImpl factory = new BPELDAOConnectionFactoryImpl(em);
BpelDAOConnection conn = factory.getConnection();
+ ProcessDAO p1 = createProcess(conn,"testPID1","testType");
+ ProcessInstanceDAO pi1 = createProcessInstance(p1, CORRELATOR_ID1);
+
- try {
em.getTransaction().begin();
em.persist(conn);
em.flush();
em.getTransaction().commit();
- } catch (Exception e) {
- e.printStackTrace();
- fail();
- }
-
}
@@ -57,9 +77,101 @@
em.close();
}
- private void createMessageExchange(BpelDAOConnection conn ) {
- MessageExchangeDAO me = conn.createMessageExchange('0');
+ private MessageExchangeDAO createMessageExchange(ProcessDAO p, ProcessInstanceDAO pi, PartnerLinkDAO pl ) throws SAXException, IOException {
+ MessageExchangeDAO me = pi.getConnection().createMessageExchange('0');
+
+ me.setCallee(new QName(TEST_NS,"testCallee"));
+ me.setChannel("testChannel");
+ me.setCorrelationId("testCorrelationId");
+ me.setCorrelationStatus("testCorrelationStatus");
+ me.setEPR(DOMUtils.stringToDOM("<testEPR>EPR</testEPR>"));
+ me.setFault("testFault");
+ me.setFaultExplanation("testFaultExplanation");
+ me.setInstance(pi);
+ me.setOperation("testOperation");
+ me.setPartnerLink(pl);
+ me.setPartnerLinkModelId(1);
+ me.setPattern("testPattern");
+ me.setPortType(new QName(TEST_NS,"testPortType"));
+ me.setProcess(p);
+ me.setProperty("testProp1Key", "testProp1");
+ me.setProperty("testProp2Key", "testProp2");
+ me.setRequest(createMessage(me,"testRequest"));
+ me.setResponse(createMessage(me,"testResponse"));
+ me.setStatus("testStatus");
+
+ return me;
}
+ private MessageDAO createMessage(MessageExchangeDAO me, String name) throws SAXException, IOException {
+ MessageDAO m = me.createMessage(new QName(TEST_NS,name));
+
+ m.setType(new QName(TEST_NS,name));
+ m.setData(DOMUtils.stringToDOM("<testData>some test data</testData>"));
+
+ return m;
+ }
+
+ private ProcessDAO createProcess(BpelDAOConnection conn, String pid, String type) {
+ ProcessDAO p = null;
+
+ p = conn.createProcess(new QName(TEST_NS,pid), new QName(TEST_NS,type));
+ p.addCorrelator(CORRELATOR_ID1);
+ p.addCorrelator(CORRELATOR_ID2);
+
+
+ return p;
+ }
+
+ private ProcessInstanceDAO createProcessInstance(ProcessDAO process, String correlator_id) throws SAXException, IOException {
+ ProcessInstanceDAO pi = null;
+ String[] actions = { "action1","action2" };
+ String[] correlationKeys = { "key1", "key2" };
+ CorrelationKey key1 = new CorrelationKey(1,correlationKeys);
+ CorrelationKey key2 = new CorrelationKey(2,correlationKeys);
+ CorrelationKey[] corrkeys = {key1,key2};
+ QName[] names = { new QName(TEST_NS,"name1"), new QName(TEST_NS,"name2") };
+
+ pi = process.createInstance(process.getCorrelator(correlator_id));
+
+ pi.setExecutionState(new String("test execution state").getBytes());
+ pi.setFault(new QName(TEST_NS,"testFault"), "testExplanation", 1, 1, DOMUtils.stringToDOM("<testFaultMessage>testMessage</testFaultMessage>"));
+ pi.setLastActiveTime(cal.getTime());
+ pi.setState((short) 1);
+
+ pi.createActivityRecovery("testChannel1", 3, "testReason1", cal.getTime(), DOMUtils.stringToDOM("<testData>testData1</testData>"), actions, 2);
+ pi.createActivityRecovery("testChannel2", 4, "testReason2", cal.getTime(), DOMUtils.stringToDOM("<testData>testData2</testData>"), actions, 2);
+
+ ScopeDAO root = pi.createScope(null, "Root", 1);
+ root.setState(ScopeStateEnum.ACTIVE);
+ ScopeDAO child1 = pi.createScope(root, "Child1", 2);
+ child1.setState(ScopeStateEnum.ACTIVE);
+ XmlDataDAO var1 = child1.getVariable("var1");
+ var1.set(DOMUtils.stringToDOM("<testData>testData</testData>"));
+ var1.setProperty("key1", "prop1");
+ var1.setProperty("key2", "prop2");
+ XmlDataDAO var2 = child1.getVariable("var2");
+ var2.set(DOMUtils.stringToDOM("<testData>testData</testData>"));
+ var2.setProperty("key1", "prop1");
+ var2.setProperty("key2", "prop2");
+
+ CorrelationSetDAO cs1 = child1.getCorrelationSet("TestCorrelationSet1");
+ cs1.setValue(names,key1);
+
+ PartnerLinkDAO pl1 = child1.createPartnerLink(1, "Test PartnerLink1", "MyRole1", "PartnerRole1");
+ pl1.setMyEPR(DOMUtils.stringToDOM("<testEPR>testMyEPR</testEPR>"));
+ pl1.setMyRoleServiceName(new QName(TEST_NS,"testRoleService"));
+ pl1.setMySessionId("TestMySessionID");
+ pl1.setPartnerEPR(DOMUtils.stringToDOM("<testEPR>testPartnerEPR</testEPR>"));
+ pl1.setPartnerSessionId("TestPartnerSessionID");
+
+ MessageExchangeDAO mex = createMessageExchange(process,pi,pl1);
+
+ CorrelatorDAO corr1 = process.getCorrelator(CORRELATOR_ID1);
+ corr1.addRoute("testRoute", pi, 1, key1);
+ corr1.enqueueMessage(mex, corrkeys);
+
+ return pi;
+ }
}
Added: incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/SelectObjectTest.java
URL: http://svn.apache.org/viewvc/incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/SelectObjectTest.java?view=auto&rev=479946
==============================================================================
--- incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/SelectObjectTest.java (added)
+++ incubator/ode/trunk/dao-jpa-ojpa-derby/src/test/java/org/apache/ode/dao/jpa/test/SelectObjectTest.java Tue Nov 28 00:38:08 2006
@@ -0,0 +1,51 @@
+package org.apache.ode.dao.jpa.test;
+
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.Persistence;
+import javax.persistence.Query;
+
+import org.apache.ode.bpel.dao.BpelDAOConnection;
+import org.apache.ode.dao.jpa.ojpa.BPELDAOConnectionFactoryImpl;
+
+import junit.framework.TestCase;
+
+public class SelectObjectTest extends TestCase {
+
+ private EntityManager em;
+
+ @Override
+ protected void setUp() throws Exception {
+
+ try {
+ EntityManagerFactory emf = Persistence.createEntityManagerFactory("ode-unit-test");
+ em = emf.createEntityManager();
+
+ } catch ( Exception e ) {
+ e.printStackTrace();
+ fail();
+ }
+
+
+ }
+
+ public void testGetObject() throws Exception {
+
+ BPELDAOConnectionFactoryImpl factory = new BPELDAOConnectionFactoryImpl(em);
+ BpelDAOConnection conn1 = factory.getConnection();
+ Long connId1 = factory.getConnectionId(conn1);
+ BpelDAOConnection conn2 = factory.getConnection(connId1 + 5);
+ Long connId2 = factory.getConnectionId(conn2);
+
+ if ( conn1 != null && conn2 != null ) {
+ System.out.println("got conn1:" + connId1);
+ System.out.println("got conn2:" + connId2);
+ }
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ em.close();
+ }
+
+}