Search in sources :

Example 1 with Top1Builder

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

the class NormalizedNodeSerializeDeserializeTest method equalsWithAugment.

@Test
public void equalsWithAugment() {
    final ContainerNode topNormalizedWithAugments = getNormalizedTopWithAugments(augmentationBuilder().withNodeIdentifier(new AugmentationIdentifier(singleton(AGUMENT_STRING_Q))).withChild(ImmutableNodes.leafNode(AGUMENT_STRING_Q, AUGMENT_STRING_VALUE)).build());
    final ContainerNode topNormalized = getEmptyTop();
    final Entry<InstanceIdentifier<?>, DataObject> entry = codecContext.fromNormalizedNode(BI_TOP_PATH, topNormalized);
    final Entry<InstanceIdentifier<?>, DataObject> entryWithAugments = codecContext.fromNormalizedNode(BI_TOP_PATH, topNormalizedWithAugments);
    // Equals on other with no augmentation should be false
    assertNotEquals(top(), entryWithAugments.getValue());
    // Equals on other(reversed) with no augmentation should be false
    assertNotEquals(entryWithAugments.getValue(), top());
    // Equals on other(lazy) with no augmentation should be false
    assertNotEquals(entry.getValue(), entryWithAugments.getValue());
    // Equals on other(lazy, reversed) with no augmentation should be false
    assertNotEquals(entryWithAugments.getValue(), entry.getValue());
    final Top topWithAugments = topWithAugments(Map.of(Top1.class, new Top1Builder().setAugmentedString(AUGMENT_STRING_VALUE).build()));
    // Equals other with same augment should be true
    assertEquals(topWithAugments, entryWithAugments.getValue());
    // Equals other with same augment should be true
    assertEquals(entryWithAugments.getValue(), topWithAugments);
    // Equals on self should be true
    assertEquals(entryWithAugments.getValue(), entryWithAugments.getValue());
    final Top topWithAugmentsDiffValue = topWithAugments(Map.of(Top1.class, new Top1Builder().setAugmentedString("differentValue").build()));
    assertNotEquals(topWithAugmentsDiffValue, entryWithAugments.getValue());
    assertNotEquals(entryWithAugments.getValue(), topWithAugmentsDiffValue);
}
Also used : AugmentationIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier) DataObject(org.opendaylight.yangtools.yang.binding.DataObject) Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) Top1Builder(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1Builder) YangInstanceIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier) InstanceIdentifier(org.opendaylight.yangtools.yang.binding.InstanceIdentifier) ContainerNode(org.opendaylight.yangtools.yang.data.api.schema.ContainerNode) Top1(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1) Test(org.junit.Test)

Example 2 with Top1Builder

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

the class NormalizedNodeSerializeDeserializeTest method equalsWithMultipleAugments.

@Test
public void equalsWithMultipleAugments() {
    final ContainerNode topNormalizedWithAugments = getNormalizedTopWithAugments(augmentationBuilder().withNodeIdentifier(new AugmentationIdentifier(singleton(AGUMENT_STRING_Q))).withChild(ImmutableNodes.leafNode(AGUMENT_STRING_Q, AUGMENT_STRING_VALUE)).build(), augmentationBuilder().withNodeIdentifier(new AugmentationIdentifier(singleton(AUGMENT_INT_Q))).withChild(ImmutableNodes.leafNode(AUGMENT_INT_Q, AUGMENT_INT_VALUE)).build());
    final Entry<InstanceIdentifier<?>, DataObject> entryWithAugments = codecContext.fromNormalizedNode(BI_TOP_PATH, topNormalizedWithAugments);
    Top topWithAugments = topWithAugments(Map.of(Top1.class, new Top1Builder().setAugmentedString(AUGMENT_STRING_VALUE).build(), Top2.class, new Top2Builder().setAugmentedInt(AUGMENT_INT_VALUE).build()));
    assertEquals(topWithAugments, entryWithAugments.getValue());
    assertEquals(entryWithAugments.getValue(), topWithAugments);
    topWithAugments = topWithAugments(Map.of(Top1.class, new Top1Builder().setAugmentedString(AUGMENT_STRING_VALUE).build(), Top2.class, new Top2Builder().setAugmentedInt(999).build()));
    assertNotEquals(topWithAugments, entryWithAugments.getValue());
    assertNotEquals(entryWithAugments.getValue(), topWithAugments);
}
Also used : AugmentationIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier) DataObject(org.opendaylight.yangtools.yang.binding.DataObject) Top(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top) Top2Builder(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top2Builder) Top1Builder(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1Builder) YangInstanceIdentifier(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier) InstanceIdentifier(org.opendaylight.yangtools.yang.binding.InstanceIdentifier) ContainerNode(org.opendaylight.yangtools.yang.data.api.schema.ContainerNode) Top2(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top2) Top1(org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)2 Top (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top)2 Top1 (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1)2 Top1Builder (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top1Builder)2 DataObject (org.opendaylight.yangtools.yang.binding.DataObject)2 InstanceIdentifier (org.opendaylight.yangtools.yang.binding.InstanceIdentifier)2 YangInstanceIdentifier (org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier)2 AugmentationIdentifier (org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier)2 ContainerNode (org.opendaylight.yangtools.yang.data.api.schema.ContainerNode)2 Top2 (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top2)1 Top2Builder (org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.mdsal.test.binding.rev140701.Top2Builder)1