From 101a02e436e695aece3a4aabb62ae01aa63cb62d Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Tue, 10 Oct 2006 15:24:57 +0000
Subject: [PATCH] Add a number of test cases that cover the plugin API.
---
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/IntermediateResponsePluginResultTestCase.java | 158 ++++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchEntryPluginResultTestCase.java | 140 +++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/DirectoryServerPluginTestCase.java | 648 ++++++++++++++++++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostConnectPluginResultTestCase.java | 102 ++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostResponsePluginResultTestCase.java | 101 ++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostDisconnectPluginResultTestCase.java | 87 ++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PluginAPITestCase.java | 46 +
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchReferencePluginResultTestCase.java | 156 ++++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreOperationPluginResultTestCase.java | 118 +++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/LDIFPluginResultTestCase.java | 108 +++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/plugins/NullPlugin.java | 81 ++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostOperationPluginResultTestCase.java | 101 ++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/StartupPluginResultTestCase.java | 139 +++
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreParsePluginResultTestCase.java | 118 +++
14 files changed, 2,103 insertions(+), 0 deletions(-)
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/DirectoryServerPluginTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/DirectoryServerPluginTestCase.java
new file mode 100644
index 0000000..e149f83
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/DirectoryServerPluginTestCase.java
@@ -0,0 +1,648 @@
+/*
+ * 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.api.plugin;
+
+
+
+import java.util.HashSet;
+
+import org.testng.annotations.Test;
+
+import org.opends.server.plugins.NullPlugin;
+import org.opends.server.types.DisconnectReason;
+import org.opends.server.types.DN;
+import org.opends.server.types.operation.*;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of generic test cases for the Directory Server plugin API.
+ */
+public class DirectoryServerPluginTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Tests the <CODE>getPluginEntryDN</CODE> method.
+ *
+ * @throws Exception If an unexpected problem occurs.
+ */
+ @Test()
+ public void testGetPluginEntryDN()
+ throws Exception
+ {
+ NullPlugin nullPlugin = new NullPlugin();
+ DN pluginEntryDN = DN.decode("cn=Null Plugin,cn=Plugins,cn=config");
+
+ HashSet<PluginType> pluginTypes = new HashSet<PluginType>();
+ for (PluginType t : PluginType.values())
+ {
+ pluginTypes.add(t);
+ }
+
+ nullPlugin.initializeInternal(pluginEntryDN, pluginTypes);
+ assertEquals(nullPlugin.getPluginEntryDN(), pluginEntryDN);
+ }
+
+
+
+ /**
+ * Tests the <CODE>getPluginTypes</CODE> method.
+ *
+ * @throws Exception If an unexpected problem occurs.
+ */
+ @Test()
+ public void testGetPluginTypes()
+ throws Exception
+ {
+ NullPlugin nullPlugin = new NullPlugin();
+ DN pluginEntryDN = DN.decode("cn=Null Plugin,cn=Plugins,cn=config");
+
+ HashSet<PluginType> pluginTypes = new HashSet<PluginType>();
+ for (PluginType t : PluginType.values())
+ {
+ pluginTypes.add(t);
+ }
+
+ nullPlugin.initializeInternal(pluginEntryDN, pluginTypes);
+ assertEquals(nullPlugin.getPluginTypes(), pluginTypes);
+ }
+
+
+
+ /**
+ * Invokes the default plugin finalizer.
+ */
+ @Test()
+ public void testDefaultFinalizer()
+ {
+ new NullPlugin().finalizePlugin();
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doStartup</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoStartup()
+ {
+ new NullPlugin().doStartup();
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doShutdown</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoShutdown()
+ {
+ new NullPlugin().doShutdown();
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostConnect</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostConnect()
+ {
+ new NullPlugin().doPostConnect(null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostDisconnect</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostDisconnect()
+ {
+ new NullPlugin().doPostDisconnect(null, DisconnectReason.CLOSED_BY_PLUGIN,
+ -1, null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doLDIFImport</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoLDIFImport()
+ {
+ new NullPlugin().doLDIFImport(null, null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doLDIFExport</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoLDIFExport()
+ {
+ new NullPlugin().doLDIFExport(null, null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for abandon operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseAbandon()
+ {
+ new NullPlugin().doPreParse((PreParseAbandonOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for add operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseAdd()
+ {
+ new NullPlugin().doPreParse((PreParseAddOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for bind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseBind()
+ {
+ new NullPlugin().doPreParse((PreParseBindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for compare operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseCompare()
+ {
+ new NullPlugin().doPreParse((PreParseCompareOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for delete operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseDelete()
+ {
+ new NullPlugin().doPreParse((PreParseDeleteOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for extended operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseExtended()
+ {
+ new NullPlugin().doPreParse((PreParseExtendedOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for modify operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseModify()
+ {
+ new NullPlugin().doPreParse((PreParseModifyOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for modify DN operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseModifyDN()
+ {
+ new NullPlugin().doPreParse((PreParseModifyDNOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for search operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseSearch()
+ {
+ new NullPlugin().doPreParse((PreParseSearchOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreParse</CODE> method throws an
+ * exception for unbind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreParseUnbind()
+ {
+ new NullPlugin().doPreParse((PreParseUnbindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for add operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationAdd()
+ {
+ new NullPlugin().doPreOperation((PreOperationAddOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for bind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationBind()
+ {
+ new NullPlugin().doPreOperation((PreOperationBindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for compare operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationCompare()
+ {
+ new NullPlugin().doPreOperation((PreOperationCompareOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for delete operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationDelete()
+ {
+ new NullPlugin().doPreOperation((PreOperationDeleteOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for extended operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationExtended()
+ {
+ new NullPlugin().doPreOperation((PreOperationExtendedOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for modify operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationModify()
+ {
+ new NullPlugin().doPreOperation((PreOperationModifyOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for modify DN operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationModifyDN()
+ {
+ new NullPlugin().doPreOperation((PreOperationModifyDNOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPreOperation</CODE> method throws an
+ * exception for search operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPreOperationSearch()
+ {
+ new NullPlugin().doPreOperation((PreOperationSearchOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for abandon operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationAbandon()
+ {
+ new NullPlugin().doPostOperation((PostOperationAbandonOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for add operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationAdd()
+ {
+ new NullPlugin().doPostOperation((PostOperationAddOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for bind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationBind()
+ {
+ new NullPlugin().doPostOperation((PostOperationBindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for compare operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationCompare()
+ {
+ new NullPlugin().doPostOperation((PostOperationCompareOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for delete operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationDelete()
+ {
+ new NullPlugin().doPostOperation((PostOperationDeleteOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for extended operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationExtended()
+ {
+ new NullPlugin().doPostOperation((PostOperationExtendedOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for modify operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationModify()
+ {
+ new NullPlugin().doPostOperation((PostOperationModifyOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for modify DN operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationModifyDN()
+ {
+ new NullPlugin().doPostOperation((PostOperationModifyDNOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for search operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationSearch()
+ {
+ new NullPlugin().doPostOperation((PostOperationSearchOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostOperation</CODE> method throws an
+ * exception for unbind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostOperationUnbind()
+ {
+ new NullPlugin().doPostOperation((PostOperationUnbindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for add operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseAdd()
+ {
+ new NullPlugin().doPostResponse((PostResponseAddOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for bind operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseBind()
+ {
+ new NullPlugin().doPostResponse((PostResponseBindOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for compare operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseCompare()
+ {
+ new NullPlugin().doPostResponse((PostResponseCompareOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for delete operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseDelete()
+ {
+ new NullPlugin().doPostResponse((PostResponseDeleteOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for extended operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseExtended()
+ {
+ new NullPlugin().doPostResponse((PostResponseExtendedOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for modify operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseModify()
+ {
+ new NullPlugin().doPostResponse((PostResponseModifyOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for modify DN operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseModifyDN()
+ {
+ new NullPlugin().doPostResponse((PostResponseModifyDNOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>doPostResponse</CODE> method throws an
+ * exception for search operations.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testDoPostResponseSearch()
+ {
+ new NullPlugin().doPostResponse((PostResponseSearchOperation) null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>processSearchEntry</CODE> method throws an
+ * exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testProcessSearchEntry()
+ {
+ new NullPlugin().processSearchEntry(null, null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>processSearchReference</CODE> method throws
+ * an exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testProcessSearchReference()
+ {
+ new NullPlugin().processSearchReference(null, null);
+ }
+
+
+
+ /**
+ * Ensures that the default <CODE>processIntermediateResponse</CODE> method
+ * throws an exception.
+ */
+ @Test(expectedExceptions = { UnsupportedOperationException.class })
+ public void testProcessIntermediateResponse()
+ {
+ new NullPlugin().processIntermediateResponse(null);
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/IntermediateResponsePluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/IntermediateResponsePluginResultTestCase.java
new file mode 100644
index 0000000..f79b485
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/IntermediateResponsePluginResultTestCase.java
@@ -0,0 +1,158 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the intermediate response plugin result type.
+ */
+public class IntermediateResponsePluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of intermediate response plugin result instances.
+ *
+ * @return A set of intermediate response plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { IntermediateResponsePluginResult.SUCCESS },
+ new Object[] { new IntermediateResponsePluginResult(false, false, false,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(true, false, false,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(false, true, false,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(false, false, true,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(false, false, false,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(true, true, false,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(true, false, true,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(true, false, false,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(false, true, true,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(false, true, false,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(false, false, true,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(true, true, true,
+ false) },
+ new Object[] { new IntermediateResponsePluginResult(true, true, false,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(true, false, true,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(false, true, true,
+ true) },
+ new Object[] { new IntermediateResponsePluginResult(true, true, true,
+ true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(IntermediateResponsePluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(IntermediateResponsePluginResult
+ result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>sendIntermediateResponse</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testSendIntermediateResponse(IntermediateResponsePluginResult
+ result)
+ {
+ result.sendIntermediateResponse();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continueOperation</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinueOperation(IntermediateResponsePluginResult result)
+ {
+ result.continueOperation();
+ }
+
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(IntermediateResponsePluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/LDIFPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/LDIFPluginResultTestCase.java
new file mode 100644
index 0000000..43217a7
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/LDIFPluginResultTestCase.java
@@ -0,0 +1,108 @@
+/*
+ * 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.api.plugin;
+
+
+
+import java.util.HashSet;
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import org.opends.server.plugins.NullPlugin;
+import org.opends.server.types.DisconnectReason;
+import org.opends.server.types.DN;
+import org.opends.server.types.operation.*;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the LDIF plugin result type.
+ */
+public class LDIFPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of LDIF plugin result instances.
+ *
+ * @return A set of LDIF plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { LDIFPluginResult.SUCCESS },
+ new Object[] { new LDIFPluginResult(false, false) },
+ new Object[] { new LDIFPluginResult(true, false) },
+ new Object[] { new LDIFPluginResult(false, true) },
+ new Object[] { new LDIFPluginResult(true, true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(LDIFPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continueEntryProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinueEntryProcessing(LDIFPluginResult result)
+ {
+ result.continueEntryProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(LDIFPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PluginAPITestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PluginAPITestCase.java
new file mode 100644
index 0000000..80d3e26
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PluginAPITestCase.java
@@ -0,0 +1,46 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+
+import org.opends.server.DirectoryServerTestCase;
+
+
+
+/**
+ * An abstract base class for all plugin API test cases.
+ */
+@Test(groups = { "precommit", "pluginapi" })
+public abstract class PluginAPITestCase
+ extends DirectoryServerTestCase
+{
+ // No implementation required.
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostConnectPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostConnectPluginResultTestCase.java
new file mode 100644
index 0000000..3b40318
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostConnectPluginResultTestCase.java
@@ -0,0 +1,102 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the post-connect plugin result type.
+ */
+public class PostConnectPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of post-connect plugin result instances.
+ *
+ * @return A set of post-connect plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PostConnectPluginResult.SUCCESS },
+ new Object[] { new PostConnectPluginResult(false, false) },
+ new Object[] { new PostConnectPluginResult(true, false) },
+ new Object[] { new PostConnectPluginResult(false, true) },
+ new Object[] { new PostConnectPluginResult(true, true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(PostConnectPluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PostConnectPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PostConnectPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostDisconnectPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostDisconnectPluginResultTestCase.java
new file mode 100644
index 0000000..ed526c4
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostDisconnectPluginResultTestCase.java
@@ -0,0 +1,87 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the post-disconnect plugin result type.
+ */
+public class PostDisconnectPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of post-disconnect plugin result instances.
+ *
+ * @return A set of post-disconnect plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PostDisconnectPluginResult.SUCCESS },
+ new Object[] { new PostDisconnectPluginResult(false) },
+ new Object[] { new PostDisconnectPluginResult(true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PostDisconnectPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PostDisconnectPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostOperationPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostOperationPluginResultTestCase.java
new file mode 100644
index 0000000..746ef21
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostOperationPluginResultTestCase.java
@@ -0,0 +1,101 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the post-operation plugin result type.
+ */
+public class PostOperationPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of post-operation plugin result instances.
+ *
+ * @return A set of post-operation plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PostOperationPluginResult.SUCCESS },
+ new Object[] { new PostOperationPluginResult(false, false) },
+ new Object[] { new PostOperationPluginResult(true, false) },
+ new Object[] { new PostOperationPluginResult(false, true) },
+ new Object[] { new PostOperationPluginResult(true, true) },
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(PostOperationPluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PostOperationPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PostOperationPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostResponsePluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostResponsePluginResultTestCase.java
new file mode 100644
index 0000000..8a633b8
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PostResponsePluginResultTestCase.java
@@ -0,0 +1,101 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the post-response plugin result type.
+ */
+public class PostResponsePluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of post-resposne plugin result instances.
+ *
+ * @return A set of post-response plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PostResponsePluginResult.SUCCESS },
+ new Object[] { new PostResponsePluginResult(false, false) },
+ new Object[] { new PostResponsePluginResult(true, false) },
+ new Object[] { new PostResponsePluginResult(false, true) },
+ new Object[] { new PostResponsePluginResult(true, true) },
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(PostResponsePluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PostResponsePluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PostResponsePluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreOperationPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreOperationPluginResultTestCase.java
new file mode 100644
index 0000000..a3ab71e
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreOperationPluginResultTestCase.java
@@ -0,0 +1,118 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the pre-operation plugin result type.
+ */
+public class PreOperationPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of pre-operation plugin result instances.
+ *
+ * @return A set of pre-operation plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PreOperationPluginResult.SUCCESS },
+ new Object[] { new PreOperationPluginResult(false, false, false) },
+ new Object[] { new PreOperationPluginResult(true, false, false) },
+ new Object[] { new PreOperationPluginResult(false, true, false) },
+ new Object[] { new PreOperationPluginResult(false, false, true) },
+ new Object[] { new PreOperationPluginResult(true, true, false) },
+ new Object[] { new PreOperationPluginResult(true, false, true) },
+ new Object[] { new PreOperationPluginResult(false, true, true) },
+ new Object[] { new PreOperationPluginResult(true, true, true) },
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(PreOperationPluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PreOperationPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>sendResponseImmediately</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testSendResponseImmediately(PreOperationPluginResult result)
+ {
+ result.sendResponseImmediately();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PreOperationPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreParsePluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreParsePluginResultTestCase.java
new file mode 100644
index 0000000..2eb0c5c
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/PreParsePluginResultTestCase.java
@@ -0,0 +1,118 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the pre-parse plugin result type.
+ */
+public class PreParsePluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of pre-parse plugin result instances.
+ *
+ * @return A set of pre-parse plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { PreParsePluginResult.SUCCESS },
+ new Object[] { new PreParsePluginResult(false, false, false) },
+ new Object[] { new PreParsePluginResult(true, false, false) },
+ new Object[] { new PreParsePluginResult(false, true, false) },
+ new Object[] { new PreParsePluginResult(false, false, true) },
+ new Object[] { new PreParsePluginResult(true, true, false) },
+ new Object[] { new PreParsePluginResult(true, false, true) },
+ new Object[] { new PreParsePluginResult(false, true, true) },
+ new Object[] { new PreParsePluginResult(true, true, true) },
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(PreParsePluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(PreParsePluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>sendResponseImmediately</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testSendResponseImmediately(PreParsePluginResult result)
+ {
+ result.sendResponseImmediately();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(PreParsePluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchEntryPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchEntryPluginResultTestCase.java
new file mode 100644
index 0000000..da968d1
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchEntryPluginResultTestCase.java
@@ -0,0 +1,140 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the search entry plugin result type.
+ */
+public class SearchEntryPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of search entry plugin result instances.
+ *
+ * @return A set of search entry plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { SearchEntryPluginResult.SUCCESS },
+ new Object[] { new SearchEntryPluginResult(false, false, false, false) },
+ new Object[] { new SearchEntryPluginResult(true, false, false, false) },
+ new Object[] { new SearchEntryPluginResult(false, true, false, false) },
+ new Object[] { new SearchEntryPluginResult(false, false, true, false) },
+ new Object[] { new SearchEntryPluginResult(false, false, false, true) },
+ new Object[] { new SearchEntryPluginResult(true, true, false, false) },
+ new Object[] { new SearchEntryPluginResult(true, false, true, false) },
+ new Object[] { new SearchEntryPluginResult(true, false, false, true) },
+ new Object[] { new SearchEntryPluginResult(false, true, true, false) },
+ new Object[] { new SearchEntryPluginResult(false, true, false, true) },
+ new Object[] { new SearchEntryPluginResult(false, false, true, true) },
+ new Object[] { new SearchEntryPluginResult(true, true, true, false) },
+ new Object[] { new SearchEntryPluginResult(true, true, false, true) },
+ new Object[] { new SearchEntryPluginResult(true, false, true, true) },
+ new Object[] { new SearchEntryPluginResult(false, true, true, true) },
+ new Object[] { new SearchEntryPluginResult(true, true, true, true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(SearchEntryPluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(SearchEntryPluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>sendEntry</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testSendEntry(SearchEntryPluginResult result)
+ {
+ result.sendEntry();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continueSearch</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinueSearch(SearchEntryPluginResult result)
+ {
+ result.continueSearch();
+ }
+
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(SearchEntryPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchReferencePluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchReferencePluginResultTestCase.java
new file mode 100644
index 0000000..6a983a6
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/SearchReferencePluginResultTestCase.java
@@ -0,0 +1,156 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the search reference plugin result type.
+ */
+public class SearchReferencePluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of search reference plugin result instances.
+ *
+ * @return A set of search reference plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { SearchReferencePluginResult.SUCCESS },
+ new Object[] { new SearchReferencePluginResult(false, false, false,
+ false) },
+ new Object[] { new SearchReferencePluginResult(true, false, false,
+ false) },
+ new Object[] { new SearchReferencePluginResult(false, true, false,
+ false) },
+ new Object[] { new SearchReferencePluginResult(false, false, true,
+ false) },
+ new Object[] { new SearchReferencePluginResult(false, false, false,
+ true) },
+ new Object[] { new SearchReferencePluginResult(true, true, false,
+ false) },
+ new Object[] { new SearchReferencePluginResult(true, false, true,
+ false) },
+ new Object[] { new SearchReferencePluginResult(true, false, false,
+ true) },
+ new Object[] { new SearchReferencePluginResult(false, true, true,
+ false) },
+ new Object[] { new SearchReferencePluginResult(false, true, false,
+ true) },
+ new Object[] { new SearchReferencePluginResult(false, false, true,
+ true) },
+ new Object[] { new SearchReferencePluginResult(true, true, true,
+ false) },
+ new Object[] { new SearchReferencePluginResult(true, true, false,
+ true) },
+ new Object[] { new SearchReferencePluginResult(true, false, true,
+ true) },
+ new Object[] { new SearchReferencePluginResult(false, true, true,
+ true) },
+ new Object[] { new SearchReferencePluginResult(true, true, true,
+ true) }
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>connectionTerminated</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testConnectionTerminated(SearchReferencePluginResult result)
+ {
+ result.connectionTerminated();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continuePluginProcessing</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinuePluginProcessing(SearchReferencePluginResult result)
+ {
+ result.continuePluginProcessing();
+ }
+
+
+
+ /**
+ * Tests the <CODE>sendReference</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testSendReference(SearchReferencePluginResult result)
+ {
+ result.sendReference();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continueSearch</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinueSearch(SearchReferencePluginResult result)
+ {
+ result.continueSearch();
+ }
+
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(SearchReferencePluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/StartupPluginResultTestCase.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/StartupPluginResultTestCase.java
new file mode 100644
index 0000000..2813c49
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/api/plugin/StartupPluginResultTestCase.java
@@ -0,0 +1,139 @@
+/*
+ * 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.api.plugin;
+
+
+
+import org.testng.annotations.Test;
+import org.testng.annotations.DataProvider;
+
+import static org.testng.Assert.*;
+
+
+
+/**
+ * A set of test cases for the startup plugin result type.
+ */
+public class StartupPluginResultTestCase
+ extends PluginAPITestCase
+{
+ /**
+ * Retrieves a set of startup plugin result instances.
+ *
+ * @return A set of startup plugin result instances.
+ */
+ @DataProvider(name = "instances")
+ public Object[][] getInstances()
+ {
+ return new Object[][]
+ {
+ new Object[] { StartupPluginResult.SUCCESS },
+ new Object[] { new StartupPluginResult(false, false, 0, null) },
+ new Object[] { new StartupPluginResult(true, false, 0, null) },
+ new Object[] { new StartupPluginResult(false, true, 0, null) },
+ new Object[] { new StartupPluginResult(true, true, 0, null) },
+ new Object[] { new StartupPluginResult(false, false, 1, null) },
+ new Object[] { new StartupPluginResult(true, false, 1, null) },
+ new Object[] { new StartupPluginResult(false, true, 1, null) },
+ new Object[] { new StartupPluginResult(true, true, 1, null) },
+ new Object[] { new StartupPluginResult(false, false, 0, "foo") },
+ new Object[] { new StartupPluginResult(true, false, 0, "foo") },
+ new Object[] { new StartupPluginResult(false, true, 0, "foo") },
+ new Object[] { new StartupPluginResult(true, true, 0, "foo") },
+ new Object[] { new StartupPluginResult(false, false, 1, "foo") },
+ new Object[] { new StartupPluginResult(true, false, 1, "foo") },
+ new Object[] { new StartupPluginResult(false, true, 1, "foo") },
+ new Object[] { new StartupPluginResult(true, true, 1, "foo") },
+ };
+ }
+
+
+
+ /**
+ * Tests the <CODE>completedSuccessfully</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testCompletedSuccessfully(StartupPluginResult result)
+ {
+ result.completedSuccessfully();
+ }
+
+
+
+ /**
+ * Tests the <CODE>continueStartup</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testContinueStartup(StartupPluginResult result)
+ {
+ result.continueStartup();
+ }
+
+
+
+ /**
+ * Tests the <CODE>getErrorID</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testGetErrorID(StartupPluginResult result)
+ {
+ result.getErrorID();
+ }
+
+
+
+ /**
+ * Tests the <CODE>getErrorMessage</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testGetErrorMessage(StartupPluginResult result)
+ {
+ result.getErrorMessage();
+ }
+
+
+
+ /**
+ * Tests the <CODE>toString</CODE> method.
+ *
+ * @param result The result instance to test.
+ */
+ @Test(dataProvider = "instances")
+ public void testToString(StartupPluginResult result)
+ {
+ assertNotNull(result.toString());
+ }
+}
+
diff --git a/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/plugins/NullPlugin.java b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/plugins/NullPlugin.java
new file mode 100644
index 0000000..0db230b
--- /dev/null
+++ b/opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/plugins/NullPlugin.java
@@ -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.plugins;
+
+
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import org.opends.server.api.plugin.DirectoryServerPlugin;
+import org.opends.server.api.plugin.PluginType;
+import org.opends.server.api.plugin.PreOperationPluginResult;
+import org.opends.server.config.ConfigEntry;
+import org.opends.server.config.ConfigException;
+import org.opends.server.protocols.asn1.ASN1Long;
+import org.opends.server.protocols.asn1.ASN1OctetString;
+import org.opends.server.protocols.ldap.LDAPControl;
+import org.opends.server.types.Control;
+import org.opends.server.types.ResultCode;
+import org.opends.server.types.operation.*;
+
+
+
+/**
+ * This class defines a Directory Server plugin that doesn't do anything. It
+ * just passes through all non-abstract methods to the superclass
+ * implementation (which will throw exceptions for all plugin operations).
+ */
+public class NullPlugin
+ extends DirectoryServerPlugin
+{
+ /**
+ * Creates a new instance of this Directory Server plugin. Every
+ * plugin must implement a default constructor (it is the only one
+ * that will be used to create plugins defined in the
+ * configuration), and every plugin constructor must call
+ * <CODE>super()</CODE> as its first element.
+ */
+ public NullPlugin()
+ {
+ super();
+ }
+
+
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override()
+ public void initializePlugin(Set<PluginType> pluginTypes,
+ ConfigEntry configEntry)
+ {
+ // No implementation required.
+ }
+}
+
--
Gitblit v1.10.0