1 package org.opendaylight.openflowplugin.applications.topology.manager;
3 import static org.mockito.Mockito.times;
4 import org.junit.Before;
6 import org.junit.runner.RunWith;
7 import org.mockito.Matchers;
8 import org.mockito.Mock;
9 import org.mockito.Mockito;
10 import org.mockito.runners.MockitoJUnitRunner;
11 import org.opendaylight.controller.md.sal.binding.api.BindingTransactionChain;
12 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
13 import org.opendaylight.controller.md.sal.common.api.data.AsyncTransaction;
14 import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
16 @RunWith(MockitoJUnitRunner.class)
17 public class OperationProcessorTest {
20 OperationProcessor processor;
23 DataBroker dataBroker;
25 BindingTransactionChain transactionChain;
27 TransactionChainListener transactionChainListener;
29 AsyncTransaction asyncTransaction;
35 Mockito.when(dataBroker.createTransactionChain(Matchers.any(OperationProcessor.class)))
36 .thenReturn(transactionChain);
37 processor = new OperationProcessor(dataBroker);
41 public void onTransactionChainFailedTest() {
42 processor.onTransactionChainFailed(transactionChain, asyncTransaction, throwable);
43 Mockito.verify(transactionChain).close();
44 //dataBroker.createTransactionChain is called 2 time
45 // (first time in constructor, second time after old chain has been closed)
46 Mockito.verify(dataBroker, times(2)).createTransactionChain(Matchers.any(OperationProcessor.class));
50 public void closeTest() {
52 Mockito.verify(transactionChain).close();