Esempio n. 1
0
    def _mod_group_l3_unicast(self, msg):
        re_id = msg["re_id"]
        cmd = msg["cmd"]
        for arg in msg["args"]:
            grp = pb.L3UnicastGroup(ne_id=arg["ne_id"],
                                    port_id=arg["port"],
                                    vlan_vid=arg["vlan"],
                                    eth_dst=arg["eth_dst"],
                                    eth_src=arg["eth_src"])
            mod = pb.GroupMod(cmd=cmd, g_type="L3_UNICAST", re_id=re_id, l3_unicast=grp)
            evt = fibcevt.EventFIBCGroupMod(mod)

            self.app.send_event_to_observers(evt)
Esempio n. 2
0
    def test_l3_unicast(self):
        group = pb.L3UnicastGroup(
            ne_id=1010,
            port_id=1,
            vlan_vid=_VID,
            eth_dst=_ETH_DST_MAC,
            eth_src=_ETH_SRC_MAC,
        )
        mod = pb.GroupMod(re_id=_RE_ID, g_type="L3_UNICAST", l3_unicast=group)

        p = fibcdbm.FIBCPortEntry.new(name=_IFNAME,
                                      port=2,
                                      dp_id=_DP_ID,
                                      re_id=_RE_ID)
        portmap = Mock(spec=fibcdbm.FIBCDbPortMapTable)
        portmap.find_by_vm.return_value = p
        portmap.lower_port.return_value = p

        # exec
        fibccnv.conv_group(mod, portmap)
        # check
        self.assertEqual(mod.l3_unicast.port_id, 2)
        portmap.find_by_vm.assert_called_once_with(re_id=_RE_ID, port_id=1)
        portmap.lower_port.assert_called_once_with(p)