From f767be424e83355aeb5d7213995d2cac880495b6 Mon Sep 17 00:00:00 2001
From: Ludovic Poitou <ludovic.poitou@forgerock.com>
Date: Wed, 22 Jun 2011 15:07:38 +0000
Subject: [PATCH] Fix issue OPENDJ-211. The value part of control specification is optional. And therefore there should be no : to finish the specification. Now if the specification ends with :, then it's the same as no value. Test added with the ManageDSAIt control.

---
 opends/tests/unit-tests-testng/src/server/org/opends/server/tools/LDAPSearchTestCase.java |   34 ++++++++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/opends/tests/unit-tests-testng/src/server/org/opends/server/tools/LDAPSearchTestCase.java b/opends/tests/unit-tests-testng/src/server/org/opends/server/tools/LDAPSearchTestCase.java
index 36754b7..b8d5646 100644
--- a/opends/tests/unit-tests-testng/src/server/org/opends/server/tools/LDAPSearchTestCase.java
+++ b/opends/tests/unit-tests-testng/src/server/org/opends/server/tools/LDAPSearchTestCase.java
@@ -23,6 +23,7 @@
  *
  *
  *      Copyright 2006-2009 Sun Microsystems, Inc.
+ *      Portions Copyright 2011 ForgeRock AS
  */
 package org.opends.server.tools;
 
@@ -2357,6 +2358,35 @@
     assertFalse(LDAPSearch.mainSearch(args, false, null, null) == 0);
   }
 
+  /**
+   * Tests the use of a control with an empty value.
+   * We use the ManageDSAIt control for this.
+   *
+   * @throws  Exception  If an unexpected problem occurs.
+   */
+  @Test()
+  public void testControlNoValue()
+         throws Exception
+  {
+    TestCaseUtils.initializeTestBackend(true);
+
+    String[] args =
+    {
+      "-h", "127.0.0.1",
+      "-p", String.valueOf(TestCaseUtils.getServerLdapPort()),
+      "-D", "cn=Directory Manager",
+      "-w", "password",
+      "-b", "o=test",
+      "-s", "base",
+      "-J", "managedsait:false:",
+      "--noPropertiesFile",
+      "(objectClass=*)",
+      "dn"
+    };
+
+    assertTrue(LDAPSearch.mainSearch(args, false, null, null) == 0);
+  }
+
 
 
   /**
@@ -2369,6 +2399,10 @@
   public void testVLVWithoutSort()
          throws Exception
   {
+    // Test is supposed to fail in parsing arguments. But we do not
+    // want it to fail because there no backend to search in.
+    TestCaseUtils.clearJEBackend(true, "userRoot", "dc=example,dc=com");
+
     String[] args =
     {
       "-h", "127.0.0.1",

--
Gitblit v1.10.0