code style improvements.
[utils] / test / enterprise / src / test / java / org / wamblee / support / jndi / StubInitiaContextFactoryTest.java
index b4745bd1a22eac90a09d99978ab99de98613c547..c0638148447e82f53df25df37faccb29f24686cb 100644 (file)
  */ 
 package org.wamblee.support.jndi;
 
-import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.*;
 
+import javax.naming.CompositeName;
 import javax.naming.InitialContext;
+import javax.naming.NameNotFoundException;
 import javax.naming.NamingException;
 
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
-import org.wamblee.support.jndi.StubInitialContextFactory;
 
 public class StubInitiaContextFactoryTest {
 
+    private static final String JNDI_NAME = "a/b";
+
     @Before
     @After
     public void setUp() {
@@ -36,20 +39,71 @@ public class StubInitiaContextFactoryTest {
     @Test(expected = NamingException.class)
     public void testLookupNotRegistered() throws Exception {
         InitialContext ctx = new InitialContext();
-        ctx.bind("a/b", "hallo");
+        ctx.bind(JNDI_NAME, "hallo");
     }
+    
+    // String based lookups.
 
     @Test
     public void testLookup() throws Exception {
         StubInitialContextFactory.register();
 
         InitialContext ctx = new InitialContext();
-        ctx.bind("a/b", "hallo");
+        ctx.bind(JNDI_NAME, "hallo");
 
         ctx = new InitialContext();
-        Object obj = ctx.lookup("a/b");
+        Object obj = ctx.lookup(JNDI_NAME);
 
         assertEquals("hallo", obj);
     }
+    
+    @Test(expected = NameNotFoundException.class)
+    public void testUnbind() throws Exception { 
+        testLookup(); 
+        InitialContext ctx = new InitialContext(); 
+        ctx.unbind(JNDI_NAME);
+        ctx = new InitialContext();
+        ctx.lookup(JNDI_NAME);
+        
+    }
+
+    @Test(expected = NameNotFoundException.class)
+    public void testLookupFails() throws Exception {
+        StubInitialContextFactory.register();
+
+        InitialContext ctx = new InitialContext();
+        Object obj = ctx.lookup(JNDI_NAME);
+    }
+    
+    // Name based lookups
+    
+    @Test
+    public void testLookupName() throws Exception {
+        StubInitialContextFactory.register();
+
+        InitialContext ctx = new InitialContext();
+        ctx.bind(new CompositeName(JNDI_NAME), "hallo");
 
+        ctx = new InitialContext();
+        Object obj = ctx.lookup(new CompositeName(JNDI_NAME));
+
+        assertEquals("hallo", obj);
+    }
+    
+    @Test(expected = NameNotFoundException.class)
+    public void testUnbindName() throws Exception { 
+        testLookup(); 
+        InitialContext ctx = new InitialContext(); 
+        ctx.unbind(new CompositeName(JNDI_NAME));
+        ctx = new InitialContext();
+        ctx.lookup(new CompositeName(JNDI_NAME));
+    }
+
+    @Test(expected = NameNotFoundException.class)
+    public void testLookupFailsName() throws Exception {
+        StubInitialContextFactory.register();
+
+        InitialContext ctx = new InitialContext();
+        Object obj = ctx.lookup(JNDI_NAME);
+    }
 }