RebindOperationExecutor implements
        CompensatingTransactionOperationExecutor { public void commit() { log.debug("Committing rebind operation"); ldapOperations.unbind(temporaryDn); } RebindOperationExecutor(LdapOperations ldapOperations,
            Name originalDn, Name temporaryDn, Object originalObject,
            Attributes originalAttributes); void rollback(); void commit(); void performOperation();  }
@Test public void testCommit() { LdapName expectedOriginalDn = LdapUtils.newLdapName( "cn=john doe"); LdapName expectedTempDn = LdapUtils.newLdapName( "cn=john doe_temp"); Object expectedObject = new Object(); BasicAttributes expectedAttributes = new BasicAttributes(); RebindOperationExecutor tested = new RebindOperationExecutor( ldapOperationsMock, expectedOriginalDn, expectedTempDn, expectedObject, expectedAttributes); tested.commit(); verify(ldapOperationsMock).unbind(expectedTempDn); }