Use java.lang.ref.Cleaner for ClientBackedTransaction
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / databroker / ClientBackedTransactionTest.java
index bff76b3f5edd7dda6dd06b3afc8d91b94a7d1d3e..be140eb625dfe02ec681c851bcb1ba2f420a60ba 100644 (file)
@@ -7,8 +7,10 @@
  */
 package org.opendaylight.controller.cluster.databroker;
 
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+
 import org.junit.Test;
-import org.mockito.Mockito;
 import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier;
 import org.opendaylight.controller.cluster.access.concepts.FrontendIdentifier;
 import org.opendaylight.controller.cluster.access.concepts.FrontendType;
@@ -25,12 +27,13 @@ public abstract class ClientBackedTransactionTest<T extends ClientBackedTransact
     private static LocalHistoryIdentifier HISTORY_ID = new LocalHistoryIdentifier(CLIENT_ID, 0);
     protected static final TransactionIdentifier TRANSACTION_ID = new TransactionIdentifier(HISTORY_ID, 0);
 
-    abstract T object() throws Exception;
+    abstract T object();
 
     @Test
-    public void testClose() throws Exception {
+    public void testClose() {
         final AbstractClientHandle<?> delegate = object().delegate();
         object().close();
-        Mockito.verify(delegate).abort();
+        // Called twice because of immediate cleaning
+        verify(delegate, times(2)).abort();
     }
 }
\ No newline at end of file