mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

gbellato
28.24.2006 2b6ac7f0718a3be4cfac897af71dd9391a60bd0b
split the Ordering Matching rule tests in separate classes for each rule
6 files added
1 files modified
695 ■■■■ changed files
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/CaseExactOrderingMatchingRuleTest.java 72 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/CaseIgnoreOrderingMatchingRuleTest.java 75 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/GeneralizedTimeOrderingMatchingRuleTest.java 97 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/IntegerOrderingMatchingRuleTest.java 82 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/NumericStringOrderingMatchingRuleTest.java 80 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/OrderingMatchingRuleTest.java 208 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/UUIDOrderingMatchingRuleTest.java 81 ●●●●● patch | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/CaseExactOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,72 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the CaseExactOrderingMatchingRule.
 */
public class CaseExactOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        {"12345678", "02345678", 1},
        {"abcdef", "bcdefa", -1},
        {"abcdef", "abcdef", 0},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new CaseExactOrderingMatchingRule();
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/CaseIgnoreOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,75 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the CaseIgnoreOrderingMatchingRule.
 */
public class CaseIgnoreOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        {"12345678", "02345678", 1},
        {"abcdef", "bcdefa", -1},
        {"abcdef", "abcdef", 0},
        {"abcdef", "ABCDEF", 0},
        {"abcdef", "aCcdef", -1},
        {"aCcdef", "abcdef", 1},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new CaseIgnoreOrderingMatchingRule();
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/GeneralizedTimeOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,97 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the GeneralizedTimeOrderingMatchingRule.
 */
public class GeneralizedTimeOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
        { "20060912180130"},
        {"2006123123595aZ"},
        {"200a1231235959Z"},
        {"2006j231235959Z"},
        {"20061231#35959Z"},
        {"20060912180a30Z"},
        {"20060912180030Z.01"},
        {"200609121800"},
        {"20060912180129.hhZ"},
        {"20060912180129.1hZ"},
        {"20060906135030+aa01"},
        {"2006"},
        /* disabled because these tests are failing
         * see issue 675
         * {"20060906135030+3359"},
         * {"20060906135030+2389"},
         * {"20060906135030+2361"},*/
        {"20060906135030+"},
        {"20060906135030+0"},
        {"20060906135030+010"},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        {"20060906135030+0101", "20060906135030+2359",  1},
        {"20060912180130Z",     "20060912180130Z",      0},
        {"20060912180130Z",     "20060912180129Z",      1},
        {"20060912180129Z",     "20060912180130Z",     -1},
        {"20060912180129.000Z", "20060912180130.001Z", -1},
        {"20060912180129.1Z",   "20060912180130.2Z",   -1},
        {"20060912180129.11Z",  "20060912180130.12Z",  -1},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new GeneralizedTimeOrderingMatchingRule();
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/IntegerOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,82 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the IntegerOrderingMatchingRule.
 */
public class IntegerOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
        {" 63 "},
        {"- 63"},
        {"+63" },
        {"AB"  },
        {"0xAB"},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        {"1",   "0",   1},
        {"1",   "1",   0},
        {"45",  "54", -1},
        {"-63", "63", -1},
        {"-63", "0",  -1},
        {"63",  "0",   1},
        {"0",   "-63", 1},
        {"987654321987654321987654321", "987654321987654321987654322", -1},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new IntegerOrderingMatchingRule();
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/NumericStringOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,80 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the NumericStringOrderingMatchingRule.
 */
public class NumericStringOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
        {"jfhslur"},
        {"123AB"},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        // following test is currently disabled because it does not work
        // {"1", "09", -1},
        // see issue 638
        {"1", "999999999999999999999", -1},
        {"1", "9",  -1},
        {"1", " 1 ", 0},
        {"0", "1",  -1},
        {"1", "0",  1},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new NumericStringOrderingMatchingRule();
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/OrderingMatchingRuleTest.java
@@ -40,86 +40,26 @@
/**
 * Test The Ordering matching rules and the Ordering matching rule api.
 */
