Execute the ShardedDOMDataTreeTransaction.submit() async.
[mdsal.git] / dom / mdsal-dom-broker / src / test / java / org / opendaylight / mdsal / dom / broker / ShardedDOMDataTreeProducerMultiShardTest.java
index 444e0771e7886c075fadce8a566e89b3cb2060e7..83996f6cf1188e90376f98d087d7f3f6c1c16302 100644 (file)
@@ -106,7 +106,7 @@ public class ShardedDOMDataTreeProducerMultiShardTest {
     public void setUp() throws Exception {
         MockitoAnnotations.initMocks(this);
 
-        rootShard = InMemoryDOMDataTreeShard.create(ROOT_ID, executor, 1, 1);
+        rootShard = InMemoryDOMDataTreeShard.create(ROOT_ID, executor, 1);
         rootShard.onGlobalContextUpdated(schemaContext);
 
         final ShardedDOMDataTree dataTree = new ShardedDOMDataTree();
@@ -179,7 +179,7 @@ public class ShardedDOMDataTreeProducerMultiShardTest {
         transaction.ready();
         transaction.submit();
 
-        verify(mockedDataTreeListener, timeout(1000)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
+        verify(mockedDataTreeListener, timeout(1000).times(2)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
         final Collection<DataTreeCandidate> capturedValue = captorForChanges.getValue();
         assertTrue(capturedValue.size() == 1);
 
@@ -199,7 +199,7 @@ public class ShardedDOMDataTreeProducerMultiShardTest {
         final DOMDataTreeShardWriteTransaction transaction = producer.createTransaction();
         writeCrossShardContainer(transaction);
 
-        verify(mockedDataTreeListener, timeout(1000)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
+        verify(mockedDataTreeListener, timeout(1000).times(2)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
         final Collection<DataTreeCandidate> capturedValue = captorForChanges.getValue();
         assertTrue(capturedValue.size() == 1);
 
@@ -219,7 +219,7 @@ public class ShardedDOMDataTreeProducerMultiShardTest {
         final DOMDataTreeListener mockedDataTreeListener = Mockito.mock(DOMDataTreeListener.class);
         doNothing().when(mockedDataTreeListener).onDataTreeChanged(anyCollection(), anyMap());
 
-        final InMemoryDOMDataTreeShard innerShard = InMemoryDOMDataTreeShard.create(INNER_CONTAINER_ID, executor, 1, 1);
+        final InMemoryDOMDataTreeShard innerShard = InMemoryDOMDataTreeShard.create(INNER_CONTAINER_ID, executor, 1);
         innerShard.onGlobalContextUpdated(schemaContext);
         final DOMDataTreeProducer shardRegProducer = dataTreeService.createProducer(Collections.singletonList(INNER_CONTAINER_ID));
         innerShardReg = dataTreeService.registerDataTreeShard(INNER_CONTAINER_ID, innerShard, shardRegProducer);
@@ -236,19 +236,19 @@ public class ShardedDOMDataTreeProducerMultiShardTest {
                 .build();
 
         //verify listeners have been notified
-        verify(mockedDataTreeListener, timeout(1000).times(2)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
+        verify(mockedDataTreeListener, timeout(1000).times(4)).onDataTreeChanged(captorForChanges.capture(), captorForSubtrees.capture());
         final List<Collection<DataTreeCandidate>> capturedChanges = captorForChanges.getAllValues();
         final List<Map<DOMDataTreeIdentifier, NormalizedNode<?, ?>>> capturedSubtrees = captorForSubtrees.getAllValues();
-        final DataTreeCandidate firstNotificationCandidate = capturedChanges.get(0).iterator().next();
+        final DataTreeCandidate firstNotificationCandidate = capturedChanges.get(2).iterator().next();
 
-        assertTrue(capturedSubtrees.get(0).size() == 1);
+        assertTrue(capturedSubtrees.get(2).size() == 1);
         assertEquals(testContainerVerificationNode, firstNotificationCandidate.getRootNode().getDataAfter().get());
-        assertEquals(testContainerVerificationNode, capturedSubtrees.get(0).get(TEST_ID));
+        assertEquals(testContainerVerificationNode, capturedSubtrees.get(2).get(TEST_ID));
 
-        final DataTreeCandidate secondNotificationCandidate = capturedChanges.get(1).iterator().next();
-        assertTrue(capturedSubtrees.get(1).size() == 1);
+        final DataTreeCandidate secondNotificationCandidate = capturedChanges.get(3).iterator().next();
+        assertTrue(capturedSubtrees.get(3).size() == 1);
         assertEquals(crossShardContainer, secondNotificationCandidate.getRootNode().getDataAfter().get());
-        assertEquals(crossShardContainer, capturedSubtrees.get(1).get(TEST_ID));
+        assertEquals(crossShardContainer, capturedSubtrees.get(3).get(TEST_ID));
 
         verifyNoMoreInteractions(mockedDataTreeListener);
     }