code style improvements.
[utils] / test / enterprise / src / test / java / org / wamblee / support / jndi / StubInitiaContextFactoryTest.java
index f6a5781042fd68d2b32f9f086ce54d6d60ec10e4..c0638148447e82f53df25df37faccb29f24686cb 100644 (file)
@@ -17,6 +17,7 @@ package org.wamblee.support.jndi;
 
 import static junit.framework.Assert.*;
 
+import javax.naming.CompositeName;
 import javax.naming.InitialContext;
 import javax.naming.NameNotFoundException;
 import javax.naming.NamingException;
@@ -27,6 +28,8 @@ import org.junit.Test;
 
 public class StubInitiaContextFactoryTest {
 
+    private static final String JNDI_NAME = "a/b";
+
     @Before
     @After
     public void setUp() {
@@ -36,27 +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("a/b");
+        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);
     }
 }