From 3f4deb91789189521d577457bd6da27de8fd75b1 Mon Sep 17 00:00:00 2001
From: Valery Kharseko <vharseko@3a-systems.ru>
Date: Wed, 07 Oct 2026 08:31:10 +0000
Subject: [PATCH] [#1153] Parse the whole DN string, and build or split DN strings through DN instead of string operations (#1171)
---
opendj-cli/src/test/java/com/forgerock/opendj/cli/UtilsTestCase.java | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/opendj-cli/src/test/java/com/forgerock/opendj/cli/UtilsTestCase.java b/opendj-cli/src/test/java/com/forgerock/opendj/cli/UtilsTestCase.java
index c116cf4..1ea51ca 100644
--- a/opendj-cli/src/test/java/com/forgerock/opendj/cli/UtilsTestCase.java
+++ b/opendj-cli/src/test/java/com/forgerock/opendj/cli/UtilsTestCase.java
@@ -12,12 +12,17 @@
* information: "Portions Copyright [year] [name of copyright owner]".
*
* Copyright 2014-2016 ForgeRock AS.
+ * Portions Copyright 2026 3A Systems, LLC.
*/
package com.forgerock.opendj.cli;
import java.io.File;
import java.io.IOException;
+import org.forgerock.opendj.ldap.ByteString;
+import org.forgerock.opendj.ldap.DN;
+import org.forgerock.opendj.ldap.RDN;
+import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertTrue;
@@ -88,5 +93,21 @@
assertFalse(Utils.isDN("babs@example.com"));
}
+ @DataProvider
+ public Object[][] administratorUIDs() {
+ return new Object[][] { { "admin" }, { "a,b" }, { "a+b" }, { "#1" }, { " lead" }, { "a\\b" }, { "a;b" },
+ { "a=b" }, { "J\u00f6rg" } };
+ }
+
+ @Test(dataProvider = "administratorUIDs")
+ public void getAdministratorDNKeepsTheWholeUID(final String uid) {
+ final DN adminDN = Utils.getAdministratorDN(uid);
+ assertEquals(adminDN.parent(), DN.valueOf("cn=Administrators,cn=admin data"));
+ final RDN rdn = adminDN.rdn();
+ assertEquals(rdn.size(), 1);
+ assertEquals(rdn.getFirstAVA().getAttributeType().getNameOrOID(), "cn");
+ assertEquals(rdn.getFirstAVA().getAttributeValue(), ByteString.valueOfUtf8(uid));
+ }
+
}
--
Gitblit v1.10.0