import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-
import java.math.BigInteger;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
import org.junit.Ignore;
import org.junit.Test;
import org.mockito.Matchers;
+import org.mockito.Mock;
import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
import org.opendaylight.openflowjava.protocol.api.connection.ConnectionAdapter;
import org.opendaylight.openflowplugin.api.openflow.connection.ConnectionContext;
import org.opendaylight.openflowplugin.api.openflow.rpc.RpcContext;
+import org.opendaylight.openflowplugin.api.openflow.statistics.ofpspecific.MessageSpy;
import org.opendaylight.openflowplugin.impl.rpc.RpcContextImpl;
import org.opendaylight.openflowplugin.impl.rpc.RpcManagerImpl;
import org.opendaylight.openflowplugin.impl.services.SalFlowServiceImpl;
final RpcContext mockedRpcContext = mock(RpcContext.class);
final AddFlowInput mockedFlowInput = prepareTestingAddFlow();
final DeviceContext mockedDeviceContext = mock(DeviceContext.class);
+ @Mock
+ private MessageSpy messageSpy;
@Ignore
@Test
final Xid mockedXid = mock(Xid.class);
final Long dummyXid = 1l;
when(mockedXid.getValue()).thenReturn(dummyXid);
- when(mockedDeviceContext.getNextXid()).thenReturn(mockedXid);
+ when(mockedDeviceContext.getReservedXid()).thenReturn(dummyXid);
invokeRpcTestExistsCapacity(10, true);
invokeRpcTestExistsCapacity(0, false);
// TODO: how to invoke service remotely?
NodeId nodeId = new NodeId("openflow:1");
KeyedInstanceIdentifier<Node, NodeKey> nodeInstanceIdentifier = InstanceIdentifier.create(Nodes.class).child(Node.class, new NodeKey(nodeId));
- final RpcContextImpl rpcContext = new RpcContextImpl(mockedProviderContext, nodeInstanceIdentifier);
+ final RpcContextImpl rpcContext = new RpcContextImpl(messageSpy, mockedProviderContext, nodeInstanceIdentifier, capacity);
when(mockedProviderContext.getRpcService(SalFlowService.class)).thenReturn(new SalFlowServiceImpl(rpcContext, mockedDeviceContext));
- rpcContext.setRequestContextQuota(capacity);
final SalFlowService salFlowService = mockedProviderContext.getRpcService(SalFlowService.class);
final Future<RpcResult<AddFlowOutput>> addedFlow = salFlowService.addFlow(prepareTestingAddFlow());
/**
* @return
*/
- private AddFlowInput prepareTestingAddFlow() {
+ private static AddFlowInput prepareTestingAddFlow() {
final AddFlowInputBuilder builder = new AddFlowInputBuilder();
builder.setFlowName("dummy flow");
builder.setHardTimeout(10000);