Test code that drove creation of JndiAccessCodeForDynamicMockObjectExercise And a text-based description of the problem: JndiAccessForDynamicMockObjectExercise
Once again, the JNDI Here is not authoritative. IANAJE
{{{/*
- Created on Feb 11, 2004
*/
package xputah.feb;
import javax.naming.CommunicationException; import javax.naming.NameNotFoundException; import javax.naming.NamingException; import javax.naming.NoPermissionException; import javax.naming.directory.DirContext;
import com.mockobjects.dynamic.C; import com.mockobjects.dynamic.Mock;
import junit.framework.TestCase;
public class JNDILookupTest extends TestCase {
- /**
- Constructor for testSuccessfulJNDILookup.
- @param arg0
- /
- super(arg0);
Mock dirContext = new Mock(DirContext.class); Mock configDirContext = new Mock(DirContext.class); public void testSuccessfulLookup() throws NamingException {
- dirContext.expectAndReturn("lookup", "cn=configuration,o=myorg",
- configDirContext.proxy());
JNDIUtility util = new JNDIUtility((DirContext)dirContext.proxy()); Object obj = util.getConfiguration(); assertEquals(configDirContext.proxy(), obj); dirContext.verify();
public void testLookupFailureNameNotFound() throws NamingException {
- dirContext.expectAndThrow("lookup", "cn=configuration,o=myorg",
new NameNotFoundException());
- C.args(C.eq("cn=configuration,o=myorg"), C.isA(Object.class)));
JNDIUtility util = new JNDIUtility((DirContext)dirContext.proxy()); Object obj = util.getConfiguration(); dirContext.verify();
public void testLookupFailureNameCommunicationsException() throws NamingException {
- dirContext.expectAndThrow("lookup", "cn=configuration,o=myorg",
new CommunicationException());
JNDIUtility util = new JNDIUtility((DirContext)dirContext.proxy()); Object obj; try {
- obj = util.getConfiguration(); fail("Should have had Communications exception");
} catch (CommunicationException e) { } dirContext.verify();
public void testLookupFailureNoPermissionException() throws NamingException {
- dirContext.expectAndThrow("lookup", "cn=configuration,o=myorg",
new NoPermissionException());
JNDIUtility util = new JNDIUtility((DirContext)dirContext.proxy()); Object obj; try {
- obj = util.getConfiguration();
} catch (NoPermissionException e) {
- assertTrue(e.getMessage().equals("no rights to read cn=configuration,o=myorg"));
public void testCreateFailureNoPermissionException() throws NamingException {
dirContext.expectAndThrow("lookup", "cn=configuration,o=myorg", new NameNotFoundException()); dirContext.expectAndThrow("bind",
- C.args(C.eq("cn=configuration,o=myorg"), C.isA(Object.class)),
new NoPermissionException());
JNDIUtility util = new JNDIUtility((DirContext)dirContext.proxy()); Object obj; try {
- obj = util.getConfiguration();
} catch (NoPermissionException e) {
- assertTrue(e.getMessage().equals("no rights to create cn=configuration,o=myorg"));
- C.args(C.eq("cn=configuration,o=myorg"), C.isA(Object.class)),
junit.textui.TestRunner.run(JNDILookupTest.class);
} }}}
