VOL-3112 Group removal support by Open OLT Adapter
Change-Id: I2a21741faa2631aca5e727f73b42aa04018a2059
diff --git a/internal/pkg/core/openolt_flowmgr_test.go b/internal/pkg/core/openolt_flowmgr_test.go
index 1faa8c0..15e0244 100644
--- a/internal/pkg/core/openolt_flowmgr_test.go
+++ b/internal/pkg/core/openolt_flowmgr_test.go
@@ -1087,17 +1087,20 @@
}
}
-func TestOpenOltFlowMgr_TestMulticastFlow(t *testing.T) {
+func TestOpenOltFlowMgr_TestMulticastFlowAndGroup(t *testing.T) {
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()
//create group
group := newGroup(2, []uint32{1})
- flowMgr.AddGroup(ctx, group)
-
+ err := flowMgr.AddGroup(ctx, group)
+ if err != nil {
+ t.Error("group-add failed", err)
+ return
+ }
//create multicast flow
multicastFlowArgs := &fu.FlowArgs{
MatchFields: []*ofp.OfpOxmOfbField{
- fu.InPort(65536),
+ fu.InPort(1048576),
fu.VlanVid(660), //vlan
fu.Metadata_ofp(uint64(66)), //inner vlan
fu.EthType(0x800), //ipv4
@@ -1108,10 +1111,31 @@
},
}
ofpStats, _ := fu.MkFlowStat(multicastFlowArgs)
- flowMgr.AddFlow(ctx, ofpStats, &voltha.FlowMetadata{})
+ fmt.Println(ofpStats.Id)
+ err = flowMgr.AddFlow(ctx, ofpStats, &voltha.FlowMetadata{})
+ if err != nil {
+ t.Error("Multicast flow-add failed", err)
+ return
+ }
//add bucket to the group
group = newGroup(2, []uint32{1, 2})
+ err = flowMgr.ModifyGroup(ctx, group)
+ if err != nil {
+ t.Error("modify-group failed", err)
+ return
+ }
+ //remove the multicast flow
+ err = flowMgr.RemoveFlow(ctx, ofpStats)
+ if err != nil {
+ t.Error("Multicast flow-remove failed", err)
+ return
+ }
- flowMgr.ModifyGroup(ctx, group)
+ //remove the group
+ err = flowMgr.DeleteGroup(ctx, group)
+ if err != nil {
+ t.Error("delete-group failed", err)
+ return
+ }
}