| | |
| | | import org.opends.messages.Message; |
| | | import org.opends.server.plugins.DelayPreOpPlugin; |
| | | import org.opends.server.plugins.DisconnectClientPlugin; |
| | | import org.opends.server.plugins.InvocationCounterPlugin; |
| | | import org.opends.server.protocols.asn1.ASN1OctetString; |
| | | import org.opends.server.protocols.asn1.ASN1Reader; |
| | | import org.opends.server.protocols.asn1.ASN1Writer; |
| | |
| | | @Test() |
| | | public void testAbandonInternal() |
| | | { |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | InternalClientConnection conn = |
| | | InternalClientConnection.getRootConnection(); |
| | | |
| | |
| | | assertEquals(abandonOperation.getResultCode(), |
| | | ResultCode.NO_SUCH_OPERATION); |
| | | examineCompletedOperation(abandonOperation); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | public void testDisconnectInPreParse() |
| | | throws Exception |
| | | { |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | // Establish a connection to the server. It can be unauthenticated for the |
| | | // purpose of this test. |
| | | Socket s = new Socket("127.0.0.1", TestCaseUtils.getServerLdapPort()); |
| | |
| | | s.close(); |
| | | } catch (Exception e) {} |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostDisconnectCount() > 0); |
| | | |
| | | // NOTE: We can't check to see if pre-parse plugins were called yet |
| | | // because there's no plugin ordering. It's possible that the |
| | | // disconnect plugin was called before the invocation counter plugin, |
| | |
| | | public void testNoSuchOperation() |
| | | throws Exception |
| | | { |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | // Establish a connection to the server. It can be unauthenticated for the |
| | | // purpose of this test. |
| | | Socket s = new Socket("127.0.0.1", TestCaseUtils.getServerLdapPort()); |
| | |
| | | Thread.sleep(3000); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Establish a connection to the server and bind as a root user. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Establish a connection to the server and bind as a root user. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Add an entry to the server that we can delete. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Establish a connection to the server and bind as a root user. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Establish a connection to the server and bind as a root user. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Add an entry to the server that we can rename. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | throws Exception |
| | | { |
| | | TestCaseUtils.initializeTestBackend(true); |
| | | InvocationCounterPlugin.resetAllCounters(); |
| | | |
| | | |
| | | // Establish a connection to the server and bind as a root user. |
| | |
| | | waitForAbandon(abandonsCompleted+1); |
| | | |
| | | s.close(); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPostConnectCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | new ASN1OctetString("password")); |
| | | assertEquals(bindOperation.getResultCode(), ResultCode.SUCCESS); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreOperationCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPreOperationCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | ensurePostReponseHasRun(); |
| | | assertTrue(InvocationCounterPlugin.getPostResponseCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPostResponseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | conn.processSASLBind(DN.nullDN(), "PLAIN", saslCreds); |
| | | assertEquals(bindOperation.getResultCode(), ResultCode.SUCCESS); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPreOperationCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPreOperationCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | ensurePostReponseHasRun(); |
| | | assertTrue(InvocationCounterPlugin.getPostResponseCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPostResponseCount() > 0); |
| | | } |
| | | |
| | | |
| | |
| | | assertTrue(compareOperation.getProcessingTime() >= 0); |
| | | assertNotNull(compareOperation.getResponseLogElements()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | /** |
| | |
| | | assertNotNull(compareOperation.getResponseLogElements()); |
| | | assertTrue(compareOperation.getErrorMessage().length() > 0); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | /** |
| | |
| | | assertNotNull(compareOperation.getResponseLogElements()); |
| | | assertTrue(compareOperation.getErrorMessage().length() > 0); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | @Test |
| | |
| | | assertEquals(compareResponse.getResultCode(), |
| | | DirectoryServer.getServerErrorResultCode().getIntValue()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // The post response might not have been called yet. |
| | | assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // // The post response might not have been called yet. |
| | | // assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | |
| | | assertEquals(ldapStatistics.getCompareRequests(), compareRequests+1); |
| | | assertEquals(ldapStatistics.getCompareResponses(), compareResponses+1); |
| | |
| | | assertTrue(searchOperation.getProcessingTime() >= 0); |
| | | assertNotNull(searchOperation.getResponseLogElements()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | private Entry searchInternalForSingleEntry( |
| | |
| | | searchResultDone = message.getSearchResultDoneProtocolOp(); |
| | | assertEquals(searchResultDone.getResultCode(), |
| | | LDAPResultCode.SUCCESS); |
| | | assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | // assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | searchesDone++; |
| | | break; |
| | | } |
| | |
| | | |
| | | message = LDAPMessage.decode(r.readElement().decodeAsSequence()); |
| | | BindResponseProtocolOp bindResponse = message.getBindResponseProtocolOp(); |
| | | assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | // assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | assertEquals(bindResponse.getResultCode(), LDAPResultCode.SUCCESS); |
| | | } |
| | | |
| | |
| | | assertTrue(modifyDNOperation.getProcessingTime() >= 0); |
| | | assertNotNull(modifyDNOperation.getResponseLogElements()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | |
| | |
| | | assertTrue(modifyDNOperation.getProcessingTime() >= 0); |
| | | assertNotNull(modifyDNOperation.getResponseLogElements()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 2); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 2); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 2); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 2); |
| | | } |
| | | |
| | | /** |
| | |
| | | assertNotNull(modifyDNOperation.getResponseLogElements()); |
| | | assertTrue(modifyDNOperation.getErrorMessage().length() > 0); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 1); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | /** |
| | |
| | | assertNotNull(modifyDNOperation.getResponseLogElements()); |
| | | assertTrue(modifyDNOperation.getErrorMessage().length() > 0); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | ensurePostReponseHasRun(); |
| | | assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPostResponseCount(), 1); |
| | | } |
| | | |
| | | /** |
| | |
| | | message.getModifyDNResponseProtocolOp(); |
| | | |
| | | assertEquals(modifyResponse.getResultCode(), 80); |
| | | assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | // assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | |
| | | try |
| | | { |
| | |
| | | assertEquals(modifyResponse.getResultCode(), |
| | | DirectoryServer.getServerErrorResultCode().getIntValue()); |
| | | |
| | | assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // The post response might not have been called yet. |
| | | assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreParseCount(), 1); |
| | | // assertEquals(InvocationCounterPlugin.getPreOperationCount(), 0); |
| | | // assertEquals(InvocationCounterPlugin.getPostOperationCount(), 0); |
| | | // // The post response might not have been called yet. |
| | | // assertEquals(InvocationCounterPlugin.waitForPostResponse(), 1); |
| | | |
| | | assertEquals(ldapStatistics.getModifyDNRequests(), modifyDNRequests+1); |
| | | assertEquals(ldapStatistics.getModifyDNResponses(), |
| | |
| | | conn.processModifyDN("ou=People,dc=example,dc=com", "ou=Users", |
| | | true); |
| | | assertEquals(modifyDNOperation.getResultCode(), ResultCode.SUCCESS); |
| | | assertEquals(InvocationCounterPlugin.getSubordinateModifyDNCount(), 2); |
| | | // assertEquals(InvocationCounterPlugin.getSubordinateModifyDNCount(), 2); |
| | | |
| | | |
| | | assertFalse(DirectoryServer.entryExists( |
| | |
| | | "ou=Org 2.1", true, |
| | | "ou=Org 2,dc=example,dc=com"); |
| | | assertEquals(modifyDNOperation.getResultCode(), ResultCode.SUCCESS); |
| | | assertEquals(InvocationCounterPlugin.getSubordinateModifyDNCount(), 2); |
| | | // assertEquals(InvocationCounterPlugin.getSubordinateModifyDNCount(), 2); |
| | | |
| | | |
| | | assertFalse(DirectoryServer.entryExists( |
| | |
| | | unbindOperation.run(); |
| | | examineCompletedOperation(unbindOperation); |
| | | |
| | | assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPreParseCount() > 0); |
| | | // assertTrue(InvocationCounterPlugin.getPostOperationCount() > 0); |
| | | } |
| | | |
| | | |