Search in sources :

Example 16 with Top

use of org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top in project mdsal by opendaylight.

the class Bug1418AugmentationTest method leafOnlyAugmentationDeletedTest.

@Test
public void leafOnlyAugmentationDeletedTest() {
    WriteTransaction writeTx = getDataBroker().newWriteOnlyTransaction();
    writeTx.put(CONFIGURATION, TOP, top());
    writeTx.put(CONFIGURATION, TOP_FOO, topLevelList(new TopLevelListKey(TOP_FOO_KEY)));
    TreeLeafOnlyUsesAugment leafOnlyUsesAugment = leafOnlyUsesAugment("test leaf");
    writeTx.put(CONFIGURATION, SIMPLE_AUGMENT, leafOnlyUsesAugment);
    assertCommit(writeTx.commit());
    final TestListener<TreeLeafOnlyUsesAugment> listener = createListener(CONFIGURATION, SIMPLE_AUGMENT, added(path(TOP_FOO_KEY, TreeLeafOnlyUsesAugment.class), leafOnlyUsesAugment), deleted(path(TOP_FOO_KEY, TreeLeafOnlyUsesAugment.class), leafOnlyUsesAugment));
    writeTx = getDataBroker().newWriteOnlyTransaction();
    writeTx.delete(CONFIGURATION, SIMPLE_AUGMENT);
    assertCommit(writeTx.commit());
    listener.verify();
}
Also used : WriteTransaction(org.opendaylight.mdsal.binding.api.WriteTransaction) TreeLeafOnlyUsesAugment(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.augment.rev140709.TreeLeafOnlyUsesAugment) TopLevelListKey(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelListKey) AbstractDataTreeChangeListenerTest(org.opendaylight.mdsal.binding.dom.adapter.test.AbstractDataTreeChangeListenerTest) Test(org.junit.Test)

Example 17 with Top

use of org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top in project mdsal by opendaylight.

the class BindingDOMDataTreeCommitCohortRegistryAdapterTest method basicTest.

@Test
public void basicTest() throws Exception {
    final BindingBrokerTestFactory bindingBrokerTestFactory = new BindingBrokerTestFactory();
    bindingBrokerTestFactory.setExecutor(MoreExecutors.newDirectExecutorService());
    final BindingTestContext bindingTestContext = bindingBrokerTestFactory.getTestContext();
    bindingTestContext.start();
    final DOMDataTreeCommitCohortRegistry cohortRegistry = mock(DOMDataTreeCommitCohortRegistry.class);
    final DOMDataTreeCommitCohortRegistration<?> cohortRegistration = mock(DOMDataTreeCommitCohortRegistration.class);
    doReturn(cohortRegistration).when(cohortRegistry).registerCommitCohort(any(), any());
    doNothing().when(cohortRegistration).close();
    final BindingDOMDataTreeCommitCohortRegistryAdapter registryAdapter = new BindingDOMDataTreeCommitCohortRegistryAdapter(bindingTestContext.getCodec(), cohortRegistry);
    final DataTreeIdentifier<Top> dataTreeIdentifier = DataTreeIdentifier.create(LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.create(Top.class));
    final DataTreeCommitCohort<Top> dataTreeCommitCohort = mock(DataTreeCommitCohort.class);
    final ObjectRegistration<?> objectRegistration = registryAdapter.registerCommitCohort(dataTreeIdentifier, dataTreeCommitCohort);
    assertEquals(dataTreeCommitCohort, objectRegistration.getInstance());
    objectRegistration.close();
    verify(cohortRegistration).close();
}
Also used : Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) BindingBrokerTestFactory(org.opendaylight.mdsal.binding.dom.adapter.test.util.BindingBrokerTestFactory) BindingTestContext(org.opendaylight.mdsal.binding.dom.adapter.test.util.BindingTestContext) DOMDataTreeCommitCohortRegistry(org.opendaylight.mdsal.dom.api.DOMDataTreeCommitCohortRegistry) Test(org.junit.Test)

Example 18 with Top

use of org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top in project mdsal by opendaylight.

