[VOL-3016] Removing group entirely due to last bucket getting removed
Change-Id: Ic6a3aac80e53b580a4e2666d70c2e438bd151ffa
diff --git a/app/src/test/java/org/opencord/cordmcast/impl/McastTest.java b/app/src/test/java/org/opencord/cordmcast/impl/McastTest.java
index 9e64dca..84eb986 100644
--- a/app/src/test/java/org/opencord/cordmcast/impl/McastTest.java
+++ b/app/src/test/java/org/opencord/cordmcast/impl/McastTest.java
@@ -346,19 +346,9 @@
McastEvent event = new McastEvent(McastEvent.Type.SINKS_REMOVED, previousSubject, currentSubject);
cordMcast.listener.event(event);
- // Operation will be REMOVE_FROM_EXISTING and nextMap will be updated. None --> { }
+ // Operation will be REMOVE and nextMap will be updated. None --> { }
assertAfter(WAIT_TIMEOUT, WAIT_TIMEOUT * 2, () ->
- assertTrue(nextMap.get(DEVICE_ID_OF_A).op() == Objective.Operation.REMOVE_FROM_EXISTING));
-
- // Output port number will be changed to 24 i.e. PORT_C
- Collection<TrafficTreatment> traffictreatMentCollection = nextMap.get(DEVICE_ID_OF_A).next();
- assertTrue(1 == traffictreatMentCollection.size());
- OutputInstruction output = null;
- for (TrafficTreatment trafficTreatment : traffictreatMentCollection) {
- output = outputPort(trafficTreatment);
- }
- assertNotNull(output);
- assertTrue(PORT_C == output.port());
+ assertTrue(nextMap.get(DEVICE_ID_OF_A).op() == Objective.Operation.REMOVE));
}
@Test
diff --git a/app/src/test/java/org/opencord/cordmcast/impl/McastTestBase.java b/app/src/test/java/org/opencord/cordmcast/impl/McastTestBase.java
index 4ae2825..9271976 100644
--- a/app/src/test/java/org/opencord/cordmcast/impl/McastTestBase.java
+++ b/app/src/test/java/org/opencord/cordmcast/impl/McastTestBase.java
@@ -131,6 +131,9 @@
public void forward(DeviceId deviceId, ForwardingObjective forwardingObjective) {
synchronized (forwardMap) {
forwardMap.put(deviceId, forwardingObjective);
+ forwardingObjective.context().ifPresent(context -> {
+ context.onSuccess(forwardingObjective);
+ });
forwardMap.notify();
}
}