public class OrderingMatchingRuleTest extends SchemaTestCase
public abstract class OrderingMatchingRuleTest extends SchemaTestCase
{
  /**
   * Create data for the OrderingMatchingRules test.
   *
   * @return The data for the OrderingMatchingRules test.
   */
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTest()
  {
    return new Object[][] {
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+0101",
          "20060906135030+2359", 1},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180130Z",
          "20060912180130Z", 0},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180130Z",
          "20060912180129Z", 1},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180129Z",
          "20060912180130Z", -1},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180129.000Z",
            "20060912180130.001Z", -1},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180129.1Z",
            "20060912180130.2Z", -1},
        {"GeneralizedTimeOrderingMatchingRule", "20060912180129.11Z",
              "20060912180130.12Z", -1},
  public abstract Object[][] createOrderingMatchingRuleTestData();
        // following test is currently disabled because it does not work
        // {"NumericStringOrderingMatchingRule", "1", "09", -1},
        // see issue 638
        {"NumericStringOrderingMatchingRule", "1", "999999999999999999999", -1},
        {"NumericStringOrderingMatchingRule", "1", "9", -1},
        {"NumericStringOrderingMatchingRule", "1", " 1 ", 0},
        {"NumericStringOrderingMatchingRule", "0", "1", -1},
        {"NumericStringOrderingMatchingRule", "1", "0", 1},
        {"IntegerOrderingMatchingRule", "1", "0", 1},
        {"IntegerOrderingMatchingRule", "1", "1", 0},
        {"IntegerOrderingMatchingRule", "45", "54", -1},
        {"IntegerOrderingMatchingRule", "-63", "63", -1},
        {"IntegerOrderingMatchingRule", "-63", "0", -1},
        {"IntegerOrderingMatchingRule", "63", "0", 1},
        {"IntegerOrderingMatchingRule", "0", "-63", 1},
        {"IntegerOrderingMatchingRule", "987654321987654321987654321",
                                        "987654321987654321987654322", -1},
         {"UUIDOrderingMatchingRule",
             "12345678-9ABC-DEF0-1234-1234567890ab",
             "12345678-9abc-def0-1234-1234567890ab", 0},
         {"UUIDOrderingMatchingRule",
             "12345678-9abc-def0-1234-1234567890ab",
             "12345678-9abc-def0-1234-1234567890ab", 0},
         {"UUIDOrderingMatchingRule",
               "02345678-9abc-def0-1234-1234567890ab",
               "12345678-9abc-def0-1234-1234567890ab", -1},
         {"UUIDOrderingMatchingRule",
               "12345678-9abc-def0-1234-1234567890ab",
               "02345678-9abc-def0-1234-1234567890ab", 1},
         {"CaseExactOrderingMatchingRule", "12345678", "02345678", 1},
         {"CaseExactOrderingMatchingRule","abcdef", "bcdefa", -1},
         {"CaseExactOrderingMatchingRule","abcdef", "abcdef", 0},
         {"CaseIgnoreOrderingMatchingRule", "12345678", "02345678", 1},
         {"CaseIgnoreOrderingMatchingRule","abcdef", "bcdefa", -1},
         {"CaseIgnoreOrderingMatchingRule","abcdef", "abcdef", 0},
         {"CaseIgnoreOrderingMatchingRule","abcdef", "ABCDEF", 0},
         {"CaseIgnoreOrderingMatchingRule","abcdef", "aCcdef", -1},
         {"CaseIgnoreOrderingMatchingRule","aCcdef", "abcdef", 1},
    };
  }
  /**
   * Test the comparison of valid values.
   */
  @Test(dataProvider= "Orderingmatchingrules")
  public void OrderingMatchingRules(String ruleClassName, String value1,
      String value2, int result) throws Exception
  public void OrderingMatchingRules(String value1,String value2, int result)
         throws Exception
  {
    // load the mathing rule code
    Class rule = Class.forName("org.opends.server.schema."+ruleClassName);
    // Make sure that the specified class can be instantiated as a task.
    OrderingMatchingRule ruleInstance =
      (OrderingMatchingRule) rule.newInstance();
    OrderingMatchingRule ruleInstance = getRule();
    // we should call initializeMatchingRule but they all seem empty at the
    // moment.
@@ -134,7 +74,7 @@
    {
      if (res != 0)
      {
        fail(ruleClassName + ".compareValues should return 0 for values " +
        fail(ruleInstance + ".compareValues should return 0 for values " +
            value1 + " and " + value2);
      }
    }
@@ -142,7 +82,7 @@
    {
      if (res <= 0)
      {
        fail(ruleClassName + ".compareValues should return a positive integer "
        fail(ruleInstance + ".compareValues should return a positive integer "
            + "for values : " + value1 + " and " + value2);
      }
    }
@@ -150,102 +90,62 @@
    {
      if (res >= 0)
      {
        fail(ruleClassName + ".compareValues should return a negative integer "
        fail(ruleInstance + ".compareValues should return a negative integer "
            + "for values : " + value1 + " and " + value2);
      }
    }
  }
  /**
   * Get the Ordering matching Rules that is to be tested.
   *
   * @return The Ordering matching Rules that is to be tested.
   */
  public abstract OrderingMatchingRule getRule();
  /**
   * Create data for the OrderingMatchingRulesInvalidValues test.
   *
   * @return The data for the OrderingMatchingRulesInvalidValues test.
   */
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
        {"GeneralizedTimeOrderingMatchingRule", "20060912180130"},
        {"GeneralizedTimeOrderingMatchingRule","2006123123595aZ"},
        {"GeneralizedTimeOrderingMatchingRule","200a1231235959Z"},
        {"GeneralizedTimeOrderingMatchingRule","2006j231235959Z"},
        {"GeneralizedTimeOrderingMatchingRule","20061231#35959Z"},
        {"GeneralizedTimeOrderingMatchingRule","20060912180a30Z"},
        {"GeneralizedTimeOrderingMatchingRule","20060912180030Z.01"},
        {"GeneralizedTimeOrderingMatchingRule","200609121800"},
        {"GeneralizedTimeOrderingMatchingRule","20060912180129.hhZ"},
        {"GeneralizedTimeOrderingMatchingRule","20060912180129.1hZ"},
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+aa01"},
        {"GeneralizedTimeOrderingMatchingRule","2006"},
        /* disabled because these tests are failing
         * see issue 675
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+3359"},
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+2389"},
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+2361"},*/
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+"},
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+0"},
        {"GeneralizedTimeOrderingMatchingRule","20060906135030+010"},
        {"NumericStringOrderingMatchingRule", "jfhslur"},
        {"NumericStringOrderingMatchingRule", "123AB"},
        {"IntegerOrderingMatchingRule", " 63 "},
        {"IntegerOrderingMatchingRule", "- 63"},
        {"IntegerOrderingMatchingRule", "+63"},
        {"IntegerOrderingMatchingRule", "AB"},
        {"IntegerOrderingMatchingRule", "0xAB"},
        {"UUIDOrderingMatchingRule", "G2345678-9abc-def0-1234-1234567890ab"},
        {"UUIDOrderingMatchingRule", "g2345678-9abc-def0-1234-1234567890ab"},
        {"UUIDOrderingMatchingRule", "12345678/9abc/def0/1234/1234567890ab"},
        {"UUIDOrderingMatchingRule", "12345678-9abc-def0-1234-1234567890a"},
    };
  }
  public abstract Object[][] createOrderingMatchingRuleInvalidValues();
  /**
   * Test that invalid values are rejected.
   */
  @Test(dataProvider= "OrderingMatchingRuleInvalidValues")
  public void OrderingMatchingRulesInvalidValues(String ruleClassName,
      String value) throws Exception
  public void OrderingMatchingRulesInvalidValues(String value) throws Exception
  {
    // load the matching rule code
    Class rule = Class.forName("org.opends.server.schema."+ruleClassName);
    // Make sure that the specified class can be instantiated as a task.
    OrderingMatchingRule ruleInstance =
      (OrderingMatchingRule) rule.newInstance();
    // we should call initializeMatchingRule but they all seem empty at the
    // moment.
    // ruleInstance.initializeMatchingRule(configEntry);
    OrderingMatchingRule ruleInstance = getRule();
    // normalize the 2 provided values
    try
    {
      ruleInstance.normalizeValue(new ASN1OctetString(value));
    } catch (DirectoryException e) {
      // that's the expected path : the matching rule has detected that
      // that's the expected path : the matching rule has detected that
      // the value is incorrect.
      return;
    }
    // if we get there with false value for  success then the tested
    // matching rule did not raised the Exception.
    fail(ruleClassName + " did not catch that value " + value + " is invalid.");
    fail(ruleInstance + " did not catch that value " + value + " is invalid.");
  }
  /**
   * Test that invalid values are rejected.
   */
  @Test(dataProvider= "OrderingMatchingRuleInvalidValues")
  public void OrderingMatchingRulesInvalidValuesWarn(String ruleClassName,
      String value) throws Exception
  public void OrderingMatchingRulesInvalidValuesWarn(String value)
         throws Exception
  {
    // load the matching rule code
    Class rule = Class.forName("org.opends.server.schema."+ruleClassName);
    // Make sure that the specified class can be instantiated as a task.
    OrderingMatchingRule ruleInstance =
      (OrderingMatchingRule) rule.newInstance();
    OrderingMatchingRule ruleInstance = getRule();
    AcceptRejectWarn accept = DirectoryServer.getSyntaxEnforcementPolicy();
    DirectoryServer.setSyntaxEnforcementPolicy(AcceptRejectWarn.WARN);
@@ -255,12 +155,44 @@
      ruleInstance.normalizeValue(new ASN1OctetString(value));
    } catch (Exception e)
    {
      fail(ruleClassName + " in warn mode should not reject value " + value + e);
      fail(ruleInstance + " in warn mode should not reject value " + value + e);
      return;
    }
    finally
    {
      DirectoryServer.setSyntaxEnforcementPolicy(accept);
    }
    }
  }
  private void dummy ()
  {
       Object a = new Object[][] {
      };
  }
  private Object dummy_invalid()
  {
    return new Object[][] {
    };
  }
}
opends/tests/unit-tests-testng/src/server/org/opends/server/schema/UUIDOrderingMatchingRuleTest.java
New file
@@ -0,0 +1,81 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying * information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Portions Copyright 2006 Sun Microsystems, Inc.
 */
