package org.opendaylight.groupbasedpolicy.renderer.faas;
import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import java.util.Collections;
import org.junit.Before;
import org.junit.Test;
-import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.DataObjectModification;
import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.faas.uln.datastore.api.UlnDatastoreApi;
+import org.opendaylight.faas.uln.datastore.api.UlnDatastoreUtil;
import org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.common.rev151013.Uuid;
import org.opendaylight.yang.gen.v1.urn.opendaylight.faas.logical.faas.security.rules.rev151013.security.rule.groups.attributes.security.rule.groups.container.SecurityRuleGroups;
import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ContractId;
import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.ContractBuilder;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-@PrepareForTest(UlnDatastoreApi.class)
-@RunWith(PowerMockRunner.class)
public class FaasContractManagerListenerTest {
private InstanceIdentifier<DataObject> contractId;
private MockFaasContractManagerListener contractManagerListener;
private final TenantId gbpTenantId = new TenantId("b4511aac-ae43-11e5-bf7f-feff819cdc9f");
private final Uuid faasTenantId = new Uuid("b4511aac-ae43-11e5-bf7f-feff819cdc9f");
+ private final UlnDatastoreUtil mockUlnDatastoreUtil = mock(UlnDatastoreUtil.class);
@SuppressWarnings("unchecked")
@Before
contractId = mock(InstanceIdentifier.class);
contractId = mock(InstanceIdentifier.class);
DataBroker dataProvider = mock(DataBroker.class);
- PowerMockito.mockStatic(UlnDatastoreApi.class);
WriteTransaction writeTransaction = mock(WriteTransaction.class);
when(dataProvider.newWriteOnlyTransaction()).thenReturn(writeTransaction);
CheckedFuture<Void, TransactionCommitFailedException> checkedFuture = mock(CheckedFuture.class);
when(writeTransaction.submit()).thenReturn(checkedFuture);
contractManagerListener = new MockFaasContractManagerListener(dataProvider, gbpTenantId, faasTenantId,
- MoreExecutors.directExecutor());
+ MoreExecutors.directExecutor(), mockUlnDatastoreUtil);
}
@SuppressWarnings("unchecked")
public void testOnDataChangeContract() {
// prepare input test data
ArgumentCaptor<SecurityRuleGroups> captor = ArgumentCaptor.forClass(SecurityRuleGroups.class);
- try {
- PowerMockito.doNothing().when(UlnDatastoreApi.class, "submitSecurityGroupsToDs", captor.capture());
- } catch (Exception e) {
- fail("testOnDataChangeContract: Exception = " + e.toString());
- }
+ doNothing().when(mockUlnDatastoreUtil).submitSecurityGroupsToDs(captor.capture());
Uuid expectedFaasSecId = new Uuid("c4511aac-ae43-11e5-bf7f-feff819cdc9f");
contractManagerListener.setExpectedFaasSecId(expectedFaasSecId);