Removed outdated EjbSupportTests
This commit is contained in:
parent
1b6f3d0352
commit
f1923f406e
|
@ -1,226 +0,0 @@
|
|||
/*
|
||||
* Copyright 2002-2007 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.ejb.support;
|
||||
|
||||
import static org.easymock.EasyMock.*;
|
||||
|
||||
import java.rmi.RemoteException;
|
||||
|
||||
import javax.ejb.CreateException;
|
||||
import javax.ejb.EJBException;
|
||||
import javax.ejb.MessageDrivenContext;
|
||||
import javax.ejb.SessionContext;
|
||||
import javax.jms.Message;
|
||||
import javax.naming.NamingException;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.beans.FatalBeanException;
|
||||
import org.springframework.beans.factory.BeanFactory;
|
||||
import org.springframework.beans.factory.access.BeanFactoryLocator;
|
||||
import org.springframework.beans.factory.access.BeanFactoryReference;
|
||||
import org.springframework.beans.factory.access.BootstrapException;
|
||||
import org.springframework.beans.factory.support.StaticListableBeanFactory;
|
||||
import org.springframework.mock.jndi.SimpleNamingContextBuilder;
|
||||
|
||||
/**
|
||||
* @author Rod Johnson
|
||||
* @author Juergen Hoeller
|
||||
* @author Chris Beams
|
||||
* @since 21.05.2003
|
||||
*/
|
||||
public class EjbSupportTests extends TestCase {
|
||||
|
||||
public void testSfsb() throws CreateException {
|
||||
SessionContext sc = createMock(SessionContext.class);
|
||||
replay(sc);
|
||||
|
||||
final BeanFactory bf = new StaticListableBeanFactory();
|
||||
BeanFactoryLocator bfl = new BeanFactoryLocator() {
|
||||
public BeanFactoryReference useBeanFactory(String factoryKey)
|
||||
throws FatalBeanException {
|
||||
return new BeanFactoryReference() {
|
||||
public BeanFactory getFactory() {
|
||||
return bf;
|
||||
}
|
||||
public void release() throws FatalBeanException {
|
||||
// nothing to do in default implementation
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
// Basically the test is what needed to be implemented here!
|
||||
@SuppressWarnings("serial")
|
||||
class MySfsb extends AbstractStatefulSessionBean {
|
||||
public void ejbCreate() throws CreateException {
|
||||
loadBeanFactory();
|
||||
assertTrue(getBeanFactory() == bf);
|
||||
}
|
||||
public void ejbActivate() throws EJBException, RemoteException {
|
||||
throw new UnsupportedOperationException("ejbActivate");
|
||||
}
|
||||
public void ejbPassivate() throws EJBException, RemoteException {
|
||||
throw new UnsupportedOperationException("ejbPassivate");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
MySfsb sfsb = new MySfsb();
|
||||
sfsb.setBeanFactoryLocator(bfl);
|
||||
sfsb.setSessionContext(sc);
|
||||
sfsb.ejbCreate();
|
||||
assertTrue(sc == sfsb.getSessionContext());
|
||||
}
|
||||
|
||||
/**
|
||||
* Check there's a helpful message if no JNDI key is present.
|
||||
*/
|
||||
public void testHelpfulNamingLookupMessage() throws NamingException, CreateException {
|
||||
SimpleNamingContextBuilder.emptyActivatedContextBuilder();
|
||||
|
||||
SessionContext sc = createMock(SessionContext.class);
|
||||
replay(sc);
|
||||
|
||||
// Leave with default XmlBeanFactoryLoader
|
||||
|
||||
// Basically the test is what needed to be implemented here!
|
||||
@SuppressWarnings("serial")
|
||||
AbstractStatelessSessionBean slsb = new AbstractStatelessSessionBean() {
|
||||
public void onEjbCreate() {
|
||||
}
|
||||
};
|
||||
|
||||
slsb.setSessionContext(sc);
|
||||
try {
|
||||
slsb.ejbCreate();
|
||||
fail();
|
||||
}
|
||||
catch (BeansException ex) {
|
||||
assertTrue(ex.getMessage().indexOf("environment") != -1);
|
||||
assertTrue(ex.getMessage().indexOf("ejb/BeanFactoryPath") != -1);
|
||||
}
|
||||
}
|
||||
|
||||
public void testSlsb() throws Exception {
|
||||
SessionContext sc = createMock(SessionContext.class);
|
||||
replay(sc);
|
||||
|
||||
final BeanFactory bf = new StaticListableBeanFactory();
|
||||
BeanFactoryLocator bfl = new BeanFactoryLocator() {
|
||||
public BeanFactoryReference useBeanFactory(String factoryKey) throws FatalBeanException {
|
||||
return new BeanFactoryReference() {
|
||||
public BeanFactory getFactory() {
|
||||
return bf;
|
||||
}
|
||||
public void release() throws FatalBeanException {
|
||||
// nothing to do in default implementation
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
AbstractStatelessSessionBean slsb = new AbstractStatelessSessionBean() {
|
||||
protected void onEjbCreate() throws CreateException {
|
||||
assertTrue(getBeanFactory() == bf);
|
||||
}
|
||||
};
|
||||
// Must call this method before ejbCreate()
|
||||
slsb.setBeanFactoryLocator(bfl);
|
||||
slsb.setSessionContext(sc);
|
||||
assertTrue(sc == slsb.getSessionContext());
|
||||
slsb.ejbCreate();
|
||||
try {
|
||||
slsb.ejbActivate();
|
||||
fail("Shouldn't allow activation of SLSB");
|
||||
}
|
||||
catch (IllegalStateException ex) {
|
||||
// Ok
|
||||
}
|
||||
try {
|
||||
slsb.ejbPassivate();
|
||||
fail("Shouldn't allow passivation of SLSB");
|
||||
}
|
||||
catch (IllegalStateException ex) {
|
||||
// Ok
|
||||
}
|
||||
}
|
||||
|
||||
public void testJmsMdb() throws Exception {
|
||||
MessageDrivenContext sc = createMock(MessageDrivenContext.class);
|
||||
replay(sc);
|
||||
|
||||
final BeanFactory bf = new StaticListableBeanFactory();
|
||||
BeanFactoryLocator bfl = new BeanFactoryLocator() {
|
||||
public BeanFactoryReference useBeanFactory(String factoryKey) throws FatalBeanException {
|
||||
return new BeanFactoryReference() {
|
||||
public BeanFactory getFactory() {
|
||||
return bf;
|
||||
}
|
||||
public void release() throws FatalBeanException {
|
||||
// nothing to do in default implementation
|
||||
}
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
AbstractJmsMessageDrivenBean mdb = new AbstractJmsMessageDrivenBean() {
|
||||
protected void onEjbCreate() {
|
||||
assertTrue(getBeanFactory() == bf);
|
||||
}
|
||||
public void onMessage(Message msg) {
|
||||
throw new UnsupportedOperationException("onMessage");
|
||||
}
|
||||
};
|
||||
// Must call this method before ejbCreate()
|
||||
mdb.setBeanFactoryLocator(bfl);
|
||||
mdb.setMessageDrivenContext(sc);
|
||||
assertTrue(sc == mdb.getMessageDrivenContext());
|
||||
mdb.ejbCreate();
|
||||
}
|
||||
|
||||
public void testCannotLoadBeanFactory() throws Exception {
|
||||
SessionContext sc = createMock(SessionContext.class);
|
||||
replay(sc);
|
||||
|
||||
BeanFactoryLocator bfl = new BeanFactoryLocator() {
|
||||
public BeanFactoryReference useBeanFactory(String factoryKey) throws FatalBeanException {
|
||||
throw new BootstrapException("", null);
|
||||
}};
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
AbstractStatelessSessionBean slsb = new AbstractStatelessSessionBean() {
|
||||
protected void onEjbCreate() throws CreateException {
|
||||
}
|
||||
};
|
||||
// Must call this method before ejbCreate()
|
||||
slsb.setBeanFactoryLocator(bfl);
|
||||
slsb.setSessionContext(sc);
|
||||
|
||||
try {
|
||||
slsb.ejbCreate();
|
||||
fail();
|
||||
}
|
||||
catch (BeansException ex) {
|
||||
// Ok
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue