summaryrefslogtreecommitdiffstats
path: root/scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py
diff options
context:
space:
mode:
authorVyacheslav Ogai <vyacheslav.ogai@gmail.com>2016-10-08 20:59:07 +0300
committerHanoh Haim <hhaim@cisco.com>2016-12-19 16:04:07 +0200
commitbd63922fbd687f7c86655d2095fea340e59c37c5 (patch)
tree7df566eda973c7ae12b6b6a8f92b48235e98305f /scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py
parent9218477a913ddab4f01fb1b7754dc2ae69a32898 (diff)
Update field engine defs. Generation vm instrucions from updated model.
Signed-off-by: Vyacheslav Ogai <vyacheslav.ogai@gmail.com>
Diffstat (limited to 'scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py')
-rw-r--r--scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py55
1 files changed, 38 insertions, 17 deletions
diff --git a/scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py b/scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py
index af3bfb43..2f5dec91 100644
--- a/scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py
+++ b/scripts/automation/trex_control_plane/stl/services/scapy_server/unit_tests/test_scapy_service.py
@@ -119,16 +119,22 @@ def test_get_definitions_all():
assert("TCP" in def_classnames)
fe_parameter_metas = defs['feInstructionParameters']
- assert(fe_parameter_metas[0]['id'] == "max_value")
- assert(fe_parameter_metas[1]['id'] == "min_value")
- assert(fe_parameter_metas[2]['id'] == "step")
- assert(fe_parameter_metas[3]['id'] == "op")
- assert(fe_parameter_metas[4]['id'] == "fv_name")
- assert(fe_parameter_metas[5]['id'] == "pkt_offset")
- assert(fe_parameter_metas[6]['id'] == "offset")
- assert(fe_parameter_metas[7]['id'] == "l3_offset")
- assert(fe_parameter_metas[8]['id'] == "l4_offset")
- assert(fe_parameter_metas[9]['id'] == "l4_type")
+ assert(fe_parameter_metas[0]['id'] == "name")
+ assert(fe_parameter_metas[1]['id'] == "init_value")
+ assert(fe_parameter_metas[2]['id'] == "max_value")
+ assert(fe_parameter_metas[3]['id'] == "min_value")
+ assert(fe_parameter_metas[4]['id'] == "step")
+ assert(fe_parameter_metas[5]['id'] == "op")
+ assert(fe_parameter_metas[6]['id'] == "size")
+ assert(fe_parameter_metas[7]['id'] == "fv_name")
+ assert(fe_parameter_metas[8]['id'] == "pkt_offset")
+ assert(fe_parameter_metas[9]['id'] == "offset_fixup")
+ assert(fe_parameter_metas[10]['id'] == "add_val")
+ assert(fe_parameter_metas[11]['id'] == "is_big")
+ assert(fe_parameter_metas[12]['id'] == "offset")
+ assert(fe_parameter_metas[13]['id'] == "l3_offset")
+ assert(fe_parameter_metas[14]['id'] == "l4_offset")
+ assert(fe_parameter_metas[15]['id'] == "l4_type")
# All instructions should have a help description.
fe_instructions = defs['feInstructions']
@@ -274,14 +280,29 @@ def test_generate_vm_instructions():
layer_def("Ether"),
layer_def("IP", src="16.0.0.1", dst="48.0.0.1")
]
- ip_instructions_model = {"field_engine": {'global_parameters': {}, 'instructions': [{'id': "IP", 'fields': [
- {"fieldId": "src", 'parameters': {'min_value': "0", 'max_value': "16.0.0.255", 'step': "1", 'op': "inc"}},
- {"fieldId": "ttl", 'parameters': {'min_value': "1", 'max_value': "17", 'step': "1", 'op': "inc"}}]}]}}
+ ip_instructions_model = {"field_engine": {"instructions": [{"id": "STLVmFlowVar",
+ "parameters": {"op": "inc", "min_value": "192.168.0.10",
+ "size": "1", "name": "ip_src",
+ "step": "1",
+ "max_value": "192.168.0.100"}},
+ {"id": "STLVmWrFlowVar",
+ "parameters": {"pkt_offset": "IP.src", "is_big": "true",
+ "add_val": "0", "offset_fixup": "0",
+ "fv_name": "ip_src"}},
+ {"id": "STLVmFlowVar",
+ "parameters": {"op": "dec", "min_value": "32",
+ "size": "1", "name": "ip_ttl",
+ "step": "4", "max_value": "64"}},
+ {"id": "STLVmWrFlowVar",
+ "parameters": {"pkt_offset": "IP.ttl", "is_big": "true",
+ "add_val": "0", "offset_fixup": "0",
+ "fv_name": "ip_ttl"}}],
+ "global_parameters": {}}}
res = build_pkt_ex(ip_pkt_model, ip_instructions_model)
src_instruction = res['vm_instructions']['instructions'][0]
- assert(src_instruction['min_value'] == 0)
- assert(src_instruction['max_value'] == 268435711)
+ assert(src_instruction['min_value'] == 3232235530)
+ assert(src_instruction['max_value'] == 3232235620)
ttl_instruction = res['vm_instructions']['instructions'][2]
- assert(ttl_instruction['min_value'] == 1)
- assert(ttl_instruction['max_value'] == 17) \ No newline at end of file
+ assert(ttl_instruction['min_value'] == 32)
+ assert(ttl_instruction['max_value'] == 64)