LDIFConnectionHandlerTestCase.java revision ea1068c292e9b341af6d6b563cd8988a96be20a9
/*
* 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 legal-notices/CDDLv1_0.txt
* 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 legal-notices/CDDLv1_0.txt.
* 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
*
*
* Copyright 2008 Sun Microsystems, Inc.
* Portions Copyright 2014-2015 ForgeRock AS
*/
/**
* This class defines a set of tests for the
* org.opends.server.protocols.LDIFConnectionHandler class.
*/
public class LDIFConnectionHandlerTestCase
extends DirectoryServerTestCase
{
/**
* Ensures that the server is running.
*
* @throws Exception If an unexpected problem occurs.
*/
public void startServer()
throws Exception
{
}
/**
* Tests the ability of the LDIF connection handler to process a valid LDIF
* file containing user data.
*
* @throws Exception If an unexpected problem occurs.
*/
public void testValidUserLDIF()
throws Exception
{
TestCaseUtils.initializeTestBackend(false);
"set-connection-handler-prop",
"--handler-name", "LDIF Connection Handler",
"--set", "enabled:true");
try
{
"dn: o=test",
"changetype: add",
"objectClass: top",
"objectClass: organization",
"o: test",
"",
"dn: cn=test,o=test",
"changetype: add",
"objectClass: top",
"objectClass: device",
"objectClass: extensibleObject",
"cn: test",
"",
"dn: cn=test,o=test",
"changetype: modify",
"replace: description",
"description: foo",
"-",
"add: givenName",
"givenName: bar",
"",
"dn: cn=test,o=test",
"changetype: moddn",
"newrdn: uid=test",
"deleteoldrdn: 0",
"",
"dn: uid=test,o=test",
"changetype: delete");
boolean found = false;
{
{
// The file should have been processed. Make sure that there is
// a new file with the appropriate prefix.
{
if (! found)
{
while (true)
{
{
break;
}
}
" instead of testValidUser.ldif.applied.*");
}
}
break;
}
}
}
finally
{
}
}
/**
* Tests the ability of the LDIF connection handler to process a valid LDIF
* file containing configuration changes
*
* @throws Exception If an unexpected problem occurs.
*/
public void testValidConfigLDIF()
throws Exception
{
TestCaseUtils.initializeTestBackend(false);
"set-connection-handler-prop",
"--handler-name", "LDIF Connection Handler",
"--set", "enabled:true");
try
{
"dn: cn=config",
"changetype: modify",
"replace: ds-cfg-size-limit",
"ds-cfg-size-limit: 100");
boolean found = false;
{
{
// The file should have been processed. Make sure that there is
// a new file with the appropriate prefix.
{
if (! found)
{
while (true)
{
{
break;
}
}
" instead of testValidConfig.ldif.applied.*");
}
}
break;
}
}
}
finally
{
"set-global-configuration-prop",
"--set", "size-limit:1000");
}
}
/**
* Tests the ability of the LDIF connection handler to properly deal with an
* unparseable LDIF file.
*
* @throws Exception If an unexpected problem occurs.
*/
public void testUnparseableLDIF()
throws Exception
{
TestCaseUtils.initializeTestBackend(false);
"set-connection-handler-prop",
"--handler-name", "LDIF Connection Handler",
"--set", "enabled:true");
try
{
"unparseable");
boolean appliedFound = false;
boolean errorsFound = false;
{
{
// The file should have been processed. Make sure that there is an
// applied file, and that there is an errors file.
{
{
appliedFound = true;
}
else if (f.getName().startsWith(
"testUnparseable.ldif.errors-encountered."))
{
errorsFound = true;
}
else
{
while (true)
{
{
break;
}
}
}
}
break;
}
}
}
finally
{
}
}
/**
* Tests a number of methods that are part of the generic connection handler
* API.
*
* @throws Exception If an unexpected problem occurs.
*/
@Test
public void testGenericConnectionHandlerMethods()
throws Exception
{
"set-connection-handler-prop",
"--handler-name", "LDIF Connection Handler",
"--set", "enabled:true");
// Get the connection handler from the server.
{
if (handler instanceof LDIFConnectionHandler)
{
}
}
// Generic connection handler methods.
// Alert handler methods.
}
}