summaryrefslogtreecommitdiffstats
path: root/v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java
diff options
context:
space:
mode:
authorMarek Gradzki <mgradzki@cisco.com>2016-06-14 10:35:53 +0200
committerMaros Marsalek <mmarsale@cisco.com>2016-06-15 10:32:10 +0000
commit3508bc959e055c76c395e0f878d3c9f138f44114 (patch)
treec8881f6172644808d9f7199dfa198856d77656f7 /v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java
parent0624f45d8cf3656f6805316834eb025acb1f0453 (diff)
HONEYCOMB-91: fix restoring BD from persisted config.
Covers case when bd_id was present in the bdContext Change-Id: I817fc684f175958f772a87ee708fa7f49ceec6f7 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Diffstat (limited to 'v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java')
-rw-r--r--v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java b/v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java
index ff9c0cf9b..ae9b0c29c 100644
--- a/v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java
+++ b/v3po/v3po2vpp/src/test/java/io/fd/honeycomb/v3po/translate/v3po/vpp/BridgeDomainCustomizerTest.java
@@ -43,6 +43,7 @@ import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.naming.context.rev160513.contexts.naming.context.Mappings;
+import org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.naming.context.rev160513.contexts.naming.context.mappings.MappingBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.v3po.rev150105.vpp.bridge.domains.BridgeDomain;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.v3po.rev150105.vpp.bridge.domains.BridgeDomainBuilder;
import org.openvpp.jvpp.VppInvocationException;
@@ -152,8 +153,29 @@ public class BridgeDomainCustomizerTest {
final int bdId = 1;
final String bdName = "bd1";
final BridgeDomain bd = generateBridgeDomain(bdName);
+ // Make bdContext.containsName() return false
doReturn(Optional.absent()).when(mappingContext)
.read(getMappingIid(bdName, "test-instance").firstIdentifierOf(Mappings.class));
+ // Make bdContext.containsIndex() return false
+ doReturn(Optional.absent()).when(mappingContext)
+ .read(getMappingIid(bdName, "test-instance"));
+
+ whenBridgeDomainAddDelThenSuccess();
+
+ customizer.writeCurrentAttributes(BridgeDomainTestUtils.bdIdentifierForName(bdName), bd, ctx);
+
+ verifyBridgeDomainAddOrUpdateWasInvoked(bd, bdId);
+ verify(mappingContext).put(getMappingIid(bdName, "test-instance"), getMapping(bdName, bdId).get());
+ }
+
+ @Test
+ public void testAddBridgeDomainPresentInBdContext() throws Exception {
+ final int bdId = 1;
+ final String bdName = "bd1";
+ final BridgeDomain bd = generateBridgeDomain(bdName);
+ // Make bdContext.containsIndex() return true
+ doReturn(Optional.of(new MappingBuilder().setIndex(bdId).build())).when(mappingContext)
+ .read(getMappingIid(bdName, "test-instance"));
whenBridgeDomainAddDelThenSuccess();
@@ -172,6 +194,9 @@ public class BridgeDomainCustomizerTest {
// Returning no Mappings for "test-instance" makes bdContext.containsName() return false
doReturn(Optional.absent()).when(mappingContext)
.read(getMappingIid(bdName, "test-instance").firstIdentifierOf(Mappings.class));
+ // Make bdContext.containsIndex() return false
+ doReturn(Optional.absent()).when(mappingContext)
+ .read(getMappingIid(bdName, "test-instance"));
whenBridgeDomainAddDelThenFailure();