Bug 5543 - Bo: Update JUnit tests part_1 00/40700/2
authormiroslav.macko <miroslav.macko@pantheon.tech>
Wed, 22 Jun 2016 12:32:10 +0000 (14:32 +0200)
committerMiroslav Macko <miroslav.macko@pantheon.tech>
Fri, 24 Jun 2016 07:41:45 +0000 (07:41 +0000)
- Added tests for topology-manager

Change-Id: Ieb765376ce858a625d41a24a1f74c0cf5345c34b
Signed-off-by: miroslav.macko <miroslav.macko@pantheon.tech>
applications/topology-manager/src/test/java/org/opendaylight/openflowplugin/applications/topology/manager/OperationProcessorTest.java [new file with mode: 0644]

diff --git a/applications/topology-manager/src/test/java/org/opendaylight/openflowplugin/applications/topology/manager/OperationProcessorTest.java b/applications/topology-manager/src/test/java/org/opendaylight/openflowplugin/applications/topology/manager/OperationProcessorTest.java
new file mode 100644 (file)
index 0000000..68a6db2
--- /dev/null
@@ -0,0 +1,56 @@
+package org.opendaylight.openflowplugin.applications.topology.manager;
+
+import static org.mockito.Mockito.times;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Matchers;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.opendaylight.controller.md.sal.binding.api.BindingTransactionChain;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.md.sal.common.api.data.AsyncTransaction;
+import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
+
+@RunWith(MockitoJUnitRunner.class)
+public class OperationProcessorTest {
+
+
+    OperationProcessor processor;
+
+    @Mock
+    DataBroker dataBroker;
+    @Mock
+    BindingTransactionChain transactionChain;
+    @Mock
+    TransactionChainListener transactionChainListener;
+    @Mock
+    AsyncTransaction asyncTransaction;
+    @Mock
+    Throwable throwable;
+
+    @Before
+    public void setUp() {
+        Mockito.when(dataBroker.createTransactionChain(Matchers.any(OperationProcessor.class)))
+                .thenReturn(transactionChain);
+        processor = new OperationProcessor(dataBroker);
+    }
+
+    @Test
+    public void onTransactionChainFailedTest() {
+        processor.onTransactionChainFailed(transactionChain, asyncTransaction, throwable);
+        Mockito.verify(transactionChain).close();
+        //dataBroker.createTransactionChain is called 2 time
+        // (first time in constructor, second time after old chain has been closed)
+        Mockito.verify(dataBroker, times(2)).createTransactionChain(Matchers.any(OperationProcessor.class));
+    }
+
+    @Test
+    public void closeTest() {
+        processor.close();
+        Mockito.verify(transactionChain).close();
+    }
+
+
+}
\ No newline at end of file