From 9be9796ea612b8b8892c9304aef737bf2b89be8a Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Thu, 17 Mar 2016 08:48:01 +0000
Subject: [PATCH] Converters.java: fixed bad conversion from SDK entry to server Entry

---
 opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java b/opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java
index a003292..053eba0 100644
--- a/opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java
+++ b/opendj-server-legacy/src/test/java/org/forgerock/opendj/adapter/server3x/ConvertersTestCase.java
@@ -20,6 +20,7 @@
 import static org.mockito.Mockito.*;
 
 import java.net.InetAddress;
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
@@ -64,6 +65,7 @@
 import org.opends.server.types.DirectoryException;
 import org.opends.server.types.FilterType;
 import org.opends.server.types.LDAPException;
+import org.opends.server.types.ObjectClass;
 import org.opends.server.types.Operation;
 import org.opends.server.types.SearchResultEntry;
 import org.opends.server.types.SearchResultReference;
@@ -134,6 +136,20 @@
         assertThat(result.getAttributes()).hasSize(2);
     }
 
+    @Test
+    public final void testToEntryDoesNotMixObjectClassAndAttributeTypeOIDs() throws Exception {
+        org.forgerock.opendj.ldap.Entry entry =
+            new LinkedHashMapEntry(DN.valueOf("uid=scarter,ou=People,dc=example,dc=com"));
+        entry.addAttribute(new LinkedAttribute("objectClass", "ds-cfg-backend", "ds-cfg-create-placeholder-for-me"));
+        org.opends.server.types.Entry result = to(entry);
+
+        assertThat(result.getName().toString()).isEqualTo(entry.getName().toString());
+        List<ObjectClass> ocs = new ArrayList<>(result.getObjectClasses().keySet());
+        assertThat(ocs).hasSize(2);
+        assertThat(ocs.get(0).getOID()).isEqualTo(DirectoryServer.getObjectClass("ds-cfg-backend").getOID());
+        assertThat(ocs.get(1).getOID()).as("This should be a placeholder").endsWith("-oid");
+    }
+
     /**
      * Converts a SDK control to a LDAP server control.
      *

--
Gitblit v1.10.0