ammulder 2005/07/09 14:46:36
Modified: modules/openejb-builder/src/test/org/openejb/deployment
AbstractDeploymentTest.java
DeploymentTestSuite.java
Log:
Overwrite namespace for PK generator elements, so they don't need to be
correct in the plan
Add tests (now one for each type of PK gen, though one doesn't work on
Axion)
Revision Changes Path
1.7 +34 -10
openejb/modules/openejb-builder/src/test/org/openejb/deployment/AbstractDeploymentTest.java
Index: AbstractDeploymentTest.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/test/org/openejb/deployment/AbstractDeploymentTest.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- AbstractDeploymentTest.java 7 Jul 2005 23:15:29 -0000 1.6
+++ AbstractDeploymentTest.java 9 Jul 2005 18:46:36 -0000 1.7
@@ -165,7 +165,7 @@
assertEquals("MyFistName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
}
- public void testPKGenCMP() throws Exception {
+ public void testPKGenCustomDBName() throws Exception {
ObjectName cmpBeanName = ObjectName.getInstance(DOMAIN_NAME +
":j2eeType=EntityBean,J2EEServer=" + SERVER_NAME + ",J2EEApplication=" +
getJ2eeApplicationName() + ",EJBModule=" + getJ2eeModuleName() +
",name=PKGenCMPEntity");
assertRunning(getKernel(), cmpBeanName);
assertRunning(getKernel(), new
ObjectName("geronimo.server:name=CMPPKGenerator"));
@@ -174,11 +174,11 @@
assertTrue("Home is not an instance of EJBHome", cmpHome instanceof
EJBHome);
Object cmp = cmpHome.getClass().getMethod("create", new
Class[]{}).invoke(cmpHome, new Object[]{});
- cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFistName"});
- assertEquals("MyFistName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
+ cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFirstName"});
+ assertEquals("MyFirstName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
}
- public void testPKGenCMP2() throws Exception {
+ public void testPKGenCustomDBParts() throws Exception {
ObjectName cmpBeanName = ObjectName.getInstance(DOMAIN_NAME +
":j2eeType=EntityBean,J2EEServer=" + SERVER_NAME + ",J2EEApplication=" +
getJ2eeApplicationName() + ",EJBModule=" + getJ2eeModuleName() +
",name=PKGenCMPEntity2");
assertRunning(getKernel(), cmpBeanName);
assertRunning(getKernel(), new
ObjectName("geronimo.server:name=CMPPKGenerator2"));
@@ -187,11 +187,11 @@
assertTrue("Home is not an instance of EJBHome", cmpHome instanceof
EJBHome);
Object cmp = cmpHome.getClass().getMethod("create", new
Class[]{}).invoke(cmpHome, new Object[]{});
- cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFistName"});
- assertEquals("MyFistName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
+ cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFirstName"});
+ assertEquals("MyFirstName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
}
- public void testPKGenCMP3() throws Exception {
+ public void testPKGenSequence() throws Exception {
ObjectName cmpBeanName = ObjectName.getInstance(DOMAIN_NAME +
":j2eeType=EntityBean,J2EEServer=" + SERVER_NAME + ",J2EEApplication=" +
getJ2eeApplicationName() + ",EJBModule=" + getJ2eeModuleName() +
",name=PKGenCMPEntity3");
assertRunning(getKernel(), cmpBeanName);
@@ -199,8 +199,32 @@
assertTrue("Home is not an instance of EJBHome", cmpHome instanceof
EJBHome);
Object cmp = cmpHome.getClass().getMethod("create", new
Class[]{}).invoke(cmpHome, new Object[]{});
- cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFistName"});
- assertEquals("MyFistName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
+ cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFirstName"});
+ assertEquals("MyFirstName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
+ }
+/* Axion JDBC driver doesn't supoort returning generated keys -- try this
again with a different DB
+ public void testPKGenAutoIncrement() throws Exception {
+ ObjectName cmpBeanName = ObjectName.getInstance(DOMAIN_NAME +
":j2eeType=EntityBean,J2EEServer=" + SERVER_NAME + ",J2EEApplication=" +
getJ2eeApplicationName() + ",EJBModule=" + getJ2eeModuleName() +
",name=PKGenCMPEntity4");
+ assertRunning(getKernel(), cmpBeanName);
+
+ Object cmpHome = getKernel().getAttribute(cmpBeanName, "ejbHome");
+ assertTrue("Home is not an instance of EJBHome", cmpHome instanceof
EJBHome);
+ Object cmp = cmpHome.getClass().getMethod("create", new
Class[]{}).invoke(cmpHome, new Object[]{});
+
+ cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFirstName"});
+ assertEquals("MyFirstName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
+ }
+*/
+ public void testPKGenSQL() throws Exception {
+ ObjectName cmpBeanName = ObjectName.getInstance(DOMAIN_NAME +
":j2eeType=EntityBean,J2EEServer=" + SERVER_NAME + ",J2EEApplication=" +
getJ2eeApplicationName() + ",EJBModule=" + getJ2eeModuleName() +
",name=PKGenCMPEntity5");
+ assertRunning(getKernel(), cmpBeanName);
+
+ Object cmpHome = getKernel().getAttribute(cmpBeanName, "ejbHome");
+ assertTrue("Home is not an instance of EJBHome", cmpHome instanceof
EJBHome);
+ Object cmp = cmpHome.getClass().getMethod("create", new
Class[]{}).invoke(cmpHome, new Object[]{});
+
+ cmp.getClass().getMethod("setFirstName", new
Class[]{String.class}).invoke(cmp, new Object[]{"MyFirstName"});
+ assertEquals("MyFirstName", cmp.getClass().getMethod("getFirstName",
null).invoke(cmp, null));
}
public void testMDBContainer() throws Exception {
1.9 +6 -2
openejb/modules/openejb-builder/src/test/org/openejb/deployment/DeploymentTestSuite.java
Index: DeploymentTestSuite.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/test/org/openejb/deployment/DeploymentTestSuite.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- DeploymentTestSuite.java 7 Jul 2005 23:15:29 -0000 1.8
+++ DeploymentTestSuite.java 9 Jul 2005 18:46:36 -0000 1.9
@@ -214,11 +214,15 @@
connection = dataSource.getConnection();
statement = connection.createStatement();
statement.execute("CREATE TABLE SIMPLECMP(ID INTEGER,
FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
+ statement.execute("CREATE SEQUENCE PKGENCMP4_SEQ");
+ statement.execute("CREATE SEQUENCE PKGENCMP5_SEQ");
statement.execute("CREATE TABLE PKGENCMP(ID INTEGER,
FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
statement.execute("CREATE TABLE PKGENCMP2(ID INTEGER,
FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
statement.execute("CREATE TABLE PKGENCMP3(ID INTEGER,
FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
- statement.execute("CREATE TABLE PKGENCMP_SEQ(NAME
VARCHAR(50), VALUE INTEGER)");
+ statement.execute("CREATE TABLE PKGENCMP4(ID INTEGER DEFAULT
PKGENCMP4_SEQ.NEXTVAL, FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
+ statement.execute("CREATE TABLE PKGENCMP5(ID INTEGER,
FIRSTNAME VARCHAR(50), LASTNAME VARCHAR(50))");
// First two sequence rows initialized by OpenEJB wrappers
around PK generators
+ statement.execute("CREATE TABLE PKGENCMP_SEQ(NAME
VARCHAR(50), VALUE INTEGER)");
statement.execute("INSERT INTO PKGENCMP_SEQ
VALUES('PKGENCMP3', 100)");
} finally {
JDBCUtil.close(statement);