summaryrefslogtreecommitdiffstats
path: root/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util
diff options
context:
space:
mode:
Diffstat (limited to 'das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util')
-rw-r--r--das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/JNDIUtilTest.java109
-rw-r--r--das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/QualifiedNameNormalizerTest.java42
-rw-r--r--das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/XSDNamespaceURITokenizerTest.java36
3 files changed, 187 insertions, 0 deletions
diff --git a/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/JNDIUtilTest.java b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/JNDIUtilTest.java
new file mode 100644
index 0000000000..a962484c8d
--- /dev/null
+++ b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/JNDIUtilTest.java
@@ -0,0 +1,109 @@
+package org.apache.tuscany.das.ldap.util.test;
+
+import javax.naming.NamingException;
+import javax.naming.directory.DirContext;
+
+import org.apache.tuscany.das.ldap.schema.embedded.setup.test.AbstractTestSetup;
+import org.apache.tuscany.das.ldap.util.JNDIUtil;
+
+/*
+ * Note that these tests rely on the ADS Partition
+ * ou=system, which is also the directoryContext
+ * that the tests start with.
+ */
+public class JNDIUtilTest
+extends AbstractTestSetup
+{
+ DirContext test1Context = null;
+ DirContext test2Context = null;
+ DirContext test3Context = null;
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ test1Context =
+ ( DirContext )
+ dasPartitionContext.
+ createSubcontext( "cn=test1" );
+
+ test2Context =
+ ( DirContext )
+ test1Context.
+ createSubcontext( "cn=test2" );
+
+ test3Context =
+ ( DirContext )
+ test2Context.
+ createSubcontext( "cn=test3" );
+ }
+
+ public void tearDown() throws Exception
+ {
+ test2Context.destroySubcontext( "cn=test3" );
+ test1Context.destroySubcontext("cn=test2");
+ dasPartitionContext.destroySubcontext("cn=test1");
+ super.tearDown();
+ }
+
+ public void testCalculateParentRelativeDN() throws NamingException
+ {
+ String partitionDN = "ou=das";
+
+ String testA =
+ JNDIUtil.calculateParentRelativeDN(
+ test2Context, partitionDN );
+
+ String testB =
+ JNDIUtil.calculateParentRelativeDN(
+ test3Context, partitionDN );
+
+ String testC =
+ JNDIUtil.calculateParentRelativeDN( test1Context, partitionDN );
+
+ assertTrue(testA.equals( "cn=test1" ));
+ assertTrue(testB.equals( "cn=test2,cn=test1" ));
+ assertTrue(testC.equals( "ou=das" ));
+
+ }
+
+ public void testCalculateDNComponents() throws NamingException
+ {
+ String[] contextComponents = JNDIUtil.calculateDNComponents( test3Context );
+ assertTrue(contextComponents.length==4);
+
+ contextComponents = null;
+
+ contextComponents = JNDIUtil.calculateDNComponents( test3Context.getNameInNamespace() );
+ assertTrue(contextComponents.length==4);
+ }
+
+ public void testGetParentContext() throws NamingException
+ {
+ DirContext parentContext =
+ JNDIUtil.
+ getParentContext(
+ test3Context,
+ dasPartitionContext );
+
+ assertTrue(
+ parentContext.getNameInNamespace().
+ equals("cn=test2,cn=test1,ou=das"));
+
+ parentContext =
+ JNDIUtil.getParentContext(
+ test1Context,
+ dasPartitionContext );
+
+ assertTrue(
+ parentContext.getNameInNamespace().
+ equals("ou=das"));
+
+ parentContext =
+ JNDIUtil.
+ getParentContext(
+ dasPartitionContext,
+ dasPartitionContext );
+
+ assertTrue(null == parentContext);
+ }
+}
diff --git a/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/QualifiedNameNormalizerTest.java b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/QualifiedNameNormalizerTest.java
new file mode 100644
index 0000000000..30b37dee91
--- /dev/null
+++ b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/QualifiedNameNormalizerTest.java
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.apache.tuscany.das.ldap.util.test;
+
+import org.apache.tuscany.das.ldap.util.QualifiedNameNormalizer;
+
+import junit.framework.TestCase;
+
+public class QualifiedNameNormalizerTest
+extends TestCase
+{
+ public void testNormalize()
+ {
+ String qualifiedName =
+ "http://example.com/users/accounts/L0";
+
+ String normalizedName =
+ QualifiedNameNormalizer.
+ normalize(qualifiedName);
+
+ assertEquals(
+ "example-com-users-accounts-L0",
+ normalizedName);
+ }
+} \ No newline at end of file
diff --git a/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/XSDNamespaceURITokenizerTest.java b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/XSDNamespaceURITokenizerTest.java
new file mode 100644
index 0000000000..708eae7920
--- /dev/null
+++ b/das-java/contrib/ldap/das.ldap/src/test/java/org/apache/tuscany/das/ldap/util/test/XSDNamespaceURITokenizerTest.java
@@ -0,0 +1,36 @@
+
+package org.apache.tuscany.das.ldap.util.test;
+
+import org.apache.tuscany.das.ldap.schema.embedded.setup.test.AbstractTestSetup;
+
+import org.apache.tuscany.das.ldap.util.XSDNamespaceURITokenizer;
+import org.eclipse.emf.common.util.URI;
+
+public class XSDNamespaceURITokenizerTest
+extends AbstractTestSetup
+{
+ public void testCreateAuthorityTokens()
+ {
+ String[] authorityTokens =
+ XSDNamespaceURITokenizer.
+ createAuthorityTokens(
+ URI.createURI(xsdNamespace));
+
+ assertTrue(authorityTokens[0].equals( "example"));
+ assertTrue(authorityTokens[1].equals( "com"));
+ assertTrue(authorityTokens.length == 2);
+ }
+
+ public void testCreatePathTokens()
+ {
+ String[] pathTokens =
+ XSDNamespaceURITokenizer.
+ createPathTokens(
+ URI.createURI(xsdNamespace));
+
+ assertTrue(pathTokens[1].equals("users"));
+ assertTrue(pathTokens[2].equals("accounts"));
+ assertTrue(pathTokens.length == 3);
+ }
+
+}