the class BindingDOMDataTreeChangeServiceAdapterTest method testRegisterDataTreeChangeListener.

@Test
public void testRegisterDataTreeChangeListener() {
    final AdapterContext codec = new ConstantAdapterContext(services);
    final DataTreeChangeService service = new BindingDOMDataTreeChangeServiceAdapter(codec, mockDOMService);
    doReturn(mockDOMReg).when(mockDOMService).registerDataTreeChangeListener(domDataTreeIdentifier(mockYangID), any(DOMDataTreeChangeListener.class));
    final DataTreeIdentifier<Top> treeId = DataTreeIdentifier.create(LogicalDatastoreType.CONFIGURATION, TOP_PATH);
    final TestClusteredDataTreeChangeListener mockClusteredListener = new TestClusteredDataTreeChangeListener();
    service.registerDataTreeChangeListener(treeId, mockClusteredListener);
    verify(mockDOMService).registerDataTreeChangeListener(domDataTreeIdentifier(this.mockYangID), isA(ClusteredDOMDataTreeChangeListener.class));
    reset(mockDOMService);
    doReturn(mockDOMReg).when(mockDOMService).registerDataTreeChangeListener(domDataTreeIdentifier(mockYangID), any(DOMDataTreeChangeListener.class));
    final TestDataTreeChangeListener mockNonClusteredListener = new TestDataTreeChangeListener();
    service.registerDataTreeChangeListener(treeId, mockNonClusteredListener);
    verify(this.mockDOMService).registerDataTreeChangeListener(domDataTreeIdentifier(this.mockYangID), not(isA(ClusteredDOMDataTreeChangeListener.class)));
}
Also used : DataTreeChangeService(org.opendaylight.mdsal.binding.api.DataTreeChangeService) DOMDataTreeChangeService(org.opendaylight.mdsal.dom.api.DOMDataTreeChangeService) Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) DOMDataTreeChangeListener(org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener) ClusteredDOMDataTreeChangeListener(org.opendaylight.mdsal.dom.api.ClusteredDOMDataTreeChangeListener) ClusteredDOMDataTreeChangeListener(org.opendaylight.mdsal.dom.api.ClusteredDOMDataTreeChangeListener) Test(org.junit.Test)

Example 19 with Top

use of org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top in project mdsal by opendaylight.

the class ListInsertionDataChangeListenerTest method mergeTopNodeSubtreeListeners.

@Test
public void mergeTopNodeSubtreeListeners() {
    final TopLevelList topBar = topLevelList(TOP_BAR_KEY);
    final TopLevelList topFoo = topLevelList(TOP_FOO_KEY);
    final TestListener<Top> topListener = createListener(CONFIGURATION, TOP, added(TOP, top(topLevelList(TOP_FOO_KEY))), topSubtreeModified(topFoo, topBar));
    final TestListener<TopLevelList> allListener = createListener(CONFIGURATION, WILDCARDED, added(TOP_FOO, topFoo), added(TOP_BAR, topBar));
    final TestListener<TopLevelList> fooListener = createListener(CONFIGURATION, TOP_FOO, added(TOP_FOO, topFoo));
    final TestListener<TopLevelList> barListener = createListener(CONFIGURATION, TOP_BAR, added(TOP_BAR, topBar));
    ReadWriteTransaction writeTx = getDataBroker().newReadWriteTransaction();
    writeTx.merge(CONFIGURATION, TOP, top(topLevelList(TOP_BAR_KEY)));
    assertCommit(writeTx.commit());
    topListener.verify();
    allListener.verify();
    fooListener.verify();
    barListener.verify();
}
Also used : Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) TopLevelList(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelList) ReadWriteTransaction(org.opendaylight.mdsal.binding.api.ReadWriteTransaction) AbstractDataTreeChangeListenerTest(org.opendaylight.mdsal.binding.dom.adapter.test.AbstractDataTreeChangeListenerTest) Test(org.junit.Test)

Example 20 with Top

use of org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top in project mdsal by opendaylight.

the class ListInsertionDataChangeListenerTest method topSubtreeModified.

