1
|
|
|
"""Test FlowStatsRequest message.""" |
2
|
|
|
from pyof.v0x01.common.flow_match import Match |
3
|
|
|
from pyof.v0x01.controller2switch.common import FlowStatsRequest, StatsType |
4
|
|
|
from pyof.v0x01.controller2switch.stats_request import StatsRequest |
5
|
|
|
from tests.unit.test_struct import TestStruct |
6
|
|
|
|
7
|
|
|
|
8
|
|
|
class TestFlowStatsRequest(TestStruct): |
9
|
|
|
"""Test class for TestFlowStatsRequest.""" |
10
|
|
|
|
11
|
|
|
@classmethod |
12
|
|
|
def setUpClass(cls): |
13
|
|
|
"""[Controller2Switch/FlowStatsRequest] - size 44.""" |
14
|
|
|
super().setUpClass() |
15
|
|
|
super().set_raw_dump_file('v0x01', 'ofpt_flow_stats_request') |
16
|
|
|
super().set_raw_dump_object(StatsRequest, xid=12, |
17
|
|
|
body_type=StatsType.OFPST_FLOW, |
18
|
|
|
flags=0, body=_get_flow_stats_request()) |
19
|
|
|
super().set_minimum_size(12) |
20
|
|
|
|
21
|
|
|
|
22
|
|
|
def _get_flow_stats_request(): |
23
|
|
|
return FlowStatsRequest(match=_get_match(), table_id=1, out_port=80) |
24
|
|
|
|
25
|
|
|
|
26
|
|
|
def _get_match(): |
27
|
|
|
"""Function used to return a Match instance.""" |
28
|
|
|
return Match(in_port=80, dl_src='01:02:03:04:05:06', |
29
|
|
|
dl_dst='01:02:03:04:05:06', dl_vlan=1, |
30
|
|
|
dl_vlan_pcp=1, dl_type=1, |
31
|
|
|
nw_tos=1, nw_proto=1, |
32
|
|
|
nw_src='192.168.0.1', nw_dst='192.168.0.1', |
33
|
|
|
tp_src=80, tp_dst=80) |
34
|
|
|
|