package org.opends.server.schema;
import org.opends.server.api.OrderingMatchingRule;
import org.testng.annotations.DataProvider;
/**
 * Test the UUIDOrderingMatchingRule.
 */
public class UUIDOrderingMatchingRuleTest extends
    OrderingMatchingRuleTest
{
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="OrderingMatchingRuleInvalidValues")
  public Object[][] createOrderingMatchingRuleInvalidValues()
  {
    return new Object[][] {
        {"G2345678-9abc-def0-1234-1234567890ab"},
        {"g2345678-9abc-def0-1234-1234567890ab"},
        {"12345678/9abc/def0/1234/1234567890ab"},
        {"12345678-9abc-def0-1234-1234567890a"},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  @DataProvider(name="Orderingmatchingrules")
  public Object[][] createOrderingMatchingRuleTestData()
  {
    return new Object[][] {
        {"12345678-9ABC-DEF0-1234-1234567890ab",
          "12345678-9abc-def0-1234-1234567890ab", 0},
        {"12345678-9abc-def0-1234-1234567890ab",
          "12345678-9abc-def0-1234-1234567890ab", 0},
        {"02345678-9abc-def0-1234-1234567890ab",
          "12345678-9abc-def0-1234-1234567890ab", -1},
        {"12345678-9abc-def0-1234-1234567890ab",
          "02345678-9abc-def0-1234-1234567890ab", 1},
    };
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public OrderingMatchingRule getRule()
  {
    return new UUIDOrderingMatchingRule();
  }
}