private static Function<DataTreeModification<Top>, Boolean> topSubtreeModified(final TopLevelList topFoo, final TopLevelList topBar) {
    return match(ModificationType.SUBTREE_MODIFIED, TOP, (Function<Top, Boolean>) dataBefore -> Objects.equals(top(topFoo), dataBefore), dataAfter -> {
        Set<TopLevelList> expList = new HashSet<>(top(topBar, topFoo).getTopLevelList().values());
        Set<TopLevelList> actualList = dataAfter.getTopLevelList().values().stream().map(list -> new TopLevelListBuilder(list).build()).collect(Collectors.toSet());
        return expList.equals(actualList);
    });
}
Also used : AbstractDataTreeChangeListenerTest(org.opendaylight.mdsal.binding.dom.adapter.test.AbstractDataTreeChangeListenerTest) ImmutableSet(com.google.common.collect.ImmutableSet) ReadWriteTransaction(org.opendaylight.mdsal.binding.api.ReadWriteTransaction) ListsBindingUtils.top(org.opendaylight.mdsal.binding.test.model.util.ListsBindingUtils.top) ListsBindingUtils.topLevelList(org.opendaylight.mdsal.binding.test.model.util.ListsBindingUtils.topLevelList) CONFIGURATION(org.opendaylight.mdsal.common.api.LogicalDatastoreType.CONFIGURATION) WriteTransaction(org.opendaylight.mdsal.binding.api.WriteTransaction) BindingReflections(org.opendaylight.mdsal.binding.spec.reflect.BindingReflections) Set(java.util.Set) Test(org.junit.Test) Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) Function(java.util.function.Function) Collectors(java.util.stream.Collectors) TopLevelListBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelListBuilder) HashSet(java.util.HashSet) Objects(java.util.Objects) YangModuleInfo(org.opendaylight.yangtools.yang.binding.YangModuleInfo) TopLevelList(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelList) InstanceIdentifier(org.opendaylight.yangtools.yang.binding.InstanceIdentifier) DataTreeModification(org.opendaylight.mdsal.binding.api.DataTreeModification) TOP_FOO_KEY(org.opendaylight.mdsal.binding.test.model.util.ListsBindingUtils.TOP_FOO_KEY) TOP_BAR_KEY(org.opendaylight.mdsal.binding.test.model.util.ListsBindingUtils.TOP_BAR_KEY) ModificationType(org.opendaylight.mdsal.binding.api.DataObjectModification.ModificationType) Before(org.junit.Before) TopLevelListBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelListBuilder) Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) TopLevelList(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelList) HashSet(java.util.HashSet)

Aggregations

Test (org.junit.Test)41 Top (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top)27 AbstractDataTreeChangeListenerTest (org.opendaylight.mdsal.binding.dom.adapter.test.AbstractDataTreeChangeListenerTest)11 InstanceIdentifier (org.opendaylight.yangtools.yang.binding.InstanceIdentifier)11 DataObject (org.opendaylight.yangtools.yang.binding.DataObject)10 WriteTransaction (org.opendaylight.controller.md.sal.binding.api.WriteTransaction)9 WriteTransaction (org.opendaylight.mdsal.binding.api.WriteTransaction)9 YangInstanceIdentifier (org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier)9 TopLevelList (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelList)8 ContainerNode (org.opendaylight.yangtools.yang.data.api.schema.ContainerNode)8 NormalizedNode (org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode)8 ReadWriteTransaction (org.opendaylight.mdsal.binding.api.ReadWriteTransaction)7 TopBuilder (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.TopBuilder)7 Top (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.Top)6 TopLevelListKey (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.two.level.list.TopLevelListKey)6 NodeIdentifier (org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier)6 AbstractDataChangeListenerTest (org.opendaylight.controller.md.sal.binding.test.AbstractDataChangeListenerTest)5 TopLevelListKey (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelListKey)5 TopLevelList (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.list.rev140701.two.level.list.TopLevelList)4 AbstractConcurrentDataBrokerTest (org.opendaylight.controller.md.sal.binding.test.AbstractConcurrentDataBrokerTest)3