import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyBoolean;
-import static org.mockito.Matchers.eq;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyBoolean;
+import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import java.util.List;
import java.util.Map;
import java.util.Optional;
-import java.util.concurrent.ExecutionException;
import java.util.function.Consumer;
import org.junit.Before;
import org.junit.Test;
import org.opendaylight.yangtools.yang.model.api.SchemaContext;
public class ShardDataTreeTest extends AbstractTest {
+ private static final DatastoreContext DATASTORE_CONTEXT = DatastoreContext.newBuilder().build();
private final Shard mockShard = Mockito.mock(Shard.class);
private ShardDataTree shardDataTree;
@Before
public void setUp() {
doReturn(Ticker.systemTicker()).when(mockShard).ticker();
- doReturn(Mockito.mock(ShardStats.class)).when(mockShard).getShardMBean();
+ doReturn(mock(ShardStats.class)).when(mockShard).getShardMBean();
+ doReturn(DATASTORE_CONTEXT).when(mockShard).getDatastoreContext();
fullSchema = SchemaContextHelper.full();
}
@Test
- public void testWrite() throws ExecutionException, InterruptedException {
+ public void testWrite() {
modify(false, true, true);
}
@Test
- public void testMerge() throws ExecutionException, InterruptedException {
+ public void testMerge() {
modify(true, true, true);
}
- private void modify(final boolean merge, final boolean expectedCarsPresent, final boolean expectedPeoplePresent)
- throws ExecutionException, InterruptedException {
+ private void modify(final boolean merge, final boolean expectedCarsPresent, final boolean expectedPeoplePresent) {
immediatePayloadReplication(shardDataTree, mockShard);
assertEquals(fullSchema, shardDataTree.getSchemaContext());
}
@Test
- public void bug4359AddRemoveCarOnce() throws ExecutionException, InterruptedException {
+ public void bug4359AddRemoveCarOnce() {
immediatePayloadReplication(shardDataTree, mockShard);
final List<DataTreeCandidate> candidates = new ArrayList<>();
}
@Test
- public void bug4359AddRemoveCarTwice() throws ExecutionException, InterruptedException {
+ public void bug4359AddRemoveCarTwice() {
immediatePayloadReplication(shardDataTree, mockShard);
final List<DataTreeCandidate> candidates = new ArrayList<>();
final DataTreeSnapshot snapshot =
shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
- assertEquals("Car node present", true, optional.isPresent());
+ assertTrue("Car node present", optional.isPresent());
assertEquals("Car node", carNode, optional.get());
optional = snapshot.readNode(PeopleModel.BASE_PATH);
- assertEquals("People node present", true, optional.isPresent());
+ assertTrue("People node present", optional.isPresent());
assertEquals("People node", peopleNode, optional.get());
}
final DataTreeSnapshot snapshot =
shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
- assertEquals("Car node present", true, optional.isPresent());
+ assertTrue("Car node present", optional.isPresent());
assertEquals("Car node", carNode, optional.get());
}
@Test
- public void testPipelinedTransactionsWithImmediateReplication() throws Exception {
+ public void testPipelinedTransactionsWithImmediateReplication() {
immediatePayloadReplication(shardDataTree, mockShard);
final ShardDataTreeCohort cohort1 = newShardDataTreeCohort(snapshot ->
inOrder.verify(commitCallback2).onSuccess(any(UnsignedLong.class));
inOrder.verify(commitCallback3).onSuccess(any(UnsignedLong.class));
- final DataTreeSnapshot snapshot =
- shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
+ final DataTreeSnapshot snapshot = shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(CarsModel.BASE_PATH);
- assertEquals("Car node present", true, optional.isPresent());
+ assertTrue("Car node present", optional.isPresent());
}
@SuppressWarnings("unchecked")
final DataTreeSnapshot snapshot =
shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
- assertEquals("Car node present", true, optional.isPresent());
+ assertTrue("Car node present", optional.isPresent());
assertEquals("Car node", carNode, optional.get());
}
@SuppressWarnings("unchecked")
@Test
- public void testAbortWithFailedRebase() throws Exception {
+ public void testAbortWithFailedRebase() {
immediatePayloadReplication(shardDataTree, mockShard);
final ShardDataTreeCohort cohort1 = newShardDataTreeCohort(snapshot ->
final DataTreeSnapshot snapshot =
shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(PeopleModel.BASE_PATH);
- assertEquals("People node present", true, optional.isPresent());
+ assertTrue("People node present", optional.isPresent());
assertEquals("People node", peopleNode, optional.get());
}
final Optional<NormalizedNode<?, ?>> optional = snapshot1.readNode(CarsModel.BASE_PATH);
- assertEquals(true, optional.isPresent());
+ assertTrue(optional.isPresent());
return optional.get();
}
- private static DataTreeCandidate addCar(final ShardDataTree shardDataTree)
- throws ExecutionException, InterruptedException {
+ private static DataTreeCandidate addCar(final ShardDataTree shardDataTree) {
return addCar(shardDataTree, "altima");
}
- private static DataTreeCandidate addCar(final ShardDataTree shardDataTree, final String name)
- throws ExecutionException, InterruptedException {
+ private static DataTreeCandidate addCar(final ShardDataTree shardDataTree, final String name) {
return doTransaction(shardDataTree, snapshot -> {
snapshot.merge(CarsModel.BASE_PATH, CarsModel.emptyContainer());
snapshot.merge(CarsModel.CAR_LIST_PATH, CarsModel.newCarMapNode());
});
}
- private static DataTreeCandidate removeCar(final ShardDataTree shardDataTree)
- throws ExecutionException, InterruptedException {
+ private static DataTreeCandidate removeCar(final ShardDataTree shardDataTree) {
return doTransaction(shardDataTree, snapshot -> snapshot.delete(CarsModel.newCarPath("altima")));
}
}
private static DataTreeCandidate doTransaction(final ShardDataTree shardDataTree,
- final DataTreeOperation operation) throws ExecutionException, InterruptedException {
+ final DataTreeOperation operation) {
final ReadWriteShardDataTreeTransaction transaction =
shardDataTree.newReadWriteTransaction(nextTransactionId());
final DataTreeModification snapshot = transaction.getSnapshot();
}
private static DataTreeCandidate applyCandidates(final ShardDataTree shardDataTree,
- final List<DataTreeCandidate> candidates) throws ExecutionException, InterruptedException {
+ final List<DataTreeCandidate> candidates) {
final ReadWriteShardDataTreeTransaction transaction =
shardDataTree.newReadWriteTransaction(nextTransactionId());
final DataTreeModification snapshot = transaction.getSnapshot();