X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Ftemplate_bd.py;h=bebe76d765ddc74906145340b5c1291af6048bc9;hb=2699fe2ba8fcad06ce04715049e9a55587f02f1f;hp=291f4684db9b332697f712ca93e8105aa49f5f79;hpb=cef1e2a8b49306fc1347d97b6d74255923292edf;p=vpp.git diff --git a/test/template_bd.py b/test/template_bd.py index 291f4684db9..bebe76d765d 100644 --- a/test/template_bd.py +++ b/test/template_bd.py @@ -1,16 +1,14 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 -from abc import abstractmethod, ABCMeta +import abc -from scapy.layers.l2 import Ether, Raw +from scapy.layers.l2 import Ether +from scapy.packet import Raw from scapy.layers.inet import IP, UDP -from util import ip4_range - -class BridgeDomain(object): +class BridgeDomain(metaclass=abc.ABCMeta): """ Bridge domain abstraction """ - __metaclass__ = ABCMeta @property def frame_request(self): @@ -28,27 +26,27 @@ class BridgeDomain(object): UDP(sport=20000, dport=10000) / Raw('\xa5' * 100)) - @abstractmethod + @abc.abstractmethod def ip_range(self, start, end): """ range of remote ip's """ pass - @abstractmethod + @abc.abstractmethod def encap_mcast(self, pkt, src_ip, src_mac, vni): """ Encapsulate mcast packet """ pass - @abstractmethod + @abc.abstractmethod def encapsulate(self, pkt, vni): """ Encapsulate packet """ pass - @abstractmethod + @abc.abstractmethod def decapsulate(self, pkt): """ Decapsulate packet """ pass - @abstractmethod + @abc.abstractmethod def check_encapsulation(self, pkt, vni, local_only=False): """ Verify the encapsulation """ pass @@ -72,7 +70,7 @@ class BridgeDomain(object): """ encapsulated_pkt = self.encapsulate(self.frame_request, - self.single_tunnel_bd) + self.single_tunnel_vni) self.pg0.add_stream([encapsulated_pkt, ]) @@ -97,10 +95,10 @@ class BridgeDomain(object): self.pg_start() - # Pick first received frame and check if it's corectly encapsulated. + # Pick first received frame and check if it's correctly encapsulated. out = self.pg0.get_capture(1) pkt = out[0] - self.check_encapsulation(pkt, self.single_tunnel_bd) + self.check_encapsulation(pkt, self.single_tunnel_vni) payload = self.decapsulate(pkt) self.assert_eq_pkts(payload, self.frame_reply) @@ -116,7 +114,7 @@ class BridgeDomain(object): self.pg_start() - # Get packet from each tunnel and assert it's corectly encapsulated. + # Get packet from each tunnel and assert it's correctly encapsulated. out = self.pg0.get_capture(self.n_ucast_tunnels) for pkt in out: self.check_encapsulation(pkt, self.ucast_flood_bd, True) @@ -134,7 +132,7 @@ class BridgeDomain(object): self.pg_start() - # Pick first received frame and check if it's corectly encapsulated. + # Pick first received frame and check if it's correctly encapsulated. out = self.pg0.get_capture(1) pkt = out[0] self.check_encapsulation(pkt, self.mcast_flood_bd,