X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-dom-it%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Ftest%2Fconnect%2Fdom%2FBrokerIntegrationTest.java;h=2d7f44d3a3221b4693f2b717b4eb0f984f48c9d6;hp=48027114d75997b4e99a85d7fc655b668393e3d8;hb=4f82c49691f091f0ba6b09a07525edb246f17321;hpb=e3998d55e33da9f6ecb69da75ecc71a047b6362b diff --git a/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/BrokerIntegrationTest.java b/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/BrokerIntegrationTest.java index 48027114d7..2d7f44d3a3 100644 --- a/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/BrokerIntegrationTest.java +++ b/opendaylight/md-sal/sal-binding-dom-it/src/test/java/org/opendaylight/controller/sal/binding/test/connect/dom/BrokerIntegrationTest.java @@ -8,27 +8,22 @@ package org.opendaylight.controller.sal.binding.test.connect.dom; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; - -import java.util.concurrent.Future; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import com.google.common.base.Optional; +import java.util.concurrent.TimeUnit; import org.junit.Test; -import org.opendaylight.controller.md.sal.common.api.TransactionStatus; -import org.opendaylight.controller.sal.binding.api.data.DataModificationTransaction; +import org.opendaylight.controller.md.sal.binding.api.DataBroker; +import org.opendaylight.controller.md.sal.binding.api.WriteTransaction; +import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.controller.sal.binding.test.AbstractDataServiceTest; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.Top; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelList; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelListBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelListKey; -import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.opendaylight.yangtools.yang.common.RpcResult; -/** - * FIXME: Migrate to use new Data Broker APIs - */ -@SuppressWarnings("deprecation") public class BrokerIntegrationTest extends AbstractDataServiceTest { private static final TopLevelListKey TLL_FOO_KEY = new TopLevelListKey("foo"); @@ -42,69 +37,47 @@ public class BrokerIntegrationTest extends AbstractDataServiceTest { @Test public void simpleModifyOperation() throws Exception { - DataObject tllFoo = baDataService.readConfigurationData(FOO_PATH); - assertNull(tllFoo); - TopLevelList tllFooData = createTll(TLL_FOO_KEY); + DataBroker dataBroker = testContext.getDataBroker(); + Optional tllFoo = dataBroker.newReadOnlyTransaction().read( + LogicalDatastoreType.CONFIGURATION, FOO_PATH).checkedGet(5, TimeUnit.SECONDS); + assertFalse(tllFoo.isPresent()); - DataModificationTransaction transaction = baDataService.beginTransaction(); - transaction.putConfigurationData(FOO_PATH, tllFooData); - Future> commitResult = transaction.commit(); - assertNotNull(commitResult); - - RpcResult result = commitResult.get(); + TopLevelList tllFooData = createTll(TLL_FOO_KEY); - assertNotNull(result); - assertNotNull(result.getResult()); - assertEquals(TransactionStatus.COMMITED, result.getResult()); + final WriteTransaction transaction = dataBroker.newWriteOnlyTransaction(); + transaction.put(LogicalDatastoreType.CONFIGURATION, FOO_PATH, tllFooData); + transaction.submit().get(5, TimeUnit.SECONDS); - TopLevelList readedData = (TopLevelList) baDataService.readConfigurationData(FOO_PATH); - assertNotNull(readedData); - assertEquals(tllFooData.getKey(), readedData.getKey()); + Optional readedData = dataBroker.newReadOnlyTransaction().read( + LogicalDatastoreType.CONFIGURATION, FOO_PATH).checkedGet(5, TimeUnit.SECONDS); + assertTrue(readedData.isPresent()); + assertEquals(tllFooData.getKey(), readedData.get().getKey()); TopLevelList nodeBarData = createTll(TLL_BAR_KEY); TopLevelList nodeBazData = createTll(TLL_BAZ_KEY); - DataModificationTransaction insertMoreTr = baDataService.beginTransaction(); - insertMoreTr.putConfigurationData(BAR_PATH, nodeBarData); - insertMoreTr.putConfigurationData(BAZ_PATH, nodeBazData); - RpcResult result2 = insertMoreTr.commit().get(); - - assertNotNull(result2); - assertNotNull(result2.getResult()); - assertEquals(TransactionStatus.COMMITED, result.getResult()); - - Top top = (Top) baDataService.readConfigurationData(TOP_PATH); - assertNotNull(top); - assertNotNull(top.getTopLevelList()); - assertEquals(3, top.getTopLevelList().size()); - - /** - * We create transaction no 2 - * - */ - DataModificationTransaction removalTransaction = baDataService.beginTransaction(); - assertNotNull(transaction); - - /** - * We remove node 1 - * - */ - removalTransaction.removeConfigurationData(BAR_PATH); - - /** - * We commit transaction - */ - Future> commitResult2 = removalTransaction.commit(); - assertNotNull(commitResult2); - - RpcResult result3 = commitResult2.get(); - - assertNotNull(result3); - assertNotNull(result3.getResult()); - assertEquals(TransactionStatus.COMMITED, result2.getResult()); - - DataObject readedData2 = baDataService.readConfigurationData(BAR_PATH); - assertNull(readedData2); + final WriteTransaction insertMoreTr = dataBroker.newWriteOnlyTransaction(); + insertMoreTr.put(LogicalDatastoreType.CONFIGURATION, BAR_PATH, nodeBarData); + insertMoreTr.put(LogicalDatastoreType.CONFIGURATION, BAZ_PATH, nodeBazData); + insertMoreTr.submit().get(5, TimeUnit.SECONDS); + + Optional top = dataBroker.newReadOnlyTransaction().read(LogicalDatastoreType.CONFIGURATION, TOP_PATH) + .checkedGet(5, TimeUnit.SECONDS); + assertTrue(top.isPresent()); + assertEquals(3, top.get().getTopLevelList().size()); + + // We create transaction no 2 + final WriteTransaction removalTransaction = dataBroker.newWriteOnlyTransaction(); + + // We remove node 1 + removalTransaction.delete(LogicalDatastoreType.CONFIGURATION, BAR_PATH); + + // We commit transaction + removalTransaction.submit().get(5, TimeUnit.SECONDS); + + Optional readedData2 = dataBroker.newReadOnlyTransaction().read( + LogicalDatastoreType.CONFIGURATION, BAR_PATH).checkedGet(5, TimeUnit.SECONDS); + assertFalse(readedData2.isPresent()); } private static TopLevelList createTll(final TopLevelListKey key) {