Author: jmarino
Date: Fri Oct  6 19:01:50 2006
New Revision: 453834

URL: http://svn.apache.org/viewvc?view=rev&rev=453834
Log:
add testcase for JNDI-based properties

Added:
    
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
   (with props)

Added: 
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java?view=auto&rev=453834
==============================================================================
--- 
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
 (added)
+++ 
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
 Fri Oct  6 19:01:50 2006
@@ -0,0 +1,55 @@
+package org.apache.tuscany.core.loader;
+
+import java.lang.reflect.Type;
+import java.util.Hashtable;
+import javax.naming.Context;
+import javax.naming.NamingException;
+import javax.naming.spi.InitialContextFactory;
+
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+import org.apache.tuscany.spi.model.PropertyValue;
+
+import junit.framework.TestCase;
+import org.apache.tuscany.core.injection.JNDIObjectFactory;
+import org.easymock.EasyMock;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class JNDIPropertyFactoryTestCase extends TestCase {
+
+    public void testCreate() throws Exception {
+        System.setProperty(Context.INITIAL_CONTEXT_FACTORY, 
MockInitialContextFactory.class.getName());
+        JNDIPropertyFactory factory = new JNDIPropertyFactory();
+        Element element = EasyMock.createMock(Element.class);
+        EasyMock.expect(element.getTextContent()).andReturn("foo");
+        EasyMock.replay(element);
+        Document doc = EasyMock.createMock(Document.class);
+        EasyMock.expect(doc.getDocumentElement()).andReturn(element);
+        EasyMock.replay(doc);
+        PropertyValue<?> value = new MockPropertyValue<Type>();
+        value.setValue(doc);
+        JNDIObjectFactory<?> jndiFactory = (JNDIObjectFactory<?>) 
factory.createObjectFactory(null, value);
+        assertEquals("bar", jndiFactory.getInstance());
+
+    }
+
+    private class MockPropertyValue<T> extends PropertyValue<T> {
+
+    }
+
+    public static class MockInitialContextFactory implements 
InitialContextFactory {
+        public MockInitialContextFactory() {
+        }
+
+        public Context getInitialContext(Hashtable<?, ?> environment) throws 
NamingException {
+            Context context = EasyMock.createMock(Context.class);
+            EasyMock.expect(context.lookup("foo")).andReturn("bar");
+            EasyMock.replay(context);
+            return context;
+        }
+    }
+
+}

Propchange: 
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/JNDIPropertyFactoryTestCase.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to