From 787a62c89cd05bdd68c391adb8b5c62f04257a4a Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Fri, 30 Nov 2012 00:34:59 +0000
Subject: [PATCH] Fix OPENDJ-656: Add support for generating LDAP filters and DNs from printf style templates
---
opendj3/opendj-ldap-sdk/src/test/java/org/forgerock/opendj/ldap/DNTestCase.java | 31 +++++++++++++++++++++++++++++++
1 files changed, 31 insertions(+), 0 deletions(-)
diff --git a/opendj3/opendj-ldap-sdk/src/test/java/org/forgerock/opendj/ldap/DNTestCase.java b/opendj3/opendj-ldap-sdk/src/test/java/org/forgerock/opendj/ldap/DNTestCase.java
index fef9be6..1c542b6 100644
--- a/opendj3/opendj-ldap-sdk/src/test/java/org/forgerock/opendj/ldap/DNTestCase.java
+++ b/opendj3/opendj-ldap-sdk/src/test/java/org/forgerock/opendj/ldap/DNTestCase.java
@@ -979,4 +979,35 @@
assertEquals(DN.valueOf(dn).rename(DN.valueOf(fromDN), DN.valueOf(toDN)), DN
.valueOf(expectedDN));
}
+
+ /**
+ * Tests the {@link DN#format(String, Object...)} method.
+ */
+ @Test
+ public void testFormatNoEscape() {
+ DN actual = DN.format("deviceId=%s,uid=%s,dc=test", 123, "bjensen");
+ DN expected = DN.valueOf("dc=test").child("uid", "bjensen").child("deviceId", 123);
+ assertEquals(actual, expected);
+ assertEquals(actual.toString(), "deviceId=123,uid=bjensen,dc=test");
+ }
+
+ /**
+ * Tests the {@link DN#format(String, Object...)} method.
+ */
+ @Test
+ public void testFormatEscape() {
+ DN actual = DN.format("uid=%s,dc=test", "#cn=foo+sn=bar");
+ DN expected = DN.valueOf("dc=test").child("uid", "#cn=foo+sn=bar");
+ assertEquals(actual, expected);
+ assertEquals(actual.toString(), "uid=\\#cn\\=foo\\+sn\\=bar,dc=test");
+ }
+
+ /**
+ * Tests the {@link DN#escapeAttributeValue(Object)} method.
+ */
+ @Test
+ public void testEscapeAttributeValue() {
+ String actual = DN.escapeAttributeValue("#cn=foo+sn=bar");
+ assertEquals(actual, "\\#cn\\=foo\\+sn\\=bar");
+ }
}
--
Gitblit v1.10.0