jlaskowski 2005/07/17 13:36:33
Modified: modules/itests/src/itest/org/openejb/test/entity/cmp2
Cmp2TestSuite.java
Added: modules/itests/src/itest/org/openejb/test/entity/cmp2
PetstoreTests.java
Log:
A testcase that shows the issue with running PetStore 1.3.2 in
Geronimo/OpenEJB.
To execute the testcase and see the issue do the following:
1. Check out the changes
2. Remove 'BUG_' from the method names of
org.openejb.test.entity.cmp2.PetstoreTests
+ BUG_test01_create()
+ BUG_test02_setterAfterCreate()
3. Go to modules/itests directory
4. Run itests
maven -Dmaven.itest.includes=**/Cmp2TestSuite.java
5. Look at
target/itest-reports/TEST-org.openejb.test.entity.cmp2.Cmp2TestSuite.txt
See http://docs.openejb.org/Creating+itests for more information about
OpenEJB itests module and how to create and run EJB tests
Revision Changes Path
1.4 +3 -2
openejb/modules/itests/src/itest/org/openejb/test/entity/cmp2/Cmp2TestSuite.java
Index: Cmp2TestSuite.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/itests/src/itest/org/openejb/test/entity/cmp2/Cmp2TestSuite.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Cmp2TestSuite.java 22 Jun 2005 11:27:18 -0000 1.3
+++ Cmp2TestSuite.java 17 Jul 2005 17:36:33 -0000 1.4
@@ -51,7 +51,7 @@
import org.openejb.test.TestManager;
/**
- *
+ * @version $Revision$ $Date$
*/
public class Cmp2TestSuite extends org.openejb.test.TestSuite {
@@ -69,6 +69,7 @@
this.addTest(new Cmp2JndiEncTests());
this.addTest(new Cmp2RmiIiopTests());
this.addTest(new PrefetchTests());
+ this.addTest(new PetstoreTests());
}
public static junit.framework.Test suite() {
1.1
openejb/modules/itests/src/itest/org/openejb/test/entity/cmp2/PetstoreTests.java
Index: PetstoreTests.java
===================================================================
/* ====================================================================
* Redistribution and use of this software and associated documentation
* ("Software"), with or without modification, are permitted provided
* that the following conditions are met:
*
* 1. Redistributions of source code must retain copyright
* statements and notices. Redistributions must also contain a
* copy of this document.
*
* 2. Redistributions in binary form must reproduce this list of
* conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The name "OpenEJB" must not be used to endorse or promote
* products derived from this Software without prior written
* permission of The OpenEJB Group. For written permission,
* please contact [EMAIL PROTECTED]
*
* 4. Products derived from this Software may not be called "OpenEJB"
* nor may "OpenEJB" appear in their names without prior written
* permission of The OpenEJB Group. OpenEJB is a registered
* trademark of The OpenEJB Group.
*
* 5. Due credit should be given to the OpenEJB Project
* (http://openejb.org/).
*
* THIS SOFTWARE IS PROVIDED BY THE OPENEJB GROUP AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
* NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE OPENEJB GROUP OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of the OpenEJB Project. For more information
* please see <http://openejb.org/>.
*
* ====================================================================
*/
package org.openejb.test.entity.cmp2;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import org.openejb.test.NamedTestCase;
import org.openejb.test.TestManager;
import org.openejb.test.entity.cmp2.petstore.AddressLocal;
import org.openejb.test.entity.cmp2.petstore.AddressLocalHome;
/**
* @version $Revision: 1.1 $ $Date: 2005/07/17 17:36:33 $
*/
public class PetstoreTests extends NamedTestCase {
private InitialContext initialContext;
private AddressLocalHome ejbHome;
public PetstoreTests() {
super("PetstoreTests.");
}
public void test00_dummy() {
// do nothing
// remove the test after the tests marked with BUG are fixed.
}
public void BUG_test01_create() {
try {
ejbHome = (AddressLocalHome)
javax.rmi.PortableRemoteObject.narrow(initialContext.lookup("client/tests/cmp2/petstore/Address"),
AddressLocalHome.class);
AddressLocal address = ejbHome.create();
assertNotNull("Couldn't create a Address local instance",
address);
} catch (Exception e) {
fail("Received Exception " + e.getClass() + " : " +
e.getMessage());
}
}
public void BUG_test02_setterAfterCreate() {
try {
ejbHome = (AddressLocalHome)
javax.rmi.PortableRemoteObject.narrow(initialContext.lookup("client/tests/cmp2/petstore/Address"),
AddressLocalHome.class);
AddressLocal address = ejbHome.create();
address.setStreet("dummy");
} catch (Exception e) {
fail("Received Exception " + e.getClass() + " : " +
e.getMessage());
}
}
protected void setUp() throws Exception {
Properties properties =
TestManager.getServer().getContextEnvironment();
properties.put(Context.SECURITY_PRINCIPAL, "ENTITY_TEST_CLIENT");
properties.put(Context.SECURITY_CREDENTIALS, "ENTITY_TEST_CLIENT");
initialContext = new InitialContext(properties);
}
protected void tearDown() throws Exception {
}
}