From 94f67c7535eaac09137f8639f8d9039c036b9ceb Mon Sep 17 00:00:00 2001 From: Rodolfo Alonso Hernandez Date: Wed, 17 Jan 2018 18:04:53 +0000 Subject: Add arguments to the traffic profile render In order to render configurable traffic profiles in NSB test cases, a new variable is introduced: "extra_arg". The content of this variable is added to the VNFD render data, under a key called "extra_args". This will allow the user to define Jinja templates for traffic profiles. E.g.: $ cat test_case_definition.yml scenarios: - type: NSPerf traffic_profile: traffic_profile.yml extra_args: vports: 10 $ cat traffic_profile.yml {% set vports = get(extra_args, 'vports', '0') or 4 %} {% for vport in range(vports|int) %} uplink_{{vport}}: data... {% endfor %} JIRA: YARDSTICK-946 Change-Id: Ib3c1f2d89efa012772edf2156e97d5f4742a6b80 Signed-off-by: Rodolfo Alonso Hernandez --- tests/unit/__init__.py | 64 ++-------------------- .../network_services/traffic_profile/test_base.py | 4 +- 2 files changed, 6 insertions(+), 62 deletions(-) (limited to 'tests/unit') diff --git a/tests/unit/__init__.py b/tests/unit/__init__.py index a468b272b..5935abbac 100644 --- a/tests/unit/__init__.py +++ b/tests/unit/__init__.py @@ -12,65 +12,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -from __future__ import absolute_import -import mock +from yardstick import tests -STL_MOCKS = { - 'trex_stl_lib': mock.MagicMock(), - 'trex_stl_lib.base64': mock.MagicMock(), - 'trex_stl_lib.binascii': mock.MagicMock(), - 'trex_stl_lib.collections': mock.MagicMock(), - 'trex_stl_lib.copy': mock.MagicMock(), - 'trex_stl_lib.datetime': mock.MagicMock(), - 'trex_stl_lib.functools': mock.MagicMock(), - 'trex_stl_lib.imp': mock.MagicMock(), - 'trex_stl_lib.inspect': mock.MagicMock(), - 'trex_stl_lib.json': mock.MagicMock(), - 'trex_stl_lib.linecache': mock.MagicMock(), - 'trex_stl_lib.math': mock.MagicMock(), - 'trex_stl_lib.os': mock.MagicMock(), - 'trex_stl_lib.platform': mock.MagicMock(), - 'trex_stl_lib.pprint': mock.MagicMock(), - 'trex_stl_lib.random': mock.MagicMock(), - 'trex_stl_lib.re': mock.MagicMock(), - 'trex_stl_lib.scapy': mock.MagicMock(), - 'trex_stl_lib.socket': mock.MagicMock(), - 'trex_stl_lib.string': mock.MagicMock(), - 'trex_stl_lib.struct': mock.MagicMock(), - 'trex_stl_lib.sys': mock.MagicMock(), - 'trex_stl_lib.threading': mock.MagicMock(), - 'trex_stl_lib.time': mock.MagicMock(), - 'trex_stl_lib.traceback': mock.MagicMock(), - 'trex_stl_lib.trex_stl_async_client': mock.MagicMock(), - 'trex_stl_lib.trex_stl_client': mock.MagicMock(), - 'trex_stl_lib.trex_stl_exceptions': mock.MagicMock(), - 'trex_stl_lib.trex_stl_ext': mock.MagicMock(), - 'trex_stl_lib.trex_stl_jsonrpc_client': mock.MagicMock(), - 'trex_stl_lib.trex_stl_packet_builder_interface': mock.MagicMock(), - 'trex_stl_lib.trex_stl_packet_builder_scapy': mock.MagicMock(), - 'trex_stl_lib.trex_stl_port': mock.MagicMock(), - 'trex_stl_lib.trex_stl_stats': mock.MagicMock(), - 'trex_stl_lib.trex_stl_streams': mock.MagicMock(), - 'trex_stl_lib.trex_stl_types': mock.MagicMock(), - 'trex_stl_lib.types': mock.MagicMock(), - 'trex_stl_lib.utils': mock.MagicMock(), - 'trex_stl_lib.utils.argparse': mock.MagicMock(), - 'trex_stl_lib.utils.collections': mock.MagicMock(), - 'trex_stl_lib.utils.common': mock.MagicMock(), - 'trex_stl_lib.utils.json': mock.MagicMock(), - 'trex_stl_lib.utils.os': mock.MagicMock(), - 'trex_stl_lib.utils.parsing_opts': mock.MagicMock(), - 'trex_stl_lib.utils.pwd': mock.MagicMock(), - 'trex_stl_lib.utils.random': mock.MagicMock(), - 'trex_stl_lib.utils.re': mock.MagicMock(), - 'trex_stl_lib.utils.string': mock.MagicMock(), - 'trex_stl_lib.utils.sys': mock.MagicMock(), - 'trex_stl_lib.utils.text_opts': mock.MagicMock(), - 'trex_stl_lib.utils.text_tables': mock.MagicMock(), - 'trex_stl_lib.utils.texttable': mock.MagicMock(), - 'trex_stl_lib.warnings': mock.MagicMock(), - 'trex_stl_lib.yaml': mock.MagicMock(), - 'trex_stl_lib.zlib': mock.MagicMock(), - 'trex_stl_lib.zmq': mock.MagicMock(), -} +# NOTE(ralonsoh): to be removed. Replace all occurrences of +# tests.unit.STL_MOCKS with yardstick.tests.STL_MOCKS +STL_MOCKS = tests.STL_MOCKS diff --git a/tests/unit/network_services/traffic_profile/test_base.py b/tests/unit/network_services/traffic_profile/test_base.py index 1089564da..33f803286 100644 --- a/tests/unit/network_services/traffic_profile/test_base.py +++ b/tests/unit/network_services/traffic_profile/test_base.py @@ -22,7 +22,7 @@ import unittest from yardstick.common import exceptions from yardstick.network_services import traffic_profile as tprofile_package from yardstick.network_services.traffic_profile import base -from yardstick.tests import unit as unit_test +from yardstick import tests as y_tests class TestTrafficProfile(unittest.TestCase): @@ -56,7 +56,7 @@ class TestTrafficProfile(unittest.TestCase): 'RFC2544Profile', 'FixedProfile', 'TrafficProfileGenericHTTP', 'IXIARFC2544Profile', 'ProxACLProfile', 'ProxBinSearchProfile', 'ProxProfile', 'ProxRampProfile'] - with mock.patch.dict(sys.modules, unit_test.STL_MOCKS): + with mock.patch.dict(sys.modules, y_tests.STL_MOCKS): tprofile_package.register_modules() for tp in traffic_profile_list: -- cgit 1.2.3-korg