diff options
author | Yiting.Li <liyiting@huawei.com> | 2016-01-22 10:46:57 +0800 |
---|---|---|
committer | Jun Li <matthew.lijun@huawei.com> | 2016-01-25 01:30:21 +0000 |
commit | 07fa6d43cf0ac1baf3cd67e741f474273fbd387d (patch) | |
tree | 17ed17fa64b121bd5189070f46e14db336a50bd4 | |
parent | 486719ea0024e683f4e90832e647becf3d5d5ab7 (diff) |
JIRA: BOTTLENECKS-29
Add a end-to-end test framework
delete the wrong author flag and fix some missing of the copy right
Change-Id: Ia9f72ff3e523f05cd0d5e32e3349a3f6acad5bd1
Signed-off-by: Yiting.Li <liyiting@huawei.com>
(cherry picked from commit 0ea3b714615e7a9383048a13695bbe4d62f028fd)
266 files changed, 47 insertions, 2133 deletions
diff --git a/vstf/README.rst b/vstf/README.rst index ae18790e..45fd0094 100755..100644 --- a/vstf/README.rst +++ b/vstf/README.rst @@ -1,2 +1,3 @@ -welcome to open vstf(Virtual Switch Test Framework -) +Bottleneck testsuite VSTF +========================= +welcome to open vstf(Virtual Switch Test Framework) diff --git a/vstf/__init__.py b/vstf/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/__init__.py +++ b/vstf/__init__.py diff --git a/vstf/etc/vstf/amqp/amqp.ini b/vstf/etc/vstf/amqp/amqp.ini index 8f355e68..8f355e68 100755..100644 --- a/vstf/etc/vstf/amqp/amqp.ini +++ b/vstf/etc/vstf/amqp/amqp.ini diff --git a/vstf/etc/vstf/default/reporters.html-settings b/vstf/etc/vstf/default/reporters.html-settings index de75f70b..de75f70b 100755..100644 --- a/vstf/etc/vstf/default/reporters.html-settings +++ b/vstf/etc/vstf/default/reporters.html-settings diff --git a/vstf/etc/vstf/default/reporters.mail.mail-settings b/vstf/etc/vstf/default/reporters.mail.mail-settings index 89bbcb5f..89bbcb5f 100755..100644 --- a/vstf/etc/vstf/default/reporters.mail.mail-settings +++ b/vstf/etc/vstf/default/reporters.mail.mail-settings diff --git a/vstf/etc/vstf/default/sw_perf.tool-settings b/vstf/etc/vstf/default/sw_perf.tool-settings index e72a0bc2..e72a0bc2 100755..100644 --- a/vstf/etc/vstf/default/sw_perf.tool-settings +++ b/vstf/etc/vstf/default/sw_perf.tool-settings diff --git a/vstf/etc/vstf/env/Ti.json b/vstf/etc/vstf/env/Ti.json index d122ddde..d122ddde 100755..100644 --- a/vstf/etc/vstf/env/Ti.json +++ b/vstf/etc/vstf/env/Ti.json diff --git a/vstf/etc/vstf/env/Tn.json b/vstf/etc/vstf/env/Tn.json index f731457e..f731457e 100755..100644 --- a/vstf/etc/vstf/env/Tn.json +++ b/vstf/etc/vstf/env/Tn.json diff --git a/vstf/etc/vstf/env/Tnv.json b/vstf/etc/vstf/env/Tnv.json index 3697dbbf..3697dbbf 100755..100644 --- a/vstf/etc/vstf/env/Tnv.json +++ b/vstf/etc/vstf/env/Tnv.json diff --git a/vstf/etc/vstf/env/Tu.json b/vstf/etc/vstf/env/Tu.json index 95bb81fc..95bb81fc 100755..100644 --- a/vstf/etc/vstf/env/Tu.json +++ b/vstf/etc/vstf/env/Tu.json diff --git a/vstf/etc/vstf/env/eth2eth.json b/vstf/etc/vstf/env/eth2eth.json index 5662ae15..5662ae15 100755..100644 --- a/vstf/etc/vstf/env/eth2eth.json +++ b/vstf/etc/vstf/env/eth2eth.json diff --git a/vstf/etc/vstf/env/images.json b/vstf/etc/vstf/env/images.json index a1c187cd..a1c187cd 100755..100644 --- a/vstf/etc/vstf/env/images.json +++ b/vstf/etc/vstf/env/images.json diff --git a/vstf/etc/vstf/env/src.json b/vstf/etc/vstf/env/src.json index 391b084c..391b084c 100755..100644 --- a/vstf/etc/vstf/env/src.json +++ b/vstf/etc/vstf/env/src.json diff --git a/vstf/etc/vstf/env/tester.json b/vstf/etc/vstf/env/tester.json index 213658df..213658df 100755..100644 --- a/vstf/etc/vstf/env/tester.json +++ b/vstf/etc/vstf/env/tester.json diff --git a/vstf/etc/vstf/perf/sw_perf.batch-settings b/vstf/etc/vstf/perf/sw_perf.batch-settings index 83c6970d..83c6970d 100755..100644 --- a/vstf/etc/vstf/perf/sw_perf.batch-settings +++ b/vstf/etc/vstf/perf/sw_perf.batch-settings diff --git a/vstf/etc/vstf/perf/sw_perf.cpu-settings b/vstf/etc/vstf/perf/sw_perf.cpu-settings index 77b9304c..77b9304c 100755..100644 --- a/vstf/etc/vstf/perf/sw_perf.cpu-settings +++ b/vstf/etc/vstf/perf/sw_perf.cpu-settings diff --git a/vstf/etc/vstf/perf/sw_perf.device-settings b/vstf/etc/vstf/perf/sw_perf.device-settings index e0dac25a..e0dac25a 100755..100644 --- a/vstf/etc/vstf/perf/sw_perf.device-settings +++ b/vstf/etc/vstf/perf/sw_perf.device-settings diff --git a/vstf/etc/vstf/perf/sw_perf.flownodes-settings b/vstf/etc/vstf/perf/sw_perf.flownodes-settings index c9cc75b7..c9cc75b7 100755..100644 --- a/vstf/etc/vstf/perf/sw_perf.flownodes-settings +++ b/vstf/etc/vstf/perf/sw_perf.flownodes-settings diff --git a/vstf/etc/vstf/perf/sw_perf.forwarding-settings b/vstf/etc/vstf/perf/sw_perf.forwarding-settings index 17f66434..17f66434 100755..100644 --- a/vstf/etc/vstf/perf/sw_perf.forwarding-settings +++ b/vstf/etc/vstf/perf/sw_perf.forwarding-settings diff --git a/vstf/etc/vstf/reporter/reporters.template-settings b/vstf/etc/vstf/reporter/reporters.template-settings index f0e4a29e..f0e4a29e 100755..100644 --- a/vstf/etc/vstf/reporter/reporters.template-settings +++ b/vstf/etc/vstf/reporter/reporters.template-settings diff --git a/vstf/etc/vstf/spirent/optimize.ini b/vstf/etc/vstf/spirent/optimize.ini index 23fefea7..23fefea7 100755..100644 --- a/vstf/etc/vstf/spirent/optimize.ini +++ b/vstf/etc/vstf/spirent/optimize.ini diff --git a/vstf/etc/vstf/spirent/strategy.ini b/vstf/etc/vstf/spirent/strategy.ini index 08731505..08731505 100755..100644 --- a/vstf/etc/vstf/spirent/strategy.ini +++ b/vstf/etc/vstf/spirent/strategy.ini diff --git a/vstf/etc/vstf/user/reporters.html-settings b/vstf/etc/vstf/user/reporters.html-settings index deaa69b8..deaa69b8 100755..100644 --- a/vstf/etc/vstf/user/reporters.html-settings +++ b/vstf/etc/vstf/user/reporters.html-settings diff --git a/vstf/etc/vstf/user/reporters.mail.mail-settings b/vstf/etc/vstf/user/reporters.mail.mail-settings index 8716cd4f..e5c7b44f 100755..100644 --- a/vstf/etc/vstf/user/reporters.mail.mail-settings +++ b/vstf/etc/vstf/user/reporters.mail.mail-settings @@ -6,13 +6,10 @@ }, "body": { "from": [ - "hangzhou_vstf_ci@huawei.com" ], "to": [ - "Yiting.Li@gerrit.opnfv.org", ], - "cc": [ ], - "bcc": [], - "subject": "Virtual Switching Performance Test Report" + "cc": [], + "bcc": [] } } diff --git a/vstf/etc/vstf/user/sw_perf.tool-settings b/vstf/etc/vstf/user/sw_perf.tool-settings index 2c63c085..2c63c085 100755..100644 --- a/vstf/etc/vstf/user/sw_perf.tool-settings +++ b/vstf/etc/vstf/user/sw_perf.tool-settings diff --git a/vstf/install.sh b/vstf/install.sh index 10a46f4c..4a63a1e1 100755..100644 --- a/vstf/install.sh +++ b/vstf/install.sh @@ -1,4 +1,12 @@ #!/bin/bash +############################################################################## +# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## SERVER=$2 PORT=$3 diff --git a/vstf/pylint.conf b/vstf/pylint.conf index 6514d3c6..6514d3c6 100755..100644 --- a/vstf/pylint.conf +++ b/vstf/pylint.conf diff --git a/vstf/requirements.txt b/vstf/requirements.txt index 3d7e8037..3d7e8037 100755..100644 --- a/vstf/requirements.txt +++ b/vstf/requirements.txt diff --git a/vstf/setup.cfg b/vstf/setup.cfg index 662f75f4..923f9f7a 100755..100644 --- a/vstf/setup.cfg +++ b/vstf/setup.cfg @@ -1,14 +1,13 @@ [metadata] name = vstf -version = 2014.2.3 -summary = Open Virtual Switch Test Framework +version = 2015.12 +summary = Virtual Switch Test Framework description-file = README.rst -author = OpenNFV -author-email = openatf@huawei.com -home-page = https://12.234.32.89/mediawiki/ +author = BottleneckGroup +home-page = https://wiki.opnfv.org/bottlenecks classifier = - Environment :: OpenATF + Environment :: VSTF Intended Audience :: Information Technology Intended Audience :: System Administrators License :: OSI Approved :: Apache Software License @@ -35,8 +34,6 @@ console_scripts = vstf-agent = vstf.agent.agent:main vstfadm = vstf.controller.vstfadm:main vstf-settings = vstf.controller.settings.settings_input:main - vstf-driver = vstf.controller.functiontest.driver.drivertest:main - vstf-switch = vstf.controller.functiontest.switch.switchtest:main agent.plugins = soft = vstf.agent.softagent:softAgent diff --git a/vstf/setup.py b/vstf/setup.py index bdecb375..bdecb375 100755..100644 --- a/vstf/setup.py +++ b/vstf/setup.py diff --git a/vstf/tool_package/install.sh b/vstf/tool_package/install.sh index 471457d2..9d50516e 100755..100644 --- a/vstf/tool_package/install.sh +++ b/vstf/tool_package/install.sh @@ -1,4 +1,12 @@ #!/bin/bash +############################################################################## +# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## function usage() { diff --git a/vstf/tool_package/netperf-2.7.0.tar.gz b/vstf/tool_package/netperf-2.7.0.tar.gz Binary files differindex 666945af..666945af 100755..100644 --- a/vstf/tool_package/netperf-2.7.0.tar.gz +++ b/vstf/tool_package/netperf-2.7.0.tar.gz diff --git a/vstf/tool_package/qperf-0.4.9.tar.gz b/vstf/tool_package/qperf-0.4.9.tar.gz Binary files differindex 12ec727c..12ec727c 100755..100644 --- a/vstf/tool_package/qperf-0.4.9.tar.gz +++ b/vstf/tool_package/qperf-0.4.9.tar.gz diff --git a/vstf/tool_package/vnstat-1.14.tar.gz b/vstf/tool_package/vnstat-1.14.tar.gz Binary files differindex f8b0bcf4..f8b0bcf4 100755..100644 --- a/vstf/tool_package/vnstat-1.14.tar.gz +++ b/vstf/tool_package/vnstat-1.14.tar.gz diff --git a/vstf/vstf/__init__.py b/vstf/vstf/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/__init__.py +++ b/vstf/vstf/__init__.py diff --git a/vstf/vstf/agent/__init__.py b/vstf/vstf/agent/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/agent/__init__.py +++ b/vstf/vstf/agent/__init__.py diff --git a/vstf/vstf/agent/agent.py b/vstf/vstf/agent/agent.py index b5745995..b5745995 100755..100644 --- a/vstf/vstf/agent/agent.py +++ b/vstf/vstf/agent/agent.py diff --git a/vstf/vstf/agent/env/Readme b/vstf/vstf/agent/env/Readme deleted file mode 100755 index d178a6fd..00000000 --- a/vstf/vstf/agent/env/Readme +++ /dev/null @@ -1,9 +0,0 @@ -Modules in the directory are for "Environment Building". -"Environment Building" is for creating "virtual network" for Performance Evaluation. -The builder.py contains the quick test code for creates a "virtual network" from a config file. - -Usage: - python builder.py --config /etc/vstf/env/Tn.json - -Please modify example config file "/etc/vstf/model/Tn.json" to suit your own Environment. - diff --git a/vstf/vstf/agent/env/__init__.py b/vstf/vstf/agent/env/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/agent/env/__init__.py +++ b/vstf/vstf/agent/env/__init__.py diff --git a/vstf/vstf/agent/env/basic/Readme b/vstf/vstf/agent/env/basic/Readme deleted file mode 100755 index cf7a877f..00000000 --- a/vstf/vstf/agent/env/basic/Readme +++ /dev/null @@ -1,39 +0,0 @@ -the modules in this directory include some basic common purpose functions that can be used for other plugins. -you can see the modules in this directory as libraries that you can import for ease of creating your own plugin. - -the main functions of the modules are listed as follows: - -ImageManger: - role: - virtual machine images manager. used by VmManager. - wraps 'qemu-img' command as underlying mechanism. - features: - provides a function to create child image from a parent image. - provides a function to delete child image. - -SourceManager: - role: - source code manager. - using 'pramiko' as underlying mechanism. - features: - provides a function to download source code - provides a function which wrap 'make clean;make;make install' to compile and install. - -VmManager: - role: - virtual machine manager which can create vm and configure vm on bootstrap. - use libvirt as underlying mechanism. wrap 'virsh' command for creating vm. - features: - provides a function to create vm from a vm configuration context. - provides functions to detect if vm boots up successfully and onfigure bootstrap options for vm like ip and rabbitmq conf file. - -vm9pfs: - used by VmManager. - host side 9pfs operation (mainly file operations) to communicate with vm by libvirt 9pfs. - see as communication protocol on client side. The vm runs a agent for receiving the commands. - -VmXmlHelp: - used by VmManager. - just some divided libvirt xml string templates for building a complete libvirt xml file on demand by VmManager. - - diff --git a/vstf/vstf/agent/env/basic/__init__.py b/vstf/vstf/agent/env/basic/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/agent/env/basic/__init__.py +++ b/vstf/vstf/agent/env/basic/__init__.py diff --git a/vstf/vstf/agent/env/basic/collect.py b/vstf/vstf/agent/env/basic/collect.py index 126a7d55..126a7d55 100755..100644 --- a/vstf/vstf/agent/env/basic/collect.py +++ b/vstf/vstf/agent/env/basic/collect.py diff --git a/vstf/vstf/agent/env/basic/commandline.py b/vstf/vstf/agent/env/basic/commandline.py index e4df9b27..e4df9b27 100755..100644 --- a/vstf/vstf/agent/env/basic/commandline.py +++ b/vstf/vstf/agent/env/basic/commandline.py diff --git a/vstf/vstf/agent/env/basic/device_manager.py b/vstf/vstf/agent/env/basic/device_manager.py index 8b5387fe..8b5387fe 100755..100644 --- a/vstf/vstf/agent/env/basic/device_manager.py +++ b/vstf/vstf/agent/env/basic/device_manager.py diff --git a/vstf/vstf/agent/env/basic/image_manager.py b/vstf/vstf/agent/env/basic/image_manager.py index c3b5c6b3..c3b5c6b3 100755..100644 --- a/vstf/vstf/agent/env/basic/image_manager.py +++ b/vstf/vstf/agent/env/basic/image_manager.py diff --git a/vstf/vstf/agent/env/basic/source_manager.py b/vstf/vstf/agent/env/basic/source_manager.py index 6edd14ca..6edd14ca 100755..100644 --- a/vstf/vstf/agent/env/basic/source_manager.py +++ b/vstf/vstf/agent/env/basic/source_manager.py diff --git a/vstf/vstf/agent/env/basic/vm9pfs.py b/vstf/vstf/agent/env/basic/vm9pfs.py index 7364f8b2..7364f8b2 100755..100644 --- a/vstf/vstf/agent/env/basic/vm9pfs.py +++ b/vstf/vstf/agent/env/basic/vm9pfs.py diff --git a/vstf/vstf/agent/env/basic/vm_manager.py b/vstf/vstf/agent/env/basic/vm_manager.py index 60a3b37b..60a3b37b 100755..100644 --- a/vstf/vstf/agent/env/basic/vm_manager.py +++ b/vstf/vstf/agent/env/basic/vm_manager.py diff --git a/vstf/vstf/agent/env/basic/vm_xml_help.py b/vstf/vstf/agent/env/basic/vm_xml_help.py index 6f9131e7..6f9131e7 100755..100644 --- a/vstf/vstf/agent/env/basic/vm_xml_help.py +++ b/vstf/vstf/agent/env/basic/vm_xml_help.py diff --git a/vstf/vstf/agent/env/builder.py b/vstf/vstf/agent/env/builder.py index a66a8873..a66a8873 100755..100644 --- a/vstf/vstf/agent/env/builder.py +++ b/vstf/vstf/agent/env/builder.py diff --git a/vstf/vstf/agent/env/driver_plugins/__init__.py b/vstf/vstf/agent/env/driver_plugins/__init__.py index fc9802be..fc9802be 100755..100644 --- a/vstf/vstf/agent/env/driver_plugins/__init__.py +++ b/vstf/vstf/agent/env/driver_plugins/__init__.py diff --git a/vstf/vstf/agent/env/driver_plugins/manager.py b/vstf/vstf/agent/env/driver_plugins/manager.py index 6f895656..6f895656 100755..100644 --- a/vstf/vstf/agent/env/driver_plugins/manager.py +++ b/vstf/vstf/agent/env/driver_plugins/manager.py diff --git a/vstf/vstf/agent/env/driver_plugins/model.py b/vstf/vstf/agent/env/driver_plugins/model.py index ddc07449..ddc07449 100755..100644 --- a/vstf/vstf/agent/env/driver_plugins/model.py +++ b/vstf/vstf/agent/env/driver_plugins/model.py diff --git a/vstf/vstf/agent/env/driver_plugins/origin_driver.py b/vstf/vstf/agent/env/driver_plugins/origin_driver.py index bf3c15c8..bf3c15c8 100755..100644 --- a/vstf/vstf/agent/env/driver_plugins/origin_driver.py +++ b/vstf/vstf/agent/env/driver_plugins/origin_driver.py diff --git a/vstf/vstf/agent/env/fsmonitor/FSMonitor.py b/vstf/vstf/agent/env/fsmonitor/FSMonitor.py index e6559362..e6559362 100755..100644 --- a/vstf/vstf/agent/env/fsmonitor/FSMonitor.py +++ b/vstf/vstf/agent/env/fsmonitor/FSMonitor.py diff --git a/vstf/vstf/agent/env/fsmonitor/Readme b/vstf/vstf/agent/env/fsmonitor/Readme deleted file mode 100755 index f2bf9a8e..00000000 --- a/vstf/vstf/agent/env/fsmonitor/Readme +++ /dev/null @@ -1,13 +0,0 @@ -FSMonitor is a daemon process which runs in the vm. -FSMonitor receive "commands" from 'VmManager' by libvirt 9pfs. - -Basically the process works like this: - 1.The 'VmManager' writes 'command string' to 'command' file on the libvirt 9pfs used by vm. - 2.The FSMonitor constantly detects file changes on the libvirt 9pfs. - 3.The FSMonitor finds the newly created file, it then reads the file and execute the command. - -All the dependencies of FSMonitor should be satisfied by modules in this directory. - -When deploying FSMonitor, just copy this directory into the vm. - - diff --git a/vstf/vstf/agent/env/fsmonitor/__init__.py b/vstf/vstf/agent/env/fsmonitor/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/agent/env/fsmonitor/__init__.py +++ b/vstf/vstf/agent/env/fsmonitor/__init__.py diff --git a/vstf/vstf/agent/env/fsmonitor/constant.py b/vstf/vstf/agent/env/fsmonitor/constant.py index 33b37eb4..33b37eb4 100755..100644 --- a/vstf/vstf/agent/env/fsmonitor/constant.py +++ b/vstf/vstf/agent/env/fsmonitor/constant.py diff --git a/vstf/vstf/agent/env/fsmonitor/utils.py b/vstf/vstf/agent/env/fsmonitor/utils.py index 5bdb4159..5bdb4159 100755..100644 --- a/vstf/vstf/agent/env/fsmonitor/utils.py +++ b/vstf/vstf/agent/env/fsmonitor/utils.py diff --git a/vstf/vstf/agent/env/plugins/Readme b/vstf/vstf/agent/env/plugins/Readme deleted file mode 100755 index a2879ba0..00000000 --- a/vstf/vstf/agent/env/plugins/Readme +++ /dev/null @@ -1,49 +0,0 @@ -All the plugins should subclass EnvBuilderPlugin from "model.py". - -The EnvBuilderPlugin is a template class with a template algorithm: - - def __init__(self, ): - pass - @abstractmethod - def clean(self): - #clean Environment before goes further. - @abstractmethod - def install(self): - #install network virtualization software from source code. - @abstractmethod - def load_drivers(self): - #loads drivers for network card. - @abstractmethod - def create_brs(self): - #creates virtual switches. - @abstractmethod - def config_br_ports(self): - #config the vlan property for vswitch ports. - def create_vms(self): - #create vms - def wait_vms(self): - #wait vm to boot up and config vm for ips and other configurations. - def check_vm_connectivity(self): - #check if the vms correctly setup the control panel ips. - def build(self, cfg_intent): - self.host_cfg = cfg_intent #please retrieve options from self.host_cfg for your use in other methods. - self.clean() - self.download_and_compile() - self.load_drivers() - self.create_brs() - self.create_vms() - self.wait_vms() - self.config_tap_vlans() - self.check_vm_connectivity() - -You should implements the abstract methods left empty, however you can make some methods do nothing to skip steps.. - -The plugin receives a "cfg_intent", The "cfg_intent" is a python dict parsed from a env-build configuration file. - -It contains the detail configurations for the plugin to build a "virtual network" for testing. - -There are some example json config files for building different type of "virtual network" under "etc/vstf/env" that you can refer to. - -Before you creates a new plugin, you should make sure you understand these json config file properly. - - diff --git a/vstf/vstf/agent/env/plugins/__init__.py b/vstf/vstf/agent/env/plugins/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/agent/env/plugins/__init__.py +++ b/vstf/vstf/agent/env/plugins/__init__.py diff --git a/vstf/vstf/agent/env/plugins/libvirt_plugin.py b/vstf/vstf/agent/env/plugins/libvirt_plugin.py index 27af8063..27af8063 100755..100644 --- a/vstf/vstf/agent/env/plugins/libvirt_plugin.py +++ b/vstf/vstf/agent/env/plugins/libvirt_plugin.py diff --git a/vstf/vstf/agent/env/plugins/model.py b/vstf/vstf/agent/env/plugins/model.py index b19ceb96..b19ceb96 100755..100644 --- a/vstf/vstf/agent/env/plugins/model.py +++ b/vstf/vstf/agent/env/plugins/model.py diff --git a/vstf/vstf/agent/env/plugins/tester_env_plugin.py b/vstf/vstf/agent/env/plugins/tester_env_plugin.py index 0682aac8..0682aac8 100755..100644 --- a/vstf/vstf/agent/env/plugins/tester_env_plugin.py +++ b/vstf/vstf/agent/env/plugins/tester_env_plugin.py diff --git a/vstf/vstf/agent/env/vswitch_plugins/__init__.py b/vstf/vstf/agent/env/vswitch_plugins/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/agent/env/vswitch_plugins/__init__.py +++ b/vstf/vstf/agent/env/vswitch_plugins/__init__.py diff --git a/vstf/vstf/agent/env/vswitch_plugins/bridge_plugin.py b/vstf/vstf/agent/env/vswitch_plugins/bridge_plugin.py index 21b8f82c..21b8f82c 100755..100644 --- a/vstf/vstf/agent/env/vswitch_plugins/bridge_plugin.py +++ b/vstf/vstf/agent/env/vswitch_plugins/bridge_plugin.py diff --git a/vstf/vstf/agent/env/vswitch_plugins/manager.py b/vstf/vstf/agent/env/vswitch_plugins/manager.py index 785a1db8..785a1db8 100755..100644 --- a/vstf/vstf/agent/env/vswitch_plugins/manager.py +++ b/vstf/vstf/agent/env/vswitch_plugins/manager.py diff --git a/vstf/vstf/agent/env/vswitch_plugins/model.py b/vstf/vstf/agent/env/vswitch_plugins/model.py index 5d700411..5d700411 100755..100644 --- a/vstf/vstf/agent/env/vswitch_plugins/model.py +++ b/vstf/vstf/agent/env/vswitch_plugins/model.py diff --git a/vstf/vstf/agent/env/vswitch_plugins/ovs_plugin.py b/vstf/vstf/agent/env/vswitch_plugins/ovs_plugin.py index 7ea56d4a..7ea56d4a 100755..100644 --- a/vstf/vstf/agent/env/vswitch_plugins/ovs_plugin.py +++ b/vstf/vstf/agent/env/vswitch_plugins/ovs_plugin.py diff --git a/vstf/vstf/agent/equalizer/README b/vstf/vstf/agent/equalizer/README deleted file mode 100755 index 6c688a1f..00000000 --- a/vstf/vstf/agent/equalizer/README +++ /dev/null @@ -1 +0,0 @@ -equalizer of the performance of network diff --git a/vstf/vstf/agent/equalizer/__init__.py b/vstf/vstf/agent/equalizer/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/agent/equalizer/__init__.py +++ b/vstf/vstf/agent/equalizer/__init__.py diff --git a/vstf/vstf/agent/equalizer/equalizer.py b/vstf/vstf/agent/equalizer/equalizer.py index 30e1de1f..30e1de1f 100755..100644 --- a/vstf/vstf/agent/equalizer/equalizer.py +++ b/vstf/vstf/agent/equalizer/equalizer.py diff --git a/vstf/vstf/agent/equalizer/get_info.py b/vstf/vstf/agent/equalizer/get_info.py index 0c92f979..0c92f979 100755..100644 --- a/vstf/vstf/agent/equalizer/get_info.py +++ b/vstf/vstf/agent/equalizer/get_info.py diff --git a/vstf/vstf/agent/equalizer/optimize.py b/vstf/vstf/agent/equalizer/optimize.py index 5a09900d..5a09900d 100755..100644 --- a/vstf/vstf/agent/equalizer/optimize.py +++ b/vstf/vstf/agent/equalizer/optimize.py diff --git a/vstf/vstf/agent/perf/__init__.py b/vstf/vstf/agent/perf/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/agent/perf/__init__.py +++ b/vstf/vstf/agent/perf/__init__.py diff --git a/vstf/vstf/agent/perf/affctl.py b/vstf/vstf/agent/perf/affctl.py index 5b203632..5b203632 100755..100644 --- a/vstf/vstf/agent/perf/affctl.py +++ b/vstf/vstf/agent/perf/affctl.py diff --git a/vstf/vstf/agent/perf/ethtool.py b/vstf/vstf/agent/perf/ethtool.py index 3f4a3728..3f4a3728 100755..100644 --- a/vstf/vstf/agent/perf/ethtool.py +++ b/vstf/vstf/agent/perf/ethtool.py diff --git a/vstf/vstf/agent/perf/iperf.py b/vstf/vstf/agent/perf/iperf.py index 3105be4b..3105be4b 100755..100644 --- a/vstf/vstf/agent/perf/iperf.py +++ b/vstf/vstf/agent/perf/iperf.py diff --git a/vstf/vstf/agent/perf/netmap.py b/vstf/vstf/agent/perf/netmap.py index 88a25444..88a25444 100755..100644 --- a/vstf/vstf/agent/perf/netmap.py +++ b/vstf/vstf/agent/perf/netmap.py diff --git a/vstf/vstf/agent/perf/netns.py b/vstf/vstf/agent/perf/netns.py index c3b73860..c3b73860 100755..100644 --- a/vstf/vstf/agent/perf/netns.py +++ b/vstf/vstf/agent/perf/netns.py diff --git a/vstf/vstf/agent/perf/netperf.py b/vstf/vstf/agent/perf/netperf.py index 99f1c904..99f1c904 100755..100644 --- a/vstf/vstf/agent/perf/netperf.py +++ b/vstf/vstf/agent/perf/netperf.py diff --git a/vstf/vstf/agent/perf/pktgen.py b/vstf/vstf/agent/perf/pktgen.py index 671e1aa7..671e1aa7 100755..100644 --- a/vstf/vstf/agent/perf/pktgen.py +++ b/vstf/vstf/agent/perf/pktgen.py diff --git a/vstf/vstf/agent/perf/qperf.py b/vstf/vstf/agent/perf/qperf.py index afdf44d7..afdf44d7 100755..100644 --- a/vstf/vstf/agent/perf/qperf.py +++ b/vstf/vstf/agent/perf/qperf.py diff --git a/vstf/vstf/agent/perf/sar.py b/vstf/vstf/agent/perf/sar.py index 0231d5c1..0231d5c1 100755..100644 --- a/vstf/vstf/agent/perf/sar.py +++ b/vstf/vstf/agent/perf/sar.py diff --git a/vstf/vstf/agent/perf/utils.py b/vstf/vstf/agent/perf/utils.py index 4f7ddb6a..4f7ddb6a 100755..100644 --- a/vstf/vstf/agent/perf/utils.py +++ b/vstf/vstf/agent/perf/utils.py diff --git a/vstf/vstf/agent/perf/vnstat.py b/vstf/vstf/agent/perf/vnstat.py index b12ac1af..b12ac1af 100755..100644 --- a/vstf/vstf/agent/perf/vnstat.py +++ b/vstf/vstf/agent/perf/vnstat.py diff --git a/vstf/vstf/agent/perf/vstfperf.py b/vstf/vstf/agent/perf/vstfperf.py index 8be3c4e5..8be3c4e5 100755..100644 --- a/vstf/vstf/agent/perf/vstfperf.py +++ b/vstf/vstf/agent/perf/vstfperf.py diff --git a/vstf/vstf/agent/softagent.py b/vstf/vstf/agent/softagent.py index 6271a097..6271a097 100755..100644 --- a/vstf/vstf/agent/softagent.py +++ b/vstf/vstf/agent/softagent.py diff --git a/vstf/vstf/agent/spirent/__init__.py b/vstf/vstf/agent/spirent/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/agent/spirent/__init__.py +++ b/vstf/vstf/agent/spirent/__init__.py diff --git a/vstf/vstf/agent/spirent/spirent.py b/vstf/vstf/agent/spirent/spirent.py index 904de736..904de736 100755..100644 --- a/vstf/vstf/agent/spirent/spirent.py +++ b/vstf/vstf/agent/spirent/spirent.py diff --git a/vstf/vstf/agent/spirent/tools.py b/vstf/vstf/agent/spirent/tools.py index 6d0d429c..088a7b13 100755..100644 --- a/vstf/vstf/agent/spirent/tools.py +++ b/vstf/vstf/agent/spirent/tools.py @@ -1,4 +1,13 @@ -#!/usr/bin/python +############################################################################## +# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + + import time from spirent import stcPython diff --git a/vstf/vstf/agent/spirentagent.py b/vstf/vstf/agent/spirentagent.py index 8951f96d..8951f96d 100755..100644 --- a/vstf/vstf/agent/spirentagent.py +++ b/vstf/vstf/agent/spirentagent.py diff --git a/vstf/vstf/agent/unittest/__init__.py b/vstf/vstf/agent/unittest/__init__.py deleted file mode 100755 index 89dcd4e2..00000000 --- a/vstf/vstf/agent/unittest/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -# Copyright Huawei Technologies Co., Ltd. 1998-2015. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the License); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an AS IS BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. diff --git a/vstf/vstf/agent/unittest/configuration.py b/vstf/vstf/agent/unittest/configuration.py deleted file mode 100755 index 3f3b3665..00000000 --- a/vstf/vstf/agent/unittest/configuration.py +++ /dev/null @@ -1,28 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" - -eth_for_test = [ - "eth4", - "p57p2" -] - -mac_of_eth = [ - "90:e2:ba:20:1f:d8", - '90:e2:ba:20:1f:d9' -] - -bdf_of_eth = [ - "04:00.0", - "04:00.1" -] - -source_repo = { - "vnx-bin":{ - "install": False, - "url": "root@192.168.188.10:/root/src/vnx-bin", - "repo_type": "git" - } -}
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/Readme b/vstf/vstf/agent/unittest/env/Readme deleted file mode 100755 index eb2a78d5..00000000 --- a/vstf/vstf/agent/unittest/env/Readme +++ /dev/null @@ -1,13 +0,0 @@ -To enable Env unittest, please make sure: - - 1. br0 exists on TargetHost and connects with 'management network'. - 2. a vm image exists on Target Host. - 3. change options in configuration files in the "configuration" directory. - 4. copy public key to git server, for example: - ssh-copy-id root@192.168.188.10 - note: - 192.168.188.10 is the server you config in "../configuration.py" - this is needed for source manager which use 'git' to pull down sources. - -run tests: - python run_test.py
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/__init__.py b/vstf/vstf/agent/unittest/env/__init__.py deleted file mode 100755 index 89dcd4e2..00000000 --- a/vstf/vstf/agent/unittest/env/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -# Copyright Huawei Technologies Co., Ltd. 1998-2015. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the License); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an AS IS BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. diff --git a/vstf/vstf/agent/unittest/env/configuration/Ti.json b/vstf/vstf/agent/unittest/env/configuration/Ti.json deleted file mode 100755 index 89236612..00000000 --- a/vstf/vstf/agent/unittest/env/configuration/Ti.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "scenario": "ti", - "env-build": [ - { - "ip": "192.168.188.16", - "drivers": [ - "ixgbe", - "vhost_net" - ], - "vms": [ - { - "vm_cpu": 3, - "vm_name": "test1", - "vm_memory": 4194304, - "image_path": "/mnt/sdb/test1.qcow2", - "image_type": "qcow2", - "init_config": { - "amqp_server": "192.168.188.10", - "ctrl_ip_setting": "192.168.188.200/23", - "ctrl_gw": "192.168.188.1" - }, - "taps":[ - { - "tap_name": "tap_in", - "br_type": "ovs", - "br_name": "ovs1", - "tap_mac": "56:6f:44:a5:3f:a2", - "vlan_mode": "access", - "vlan_id": "100" - } - ], - "ctrl_mac": "16:6f:44:a5:3f:a2", - "ctrl_br": "br0" - } - ], - "bridges": [ - { - "type": "ovs", - "name": "ovs1", - "uplinks": [ - { - "bdf": "04:00.0", - "vlan_mode": "trunk", - "vlan_id": "100,200,300,400" - } - ], - "vtep":{}, - "fastlink":[ - { - "inport":"04: 00.0", - "outport":"tap_in" - } - ] - } - ] - } - ] -}
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/configuration/Tn-ovs.json b/vstf/vstf/agent/unittest/env/configuration/Tn-ovs.json deleted file mode 100755 index 73be1611..00000000 --- a/vstf/vstf/agent/unittest/env/configuration/Tn-ovs.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "env-build": [ - { - "ip": "192.168.188.16", - "drivers": [ - "ixgbe" - ], - "bridges": [ - { - "type": "ovs", - "name": "ovs1", - "uplinks": [ - { - "bdf": "04:00.0", - "vlan_mode": "trunk", - "vlan_id": "1,100,200" - }, - { - "bdf": "04:00.1", - "vlan_mode": "trunk", - "vlan_id": "1,100,200" - } - ], - "vtep": {}, - "fastlink": [ - { - "inport": "04: 00.0", - "outport": "04: 00.1" - } - ] - } - ], - "vms": [] - } - ] -} diff --git a/vstf/vstf/agent/unittest/env/configuration/Tn.json b/vstf/vstf/agent/unittest/env/configuration/Tn.json deleted file mode 100755 index 04c160da..00000000 --- a/vstf/vstf/agent/unittest/env/configuration/Tn.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "scenario": "tn", - "env-build": [ - { - "ip": "192.168.188.16", - "drivers": [ - "ixgbe" - ], - "vms": [], - "bridges": [ - { - "type": "ovs", - "name": "ovs1", - "uplinks": [ - { - "bdf": "04:00.0", - "vlan_mode": "trunk", - "vlan_id": "1,100,200" - }, - { - "bdf": "04:00.1", - "vlan_mode": "trunk", - "vlan_id": "1,100,200" - } - ], - "vtep": {}, - "fastlink": [ - { - "inport": "04:00.0", - "outport": "04:00.1" - } - ] - } - ] - } - ] -}
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/configuration/Tn1v.json b/vstf/vstf/agent/unittest/env/configuration/Tn1v.json deleted file mode 100755 index 5a25efda..00000000 --- a/vstf/vstf/agent/unittest/env/configuration/Tn1v.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "scenario": "tnv", - "env-build": [ - { - "ip": "192.168.188.16", - "drivers": [ - "ixgbe", - "tap_vhost" - ], - "vms": [ - { - "vm_cpu": 3, - "vm_name": "test1", - "vm_memory": 4194304, - "image_path": "/mnt/sdb/test1.qcow2", - "image_type": "qcow2", - "init_config": { - "amqp_server": "192.168.188.10", - "ctrl_ip_setting": "192.168.188.200/23", - "tap_pktloop_config": "dpdk", - "ctrl_gw": "192.168.188.1" - }, - "taps": [ - { - "tap_name": "tap_in", - "br_type": "ovs", - "br_name": "ovs1", - "tap_mac": "56:6f:44:a5:3f:a2", - "vlan_mode": "access", - "vlan_id": "100" - }, - { - "tap_name": "tap_out", - "br_type": "ovs", - "br_name": "ovs22", - "tap_mac": "56:6f:44:a5:3f:a3", - "vlan_mode": "access", - "vlan_id": "200" - } - ], - "ctrl_mac": "16:6f:44:a5:3f:a2", - "ctrl_br": "br0" - } - ], - "bridges": [ - { - "type": "ovs", - "name": "ovs1", - "uplinks": [ - { - "bdf": "04: 00.0", - "vlan_mode": "trunk", - "vlan_id": "100" - } - ], - "vtep":{}, - "fastlink":[ - { - "inport":"04: 00.0", - "outport":"tap_in" - } - ] - }, - { - "type": "ovs", - "name": "ovs2", - "uplinks": [ - { - "bdf": "04: 00.1", - "vlan_mode": "trunk", - "vlan_id": "200" - } - ], - "vtep":{}, - "fastlink":[ - { - "inport":"04: 00.1", - "outport":"tap_out" - } - ] - } - ] - } - ] -}
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/configuration/Tu.json b/vstf/vstf/agent/unittest/env/configuration/Tu.json deleted file mode 100755 index 15a508c0..00000000 --- a/vstf/vstf/agent/unittest/env/configuration/Tu.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "scenario": "tu", - "env-build": [ - { - "ip": "192.168.188.16", - "drivers": [ - "tap_vhost" - ], - "vms": [ - { - "vm_cpu": 3, - "vm_name": "test1", - "vm_memory": 4194304, - "image_path": "/mnt/sdb/test1.qcow2", - "image_type": "qcow2", - "init_config": { - "amqp_server": "192.168.188.10", - "ctrl_ip_setting": "192.168.188.200/23", - "ctrl_gw": "192.168.188.1" - }, - "taps": [ - { - "tap_name": "tap1", - "br_type": "ovs", - "br_name": "ovs1", - "tap_mac": "56:6f:44:a5:3f:a2", - "vlan_mode": "access", - "vlan_id": "100" - } - ] - }, - { - "vm_cpu": 3, - "vm_name": "test2", - "vm_memory": 4194304, - "image_path": "/mnt/sdb/test2.qcow2", - "image_type": "qcow2", - "init_config": { - "amqp_server": "192.168.188.10", - "ctrl_ip_setting": "192.168.188.201/23", - "ctrl_gw": "192.168.188.1" - }, - "taps": [ - { - "tap_name": "tap2", - "br_type": "ovs", - "br_name": "ovs1", - "tap_mac": "56:6f:44:a5:3f:a3", - "vlan_mode": "access", - "vlan_id": "100" - } - ] - } - ], - "bridges": [ - { - "type": "ovs", - "name": "ovs1", - "uplinks": [], - "vtep": {}, - "fastlink": [ - { - "inport": "tap1", - "outport": "tap2" - } - ] - } - ] - } - ] -}
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/model.py b/vstf/vstf/agent/unittest/env/model.py deleted file mode 100755 index e3c2bca6..00000000 --- a/vstf/vstf/agent/unittest/env/model.py +++ /dev/null @@ -1,24 +0,0 @@ -""" -Created on 2015-10-9 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest import configuration - - -class Test(unittest.TestCase): - def setUp(self): - self.eth_for_test = configuration.eth_for_test - self.mac_of_eth = configuration.mac_of_eth - self.source_repo = configuration.source_repo - self.bdf_of_eth = configuration.bdf_of_eth - - def tearDown(self): - pass - - -if __name__ == "__main__": - # import sys;sys.argv = ['', 'Test.testName'] - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/run_test.py b/vstf/vstf/agent/unittest/env/run_test.py deleted file mode 100755 index 0f630c7d..00000000 --- a/vstf/vstf/agent/unittest/env/run_test.py +++ /dev/null @@ -1,33 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest -import importlib - -test_order_list = [ - "vstf.agent.unittest.env.test_origin_driver", - "vstf.agent.unittest.env.test_bridge_plugin", - "vstf.agent.unittest.env.test_drivermanager", - "vstf.agent.unittest.env.test_devicemanager", - "vstf.agent.unittest.env.test_vs_plugin_manager", - "vstf.agent.unittest.env.test_builder", - "vstf.agent.unittest.env.test_sourcemanager", -] - - -def main(): - import logging - logging.getLogger(__name__) - logging.basicConfig(level=logging.INFO) - suite = unittest.TestSuite() - for mod_name in test_order_list: - mod = importlib.import_module(mod_name) - suit = unittest.TestLoader().loadTestsFromModule(mod) - suite.addTest(suit) - unittest.TextTestRunner().run(suite) - - -if __name__ == '__main__': - main() diff --git a/vstf/vstf/agent/unittest/env/test_bridge_plugin.py b/vstf/vstf/agent/unittest/env/test_bridge_plugin.py deleted file mode 100755 index ac4eb268..00000000 --- a/vstf/vstf/agent/unittest/env/test_bridge_plugin.py +++ /dev/null @@ -1,56 +0,0 @@ -""" -Created on 2015-10-12 - -@author: y00228926 -""" -import unittest - -from vstf.common.utils import check_call -from vstf.agent.unittest.env import model -from vstf.agent.env.vswitch_plugins import bridge_plugin -from vstf.agent.env.driver_plugins import manager - - -class Test(model.Test): - def setUp(self): - super(Test, self).setUp() - self.plugin = bridge_plugin.BridgePlugin() - self.dr_mgr = manager.DriverPluginManager() - self.br_cfg = { - "name": "br1", - "uplinks": [ - { - "bdf": self.bdf_of_eth[0], - }, - { - "bdf": self.bdf_of_eth[1], - } - ] - } - self.dr_mgr.clean() - self.dr_mgr.load(['ixgbe']) - - def tearDown(self): - super(Test, self).tearDown() - - def _check_br_exists(self, name): - try: - check_call('ifconfig %s' % name, shell=True) - except Exception, e: - return False - return True - - def test_create_br(self): - self.plugin.clean() - self.plugin.create_br(self.br_cfg) - self.assertTrue(self._check_br_exists(self.br_cfg['name'])) - self.plugin.clean() - self.assertFalse(self._check_br_exists(self.br_cfg['name'])) - - -if __name__ == "__main__": - import logging - - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_builder.py b/vstf/vstf/agent/unittest/env/test_builder.py deleted file mode 100755 index fd2d4382..00000000 --- a/vstf/vstf/agent/unittest/env/test_builder.py +++ /dev/null @@ -1,74 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest -import os - -from vstf.controller.env_build.cfg_intent_parse import IntentParser -from vstf.agent.env import builder - - -class Test(unittest.TestCase): - def setUp(self): - self.mgr = builder.PluginManager() - self.dir = os.path.dirname(__file__) - - def tearDown(self): - self.mgr.clean() - - def __build(self, filepath, drivers=None): - parser = IntentParser(filepath) - cfg_intent = parser.parse_cfg_file() - host_cfg = cfg_intent['env-build'][0] - print filepath - print host_cfg - host_cfg["src-install"] = {} - if drivers: - host_cfg['drivers'] = drivers - return self.mgr.build(host_cfg) - - def test_build_tn_using_origin_driver(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tn.json'), drivers=['ixgbe']) - self.assertTrue(ret, "test_build_tn_using_origin_driver failed, ret = %s" % ret) - - def test_build_tn1v_using_origin_driver(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tn1v.json'), drivers=['ixgbe', 'vhost_net']) - self.assertTrue(ret, "test_build_tn1v_using_origin_driver failed, ret = %s" % ret) - - def test_build_ti_using_origin_driver(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Ti.json'), drivers=['ixgbe', 'vhost_net']) - self.assertTrue(ret, "test_build_ti_using_origin_driver failed, ret = %s" % ret) - - def test_build_tu_using_origin_driver(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tu.json'), drivers=['vhost_net']) - self.assertTrue(ret, "test_build_ti_using_origin_driver failed, ret = %s" % ret) - - @unittest.skip('can be tested by tn1v') - def test_build_tn(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tn.json')) - self.assertTrue(ret, "test_build_tn failed, ret = %s" % ret) - - @unittest.skip('can be tested by tn1v') - def test_build_tn1v(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tn1v.json')) - self.assertTrue(ret, "test_build_tn failed,ret = %s" % ret) - - @unittest.skip('can be tested by tn1v') - def test_build_ti(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Ti.json')) - self.assertTrue(ret, "test_build_tn failed, ret = %s" % ret) - - @unittest.skip('can be tested by tn1v') - def test_build_tu(self): - ret = self.__build(os.path.join(self.dir, 'configuration/Tu.json')) - self.assertTrue(ret, "test_build_tn failed, ret = %s" % ret) - - -if __name__ == "__main__": - import logging - - LOG = logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_devicemanager.py b/vstf/vstf/agent/unittest/env/test_devicemanager.py deleted file mode 100755 index 7e5bc3b1..00000000 --- a/vstf/vstf/agent/unittest/env/test_devicemanager.py +++ /dev/null @@ -1,38 +0,0 @@ -""" -Created on 2015-9-25 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.env import model -from vstf.agent.env.basic.device_manager import DeviceManager - - -class Test(model.Test): - def setUp(self): - super(Test, self).setUp() - self.dm = DeviceManager() - self.device_list = self.dm.list_nic_devices() - self.device_detail = self.device_list[0] - - def tearDown(self): - super(Test, self).tearDown() - - def test_get_device_detail(self): - detail1 = self.dm.get_device_detail(self.device_detail['bdf']) - detail2 = self.dm.get_device_detail(self.device_detail['mac']) - detail3 = self.dm.get_device_detail(self.device_detail['device']) - self.assertTrue(detail1 == detail2 == detail3 == self.device_detail) - - def test_list_nic_devices(self): - import json - print json.dumps(self.device_list, indent=4) - - -if __name__ == "__main__": - import logging - - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_drivermanager.py b/vstf/vstf/agent/unittest/env/test_drivermanager.py deleted file mode 100755 index df6ad5df..00000000 --- a/vstf/vstf/agent/unittest/env/test_drivermanager.py +++ /dev/null @@ -1,50 +0,0 @@ -""" -Created on 2015-10-9 - -@author: y00228926 -""" -import unittest - -from vstf.common.utils import check_output -from vstf.agent.unittest.env import model -from vstf.agent.env.driver_plugins import manager - - -class Test(model.Test): - def setUp(self): - super(Test, self).setUp() - self.driver_mgr = manager.DriverPluginManager() - - def tearDown(self): - super(Test, self).tearDown() - - def _driver_exists(self, drivers=[]): - all_drivers = check_output("lsmod | awk '{print $1}'", shell=True).split() - for mod in drivers: - if mod not in all_drivers: - return False - return True - - def test_load(self): - self.driver_mgr.clean() - for _, drivers in self.driver_mgr.get_all_supported_drivers().items(): - self.assertFalse(self._driver_exists(drivers)) - - - self.driver_mgr.load(['ixgbe', 'vhost_net']) - self.assertTrue(self._driver_exists(['ixgbe', 'vhost_net'])) - - self.driver_mgr.clean() - self.assertFalse(self._driver_exists(['ixgbe', 'vhost_net'])) - - def test_load_unsuported_pair(self): - with self.assertRaises(Exception): - self.driver_mgr.load(['ixgbe', 'tap_vhost']) - - -if __name__ == "__main__": - import logging - - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_origin_driver.py b/vstf/vstf/agent/unittest/env/test_origin_driver.py deleted file mode 100755 index 8daa481f..00000000 --- a/vstf/vstf/agent/unittest/env/test_origin_driver.py +++ /dev/null @@ -1,44 +0,0 @@ -""" -Created on 2015-10-9 - -@author: y00228926 -""" -import unittest - -from vstf.common.utils import check_output -from vstf.agent.unittest.env import model -from vstf.agent.env.driver_plugins import origin_driver - - -class Test(model.Test): - - def setUp(self): - super(Test, self).setUp() - self.driver_mgr = origin_driver.OriginDriverPlugin() - - def tearDown(self): - super(Test, self).tearDown() - - def _driver_exists(self, drivers=[]): - all_drivers = check_output("lsmod | awk '{print $1}'",shell = True).split() - for mod in drivers: - if mod not in all_drivers: - return False - return True - - def test_load(self): - self.driver_mgr.clean() - self.assertFalse(self._driver_exists(self.driver_mgr.get_supported_drivers())) - - self.driver_mgr.load(['ixgbe','vhost_net']) - self.assertTrue(self._driver_exists(['ixgbe','vhost_net'])) - - self.driver_mgr.clean() - self.assertFalse(self._driver_exists(self.driver_mgr.get_supported_drivers())) - - -if __name__ == "__main__": - import logging - logging.basicConfig(level = logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/test_sourcemanager.py b/vstf/vstf/agent/unittest/env/test_sourcemanager.py deleted file mode 100755 index fda567d8..00000000 --- a/vstf/vstf/agent/unittest/env/test_sourcemanager.py +++ /dev/null @@ -1,53 +0,0 @@ -""" -Created on 2015-10-9 - -@author: y00228926 -""" -import unittest -import shutil -import time -import os - -from vstf.agent.env.basic.source_manager import SourceCodeManager -from vstf.agent.unittest.env import model - - -class TestSourceManager(model.Test): - def setUp(self): - super(TestSourceManager, self).setUp() - self.sm = SourceCodeManager() - self.dest_path = '/tmp/test_source_manager' - os.mkdir(self.dest_path) - - def tearDown(self): - shutil.rmtree(self.dest_path, ignore_errors = True) - - def _time(self,func): - def _deco(*args): - start_time = time.time() - func(*args) - end_time = time.time() - return end_time - start_time - return _deco - - def test_download_source_code(self): - for key, item in self.source_repo.items(): - print self.source_repo - url = item['url'] - target = os.path.join(self.dest_path, key) - install = item['install'] - if install: - self.sm._git_pull(url, target) - self.assertTrue(os.path.isdir(target)) - my_download = self._time(self.sm._git_pull) - t = my_download(url, target) - self.assertTrue(t < 1.0) - else: - self.assertFalse(os.path.isdir(target)) - - -if __name__ == "__main__": - import logging - logging.basicConfig(level = logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/env/test_vm9pfs.py b/vstf/vstf/agent/unittest/env/test_vm9pfs.py deleted file mode 100755 index 4f520133..00000000 --- a/vstf/vstf/agent/unittest/env/test_vm9pfs.py +++ /dev/null @@ -1,71 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.env import model -from vstf.agent.env.basic.vm9pfs import VMConfigBy9pfs -from vstf.agent.env.basic.vm_manager import VMControlOperation - - -class TestVM9pfs(model.Test): - def setUp(self): - super(TestVM9pfs, self).setUp() - self.vm_config = { - 'vm_name': 'vm1', - 'vm_cpu': 5, - 'image_path': "/mnt/sdb/ubuntu_salt_master.img", - 'child_dir': '/mnt/sdb/', - 'image_type': 'qcow2', - 'ctrl_br': 'br0', - 'ctrl_mac': '56:6f:44:a5:3f:a4', - "taps": [ - { - "tap_name": "tap_in", - "br_type": "bridge", - "br_name": "br0", - "tap_mac": "56:6f:44:a5:3f:a2", - }, - { - "tap_name": "tap_out", - "br_type": "bridge", - "br_name": "br0", - "tap_mac": "56:6f:44:a5:3f:a3", - } - ], - 'init_config': {} - } - self.init_config = { - 'amqp_server': '192.168.188.10', - 'ctrl_ip_setting': '192.168.188.200/23', - 'tap_pktloop_config': 'dpdk', - 'ctrl_gw': '192.168.188.1' - } - self.mgr = VMControlOperation() - self.mgr.clean_all_vms() - self.mgr.create_vm(self.vm_config) - self.mgr.wait_vm(self.vm_config["vm_name"]) - self.vm9pctrl = self.mgr.vm_9p_controllers[self.vm_config["vm_name"]] - - def tearDown(self): - self.mgr.clean_all_vms() - super(TestVM9pfs, self).tearDown() - - def test_init_config(self): - ret = self.vm9pctrl.config_ip(self.vm_config['ctrl_mac'], self.init_config['ctrl_ip_setting']) - self.assertTrue(ret) - ret = self.vm9pctrl.config_gw(self.init_config['ctrl_gw']) - self.assertTrue(ret) - ret = self.vm9pctrl.set_pktloop_dpdk([self.vm_config['taps'][0]['tap_mac'], self.vm_config['taps'][1]['tap_mac']]) - self.assertTrue(ret) - ret = self.vm9pctrl.config_amqp(self.init_config['ctrl_ip_setting'].split('/')[0], self.init_config['amqp_server']) - self.assertTrue(ret) - - -if __name__ == "__main__": - import logging - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_vm_manager.py b/vstf/vstf/agent/unittest/env/test_vm_manager.py deleted file mode 100755 index 3c3deacc..00000000 --- a/vstf/vstf/agent/unittest/env/test_vm_manager.py +++ /dev/null @@ -1,69 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.env import model -from vstf.agent.env.basic.vm9pfs import VMConfigBy9pfs -from vstf.agent.env.basic.vm_manager import VMControlOperation - - -class TestVM9pfs(model.Test): - def setUp(self): - super(TestVM9pfs, self).setUp() - self.vm_config = { - 'vm_name': 'vm1', - 'vm_cpu': 5, - 'image_path': "/mnt/sdb/ubuntu_salt_master.img", - 'child_dir': '/mnt/sdb/', - 'image_type': 'qcow2', - 'ctrl_br': 'br0', - 'ctrl_mac': '56:6f:44:a5:3f:a4', - "taps": [ - { - "tap_name": "tap_in", - "br_type": "bridge", - "br_name": "br0", - "tap_mac": "56:6f:44:a5:3f:a2", - }, - { - "tap_name": "tap_out", - "br_type": "bridge", - "br_name": "br0", - "tap_mac": "56:6f:44:a5:3f:a3", - } - ], - 'init_config': { - "amqp_passwd": "guest", - "amqp_user": "guest", - "amqp_server": "192.168.188.10", - "amqp_port": 5672, - 'ctrl_ip_setting': '192.168.188.200/23', - 'tap_pktloop_config': 'dpdk', - 'ctrl_gw': '192.168.188.1' - } - } - self.mgr = VMControlOperation() - self.mgr.clean_all_vms() - - def tearDown(self): - self.mgr.clean_all_vms() - super(TestVM9pfs, self).tearDown() - - def test_create_vm_bridge(self): - self.mgr.create_vm(self.vm_config) - self.mgr.wait_vm(self.vm_config["vm_name"]) - self.mgr.init_config_vm(self.vm_config["vm_name"]) - - def _replace_opts(self, cfg, br_type): - for tap_cfg in cfg["taps"]: - tap_cfg["br_type"] = br_type - - -if __name__ == "__main__": - import logging - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/env/test_vs_plugin_manager.py b/vstf/vstf/agent/unittest/env/test_vs_plugin_manager.py deleted file mode 100755 index f78c3e7d..00000000 --- a/vstf/vstf/agent/unittest/env/test_vs_plugin_manager.py +++ /dev/null @@ -1,68 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.env import model -from vstf.agent.env.vswitch_plugins import manager -from vstf.common.utils import check_call - - -class TestVsPlugins(model.Test): - def setUp(self): - super(TestVsPlugins, self).setUp() - self.cfg = { - "type": "ovs", - "name": "ovs1", - "uplinks": [ - { - "bdf": self.bdf_of_eth[0], - "vlan_mode": "trunk", - "vlan_id": "100,200,300,400" - }, - { - "bdf": self.bdf_of_eth[1], - "vlan_mode": "trunk", - "vlan_id": "100,200,300,400" - } - ], - "vtep": {} - } - self.mgr = manager.VswitchPluginManager() - - def tearDown(self): - super(TestVsPlugins, self).tearDown() - - def _check_br_exists(self, name): - try: - check_call('ifconfig %s' % name, shell=True) - except Exception, e: - return False - return True - - def test_create_bridge(self): - self.cfg['name'] = 'br1' - self.br = self.mgr.get_vs_plugin('bridge') - self.br.clean() - self.br.init() - self.br.create_br(self.cfg) - self.assertTrue(self._check_br_exists('br1')) - self.br.clean() - self.assertFalse(self._check_br_exists('br1')) - - def test_clean(self): - self.mgr.clean() - - def test_get_supported_plugins(self): - ret = self.mgr.get_supported_plugins() - self.assertEqual(set(ret), {'bridge', 'ovs'}) - - -if __name__ == "__main__": - import logging - - logging.basicConfig(level=logging.INFO) - LOG = logging.getLogger(__name__) - unittest.main() diff --git a/vstf/vstf/agent/unittest/perf/Readme b/vstf/vstf/agent/unittest/perf/Readme deleted file mode 100755 index 3ebe6c49..00000000 --- a/vstf/vstf/agent/unittest/perf/Readme +++ /dev/null @@ -1,7 +0,0 @@ -To enable Perf unittest, please make sure: - - 1. you have setup a "Tn virtual network" on Target Host, so you can ping from one nic to the other nic. - 2. change options in "unittest/configuration.py". - -run tests: - python run_test.py
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/perf/__init__.py b/vstf/vstf/agent/unittest/perf/__init__.py deleted file mode 100755 index 89dcd4e2..00000000 --- a/vstf/vstf/agent/unittest/perf/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -# Copyright Huawei Technologies Co., Ltd. 1998-2015. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the License); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an AS IS BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. diff --git a/vstf/vstf/agent/unittest/perf/model.py b/vstf/vstf/agent/unittest/perf/model.py deleted file mode 100755 index 6383ae0c..00000000 --- a/vstf/vstf/agent/unittest/perf/model.py +++ /dev/null @@ -1,46 +0,0 @@ -""" -Created on 2015-9-25 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest import configuration -from vstf.agent.perf import netns - - -class LocalModel(unittest.TestCase): - def _ping(self): - device_list, ns_list, ip_setting_list, ip_list = self.device_list, self.ns_list, self.ip_setting_list, self.ip_list - for ns, dev, ip_setting in zip(ns_list, device_list, ip_setting_list): - netdev = { - "namespace": ns, - "iface": dev, - 'ip_setting': ip_setting - } - self.mgr.config_dev(netdev) - ip_list_copy = ip_list[:] - ip_list_copy.reverse() - for ns, ip in zip(ns_list, ip_list_copy): - self.assertTrue(sself.mgr.ping(ns, ip), True) - self.mgr.clean_all_namespace() - - def setUp(self): - # make sure you have set up Tn loop on the "Target Host" - self.mgr = netns.NetnsManager() - self.mgr.clean_all_namespace() - self.device_list = configuration.eth_for_test - self.mac_list = configuration.mac_of_eth - self.ns_list = ['send', 'receive'] - self.ip_setting_list = ['192.168.1.1/24', '192.168.1.2/24'] - self.ip_list = ['192.168.1.1', '192.168.1.2'] - - def tearDown(self): - self.mgr.clean_all_namespace() - - -class Model(LocalModel): - def setUp(self): - # make sure you have set up Tn loop on the "Target Host" - super(Model, self).setUp() - self._ping() diff --git a/vstf/vstf/agent/unittest/perf/run_test.py b/vstf/vstf/agent/unittest/perf/run_test.py deleted file mode 100755 index 684ca183..00000000 --- a/vstf/vstf/agent/unittest/perf/run_test.py +++ /dev/null @@ -1,32 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest -import importlib - -test_order_list = [ - "vstf.agent.unittest.perf.test_utils", - "vstf.agent.unittest.perf.test_netns", - "vstf.agent.unittest.perf.test_netperf", - "vstf.agent.unittest.perf.test_qperf", - "vstf.agent.unittest.perf.test_pktgen", - "vstf.agent.unittest.perf.test_vstfperf", -] - - -def main(): - import logging - logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - suite = unittest.TestSuite() - for mod_name in test_order_list: - mod = importlib.import_module(mod_name) - suit = unittest.TestLoader().loadTestsFromModule(mod) - suite.addTest(suit) - unittest.TextTestRunner().run(suite) - - -if __name__ == '__main__': - main() diff --git a/vstf/vstf/agent/unittest/perf/test_ethtool.py b/vstf/vstf/agent/unittest/perf/test_ethtool.py deleted file mode 100755 index 48e0d7f6..00000000 --- a/vstf/vstf/agent/unittest/perf/test_ethtool.py +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf8 -*- -# author: wly -# date: 2015/11/13 -# see license for license details - -import unittest -import logging -from vstf.agent.perf import ethtool -from vstf.agent.unittest import configuration -from vstf.common.log import setup_logging - - -LOG = logging.getLogger(__name__) - - -class Testethtool(unittest.TestCase): - def setUp(self): - LOG.info("start Testethtool unit test.") - self._devices = configuration.eth_for_test - super(Testethtool, self).setUp() - - def teardown(self): - LOG.info("stop Testethtool unit test.") - -# @unittest.skip('for now') - def test_autoneg_on(self): - for dev in self._devices: - self.assertTrue(ethtool.autoneg_on(dev), True) - - def test_autoneg_off(self): - for dev in self._devices: - self.assertTrue(ethtool.autoneg_off(dev), True) - - def test_autoneg_query(self): - for dev in self._devices: - result = ethtool.autoneg_query(dev) - LOG.info(result) - -if __name__ == "__main__": - setup_logging(level=logging.INFO, log_file="/var/log/vstf/vstf-unit-test.log", clevel=logging.INFO) - unittest.main() diff --git a/vstf/vstf/agent/unittest/perf/test_netns.py b/vstf/vstf/agent/unittest/perf/test_netns.py deleted file mode 100755 index 912358bd..00000000 --- a/vstf/vstf/agent/unittest/perf/test_netns.py +++ /dev/null @@ -1,67 +0,0 @@ -""" -Created on 2015-9-23 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.perf import model -from vstf.agent.perf import netns - - -class TestNetnsManager(model.Model): - def setUp(self): - super(TestNetnsManager, self).setUp() - self.ns = netns.Netns() - - def tearDown(self): - super(TestNetnsManager, self).tearDown() - - def testNetns(self): - device_list,ns_list,ip_setting_list,ip_list = self.device_list,self.ns_list,self.ip_setting_list,self.ip_list - net = self.ns - for ns in ns_list: - self.assertTrue(net.create_namespace(ns),'create_namespace failed') - for ns,dev,ip_setting in zip(ns_list,device_list,ip_setting_list): - self.assertTrue(net.add_device(ns, dev),'add_device failed') - self.assertTrue(net.activate_device(ns,dev),'activate_device failed') - self.assertTrue(net.config_ip(ns,dev,ip_setting),'config_ip failed') - for ns in ns_list: - self.assertTrue(net.remove_namespace(ns),'remove_namespace failed') - - def testNetNsManager(self): - mgr = self.mgr - device_list,ns_list,ip_setting_list,ip_list = self.device_list,self.ns_list,self.ip_setting_list,self.ip_list - for ns,dev,ip_setting in zip(ns_list,device_list,ip_setting_list): - netdev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - ret = mgr.config_dev(netdev) - self.assertTrue(ret,"config_dev failed, netdev=%s" % netdev) - - for ns,dev,ip_setting in zip(ns_list,device_list,ip_setting_list): - netdev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - self.assertTrue(mgr.recover_dev(netdev),"recover_dev failed, netdev=%s" % netdev) - - for ns,dev,ip_setting in zip(ns_list,device_list,ip_setting_list): - netdev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - self.assertTrue(mgr.config_dev(netdev),"config_dev failed, netdev=%s" % netdev) - self.assertTrue(mgr.clean_all_namespace(),'remove_namespace failed') - - -if __name__ == "__main__": - import logging - LOG = logging.getLogger(__name__) - logging.basicConfig(level = logging.DEBUG) - #import sys;sys.argv = ['', 'Test.testName'] - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/perf/test_netperf.py b/vstf/vstf/agent/unittest/perf/test_netperf.py deleted file mode 100755 index b5f8cb2a..00000000 --- a/vstf/vstf/agent/unittest/perf/test_netperf.py +++ /dev/null @@ -1,105 +0,0 @@ -''' -Created on 2015-9-24 - -@author: y00228926 -''' -import unittest -import time -import subprocess - -from vstf.agent.unittest.perf import model -from vstf.agent.perf import netperf -from vstf.agent.perf.utils import get_pid_by_name - - -class TestNetperf(model.Model): - ''' - please make sure 'Tn' network on 'Target Host' is created. - ''' - def setUp(self): - super(TestNetperf, self).setUp() - subprocess.call("killall netperf", shell = True) - subprocess.call("killall netserver",shell = True) - for ns, dev, ip_setting in zip(self.ns_list, self.device_list, self.ip_setting_list): - netdev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - self.mgr.config_dev(netdev) - self.send_cfg = { - "namespace": "send", - "protocol": "udp_bw", - "dst":[ - {"ip": "192.168.1.2"} - ], - "size": 64, - "threads": 1, - "time": 10, - } - - def tearDown(self): - super(TestNetperf, self).tearDown() - - def test_netperf_start_success(self): - perf = netperf.Netperf() - ret = perf.receive_start(namespace='receive') - exp = (0, 'start netserver success') - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - ret = perf.send_start(**self.send_cfg) - exp = (0,"start netperf send success") - self.assertEqual(ret, exp, "failed to start netperf") - - time.sleep(3) - - ret = perf.send_stop() - exp = [(0, "process is stopped by killed")] - self.assertEqual(ret, exp, "send_stop failed, ret = %s" % str(ret)) - - ret = perf.receive_stop() - exp = (0, "stop netserver success") - self.assertEqual(ret, exp, "receive_stop failedf, ret = %s" % str(ret)) - - def test_netperf_start_success_mutil_threads(self): - perf = netperf.Netperf() - ret = perf.receive_start(namespace='receive') - exp = (0, 'start netserver success') - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - self.send_cfg.update({"threads":3}) - exp = (0,"start netperf send success") - ret = perf.send_start(**self.send_cfg) - self.assertEqual(ret, exp, "failed to start netperf") - - time.sleep(3) - - rets = perf.send_stop() - exp = [(0, 'process is stopped by killed'), (0, 'process is stopped by killed'), (0, 'process is stopped by killed')] - self.assertEqual(rets, exp, "send_stop failed, rets = %s" % str(rets)) - - rets = perf.receive_stop() - self.assertEqual(rets, (0, "stop netserver success"), "receive_stop failedf, rets = %s" % str(rets)) - - def test_clean(self): - perf = netperf.Netperf() - ret = perf.receive_start(namespace='receive') - exp = (0, 'start netserver success') - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - self.send_cfg.update({"threads":3}) - exp = (0,"start netperf send success") - ret = perf.send_start(**self.send_cfg) - self.assertEqual(ret, exp, "failed to start netperf") - perf.clean() - ret = get_pid_by_name('netperf') - self.assertEqual(ret, [], "failed to clean netperf") - ret = get_pid_by_name('netserver') - self.assertEqual(ret, [], "failed to clean netserver") - -if __name__ == "__main__": - import logging - logging.getLogger(__name__) - logging.basicConfig(level = logging.DEBUG) - #import sys;sys.argv = ['', 'Test.testName'] - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/perf/test_pktgen.py b/vstf/vstf/agent/unittest/perf/test_pktgen.py deleted file mode 100755 index 5e6cdf76..00000000 --- a/vstf/vstf/agent/unittest/perf/test_pktgen.py +++ /dev/null @@ -1,90 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest -import time - -from vstf.agent.unittest.perf import model -from vstf.agent.perf import pktgen - - -class TestPktgen(model.Model): - def setUp(self): - super(TestPktgen, self).setUp() - - def tearDown(self): - super(TestPktgen, self).tearDown() - - def test_single_thread(self): - perf = pktgen.Pktgen() - print perf.receive_start() - send = { - "src": [ - {"iface": self.device_list[0], "mac": self.mac_list[0]} - ], - "dst": [ - {"mac": self.mac_list[1]} - ], - "size": 64, - "threads": 1, - 'ratep': 0 - } - ret = perf.send_start(**send) - self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret)) - time.sleep(5) - ret = perf.send_stop() - self.assertEqual([(0, '')], ret, "send_start failed, ret=%s" % ret) - ret = perf.receive_stop() - self.assertEqual((0, 'pktgen neednt receive stop'), ret, "send_stop failed, ret=%s" % str(ret)) - - def test_single_thread_bidirectional(self): - perf = pktgen.Pktgen() - print perf.receive_start() - send = { - "src": [ - {"iface": self.device_list[0], "mac": self.mac_list[0]}, - {"iface": self.device_list[1], "mac": self.mac_list[1]} - ], - "dst": [ - {"mac": self.mac_list[1]}, - {"mac": self.mac_list[0]} - ], - "size": 64, - "threads": 1, - 'ratep': 0 - } - ret = perf.send_start(**send) - self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret)) - time.sleep(5) - ret = perf.send_stop() - self.assertEqual([(0, '')], ret, "send_start failed, ret=%s" % ret) - ret = perf.receive_stop() - self.assertEqual((0, 'pktgen neednt receive stop'), ret, "send_stop failed, ret=%s" % str(ret)) - - def test_clean(self): - perf = pktgen.Pktgen() - print perf.receive_start() - send = { - "src": [ - {"iface": self.device_list[0], "mac": self.mac_list[0]} - ], - "dst": [ - {"mac": self.mac_list[1]} - ], - "size": 64, - "threads": 1, - 'ratep': 0 - } - ret = perf.send_start(**send) - self.assertEqual((0, 'start pktgen send success'), ret, "send_start failed, ret=%s" % str(ret)) - perf.clean() - - -if __name__ == "__main__": - import logging - - logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - unittest.main() diff --git a/vstf/vstf/agent/unittest/perf/test_qperf.py b/vstf/vstf/agent/unittest/perf/test_qperf.py deleted file mode 100755 index ec9a290d..00000000 --- a/vstf/vstf/agent/unittest/perf/test_qperf.py +++ /dev/null @@ -1,102 +0,0 @@ -''' -Created on 2015-9-24 - -@author: y00228926 -''' -import unittest -import subprocess -import time - -from vstf.agent.unittest.perf import model -from vstf.agent.perf import qperf -from vstf.agent.perf.utils import get_pid_by_name - - -class testQperf(model.Model): - def setUp(self): - super(testQperf, self).setUp() - subprocess.call("killall qperf", shell = True) - for ns, dev, ip_setting in zip(self.ns_list, self.device_list, self.ip_setting_list): - netdev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - self.mgr.config_dev(netdev) - self.send_cfg = { - "namespace": self.ns_list[0], - "time":1, - "protocol": "udp_lat", - "dst":[ - {"ip": self.ip_list[1]} - ], - "size": 64, - } - - def tearDown(self): - super(testQperf, self).tearDown() - - def test_qperf_quick(self): - perf = qperf.Qperf() - ret = perf.receive_start(namespace=self.ns_list[1]) - exp = (0, "start qperf receive success") - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - ret = perf.send_start(**self.send_cfg) - exp = (0,"start qperf send success") - self.assertEqual(ret, exp, "send_start failed") - - time.sleep(3) - - ret = perf.send_stop() - for r in ret: - self.assertEqual(r[0], 0, "send_stop failed, ret = %s" % str(ret)) - for key in ('MaximumLatency', 'AverageLatency', 'MinimumLatency'): - self.assertIn(key, r[1], "send_stop failed, ret = %s" % str(ret)) - - ret = perf.receive_stop() - exp = (0, "stop qperf receive success") - self.assertEqual(ret, exp, "receive_stop failed, ret = %s" % str(ret)) - - def test_qperf_quick_3s(self): - perf = qperf.Qperf() - self.send_cfg.update({"time":3}) - ret = perf.receive_start(namespace='receive') - exp = (0, 'start qperf receive success') - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - self.send_cfg.update({"threads":3}) - exp = (0,"start qperf send success") - ret = perf.send_start(**self.send_cfg) - self.assertEqual(ret, exp, "send_start failed %s" % str(ret)) - - ret = perf.send_stop() - for r in ret: - self.assertEqual(r[0], 0, "send_stop failed, ret = %s" % str(ret)) - for key in ('MaximumLatency', 'AverageLatency', 'MinimumLatency'): - self.assertIn(key, r[1], "send_stop failed, ret = %s" % str(ret)) - - ret = perf.receive_stop() - self.assertEqual(ret, (0, 'stop qperf receive success'), "receive_stop failedf, ret = %s" % str(ret)) - - def test_clean(self): - perf = qperf.Qperf() - self.send_cfg.update({"time":10}) - ret = perf.receive_start(namespace=self.ns_list[1]) - exp = (0, "start qperf receive success") - self.assertEqual(ret, exp, "receive_start failed %s" % str(ret)) - - ret = perf.send_start(**self.send_cfg) - exp = (0,"start qperf send success") - self.assertEqual(ret, exp, "send_start failed") - - perf.clean() - ret = get_pid_by_name('qperf') - self.assertEqual(ret, [], "clean qperf failed") - - -if __name__ == "__main__": - import logging - logging.getLogger(__name__) - logging.basicConfig(level = logging.DEBUG) - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/perf/test_utils.py b/vstf/vstf/agent/unittest/perf/test_utils.py deleted file mode 100755 index 83410c54..00000000 --- a/vstf/vstf/agent/unittest/perf/test_utils.py +++ /dev/null @@ -1,31 +0,0 @@ -""" -Created on 2015-9-24 - -@author: y00228926 -""" -import unittest -from vstf.common import utils - - -class TestUtils(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - pass - - def test_ns_cmd(self): - cmd = "ls" - ns = "xx" - exp_cmd = "ip netns exec xx ls" - ret = utils.ns_cmd(ns, cmd) - self.assertEqual(ret, exp_cmd, "ns_cmd failed to add ns header prefix:%s != %s" % (ret, exp_cmd)) - - -if __name__ == "__main__": - import logging - - logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - # import sys;sys.argv = ['', 'Test.testName'] - unittest.main() diff --git a/vstf/vstf/agent/unittest/perf/test_vnstat.py b/vstf/vstf/agent/unittest/perf/test_vnstat.py deleted file mode 100755 index f7c31f5b..00000000 --- a/vstf/vstf/agent/unittest/perf/test_vnstat.py +++ /dev/null @@ -1,57 +0,0 @@ -""" -Created on 2015-9-23 - -@author: y00228926 -""" -import unittest -import time - -from vstf.agent.perf.utils import get_pid_by_name -from vstf.agent.unittest.perf import model -from vstf.agent.perf import vnstat - - -class TestVnstat(model.LocalModel): - def setUp(self): - super(TestVnstat, self).setUp() - self.vnstat = vnstat.VnStat() - self.namespace = self.ns_list[0] - self.device = self.device_list[0] - self.ip_setting = self.ip_setting_list[0] - netdev = { - "namespace": self.namespace, - "iface": self.device, - 'ip_setting': self.ip_setting - } - self.mgr.config_dev(netdev) - - def tearDown(self): - super(TestVnstat, self).tearDown() - - def test_run_vnstat(self): - logging.basicConfig(level=logging.DEBUG) - pid = self.vnstat.run_vnstat(self.device, self.namespace) - time.sleep(12) - raw = self.vnstat.kill_vnstat(pid, self.namespace) - print raw['raw_data'] - data = self.vnstat.process(raw['raw_data']) - self.assertTrue(type(data) is dict) - for key in ('rxmB/s', 'txmB', 'rxpck', 'txpck', \ - 'rxpck_min/s', 'txmB_max/s', 'txpck_max/s', \ - 'txmB/s', 'rxmB', 'rxmB_max/s', 'rxpck/s', 'rxmB_min/s', \ - 'time', 'rxpck_max/s', 'txpck_min/s', 'txpck/s', 'txmB_min/s'): - self.assertTrue(key in data) - - def test_clean(self): - self.vnstat.run_vnstat(self.device, self.namespace) - self.vnstat.clean() - self.assertTrue(get_pid_by_name('vnstat') == []) - - -if __name__ == "__main__": - import logging - - LOG = logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - # import sys;sys.argv = ['', 'Test.testName'] - unittest.main() diff --git a/vstf/vstf/agent/unittest/perf/test_vstfperf.py b/vstf/vstf/agent/unittest/perf/test_vstfperf.py deleted file mode 100755 index 30d7c7fd..00000000 --- a/vstf/vstf/agent/unittest/perf/test_vstfperf.py +++ /dev/null @@ -1,98 +0,0 @@ -""" -Created on 2015-9-28 - -@author: y00228926 -""" -import unittest - -from vstf.agent.perf.vstfperf import Vstfperf -from vstf.agent.unittest.perf import model - - -class Test(model.Model): - def setUp(self): - super(Test, self).setUp() - - for ns, dev, ip_setting in zip(self.ns_list, self.device_list, self.ip_setting_list): - net_dev = { - "namespace":ns, - "iface":dev, - 'ip_setting':ip_setting - } - self.mgr.config_dev(net_dev) - - self.start = { - "operation": "start", - "action": "send", - "tool": "netperf", - "params":{ - "namespace": self.ns_list[0], - "protocol": "tcp_lat", - "dst":[ - {"ip": self.ip_list[1]} - ], - "size": 64, - "threads": 1, - "time": 1, - }, - } - self.stop = { - "operation": "stop", - "action": "send", - "tool": "netperf", - "params":{ - "namespace": self.ns_list[1], - }, - } - - def tearDown(self): - super(Test, self).tearDown() - - def testNetperf(self): - perf = Vstfperf() - self.start['tool'] = 'netperf' - self.stop['tool'] = 'netperf' - self.start['action'] = 'receive' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[1] - self.start['params']['protocol'] = 'udp_bw' - perf.run(**self.start) - self.start['action'] = 'send' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[0] - perf.run(**self.start) - self.stop['action'] = 'send' - self.stop['operation'] = 'stop' - self.stop['params']['namespace'] = self.ns_list[0] - perf.run(**self.stop) - self.stop['action'] = 'receive' - self.stop['operation'] = 'stop' - self.stop['params']['namespace'] = self.ns_list[1] - perf.run(**self.stop) - - def testQperf(self): - perf = Vstfperf() - self.start['tool'] = 'qperf' - self.stop['tool'] = 'qperf' - self.start['action'] = 'receive' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[1] - perf.run(**self.start) - self.start['action'] = 'send' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[0] - perf.run(**self.start) - self.stop['action'] = 'send' - self.stop['operation'] = 'stop' - self.stop['params']['namespace'] = self.ns_list[0] - perf.run(**self.stop) - self.stop['action'] = 'receive' - self.stop['operation'] = 'stop' - self.stop['params']['namespace'] = self.ns_list[1] - perf.run(**self.stop) - - -if __name__ == "__main__": - import logging - logging.basicConfig(level = logging.DEBUG) - unittest.main()
\ No newline at end of file diff --git a/vstf/vstf/agent/unittest/test_callback.py b/vstf/vstf/agent/unittest/test_callback.py deleted file mode 100755 index 35336d9c..00000000 --- a/vstf/vstf/agent/unittest/test_callback.py +++ /dev/null @@ -1,80 +0,0 @@ -""" -Created on 2015-9-28 - -@author: y00228926 -""" -import unittest - -from vstf.agent.unittest.perf import model -from vstf.agent import softagent - - -class TestCallback(model.Model): - def setUp(self): - super(TestCallback, self).setUp() - self.agent = softagent.softAgent() - for ns, dev, ip_setting in zip(self.ns_list, self.device_list, self.ip_setting_list): - netdev = { - "namespace": ns, - "iface": dev, - 'ip_setting': ip_setting - } - self.mgr.config_dev(netdev) - - self.start = { - "operation": "start", - "action": "send", - "tool": "netperf", - "params": { - "namespace": self.ns_list[0], - "protocol": "tcp_lat", - "dst": [ - {"ip": self.ip_list[1]} - ], - "size": 64, - "threads": 1, - "time": 1, - }, - } - self.stop = { - "operation": "stop", - "action": "send", - "tool": "netperf", - "params": { - "namespace": self.ns_list[1], - }, - } - - def tearDown(self): - super(TestCallback, self).tearDown() - - def test_clean(self): - agent = self.agent - agent.perf_clean() - self.start['tool'] = 'netperf' - self.stop['tool'] = 'netperf' - self.start['action'] = 'receive' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[1] - self.start['params']['protocol'] = 'udp_bw' - agent.perf_run(**self.start) - self.start['action'] = 'send' - self.start['operation'] = 'start' - self.start['params']['namespace'] = self.ns_list[0] - agent.perf_run(**self.start) - agent.perf_clean() - - -if __name__ == "__main__": - import logging - - logging.getLogger(__name__) - logging.basicConfig(level=logging.DEBUG) - # import sys;sys.argv = ['', 'Test.testName'] - unittest.main() - -if __name__ == "__main__": - import logging - - logging.basicConfig(level=logging.DEBUG) - unittest.main() diff --git a/vstf/vstf/common/__init__.py b/vstf/vstf/common/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/common/__init__.py +++ b/vstf/vstf/common/__init__.py diff --git a/vstf/vstf/common/candy_text.py b/vstf/vstf/common/candy_text.py index 818ae767..818ae767 100755..100644 --- a/vstf/vstf/common/candy_text.py +++ b/vstf/vstf/common/candy_text.py diff --git a/vstf/vstf/common/cfgparser.py b/vstf/vstf/common/cfgparser.py index 9de5a2cd..9de5a2cd 100755..100644 --- a/vstf/vstf/common/cfgparser.py +++ b/vstf/vstf/common/cfgparser.py diff --git a/vstf/vstf/common/check.py b/vstf/vstf/common/check.py index 2ceddc04..2ceddc04 100755..100644 --- a/vstf/vstf/common/check.py +++ b/vstf/vstf/common/check.py diff --git a/vstf/vstf/common/cliutil.py b/vstf/vstf/common/cliutil.py index 541bba7b..541bba7b 100755..100644 --- a/vstf/vstf/common/cliutil.py +++ b/vstf/vstf/common/cliutil.py diff --git a/vstf/vstf/common/cmds.py b/vstf/vstf/common/cmds.py index 2952be2c..2952be2c 100755..100644 --- a/vstf/vstf/common/cmds.py +++ b/vstf/vstf/common/cmds.py diff --git a/vstf/vstf/common/constants.py b/vstf/vstf/common/constants.py index e054043e..e054043e 100755..100644 --- a/vstf/vstf/common/constants.py +++ b/vstf/vstf/common/constants.py diff --git a/vstf/vstf/common/daemon.py b/vstf/vstf/common/daemon.py index 35933dad..35933dad 100755..100644 --- a/vstf/vstf/common/daemon.py +++ b/vstf/vstf/common/daemon.py diff --git a/vstf/vstf/common/decorator.py b/vstf/vstf/common/decorator.py index 98d539f1..98d539f1 100755..100644 --- a/vstf/vstf/common/decorator.py +++ b/vstf/vstf/common/decorator.py diff --git a/vstf/vstf/common/excepts.py b/vstf/vstf/common/excepts.py index 833eefa4..833eefa4 100755..100644 --- a/vstf/vstf/common/excepts.py +++ b/vstf/vstf/common/excepts.py diff --git a/vstf/vstf/common/input.py b/vstf/vstf/common/input.py index 4f1532e6..14ec8552 100755..100644 --- a/vstf/vstf/common/input.py +++ b/vstf/vstf/common/input.py @@ -7,9 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__author__ = 'wly' -__version__ = '0.1' - import os diff --git a/vstf/vstf/common/log.py b/vstf/vstf/common/log.py index 415b003a..415b003a 100755..100644 --- a/vstf/vstf/common/log.py +++ b/vstf/vstf/common/log.py diff --git a/vstf/vstf/common/message.py b/vstf/vstf/common/message.py index d496990d..d496990d 100755..100644 --- a/vstf/vstf/common/message.py +++ b/vstf/vstf/common/message.py diff --git a/vstf/vstf/common/perfmark.py b/vstf/vstf/common/perfmark.py index 4f5c3978..4f5c3978 100755..100644 --- a/vstf/vstf/common/perfmark.py +++ b/vstf/vstf/common/perfmark.py diff --git a/vstf/vstf/common/pyhtml.py b/vstf/vstf/common/pyhtml.py index f3adee8d..f3adee8d 100755..100644 --- a/vstf/vstf/common/pyhtml.py +++ b/vstf/vstf/common/pyhtml.py diff --git a/vstf/vstf/common/rsync.py b/vstf/vstf/common/rsync.py index 2209dfd3..2209dfd3 100755..100644 --- a/vstf/vstf/common/rsync.py +++ b/vstf/vstf/common/rsync.py diff --git a/vstf/vstf/common/saltstack.py b/vstf/vstf/common/saltstack.py index 030bef5d..030bef5d 100755..100644 --- a/vstf/vstf/common/saltstack.py +++ b/vstf/vstf/common/saltstack.py diff --git a/vstf/vstf/common/ssh.py b/vstf/vstf/common/ssh.py index 7b85e086..7b85e086 100755..100644 --- a/vstf/vstf/common/ssh.py +++ b/vstf/vstf/common/ssh.py diff --git a/vstf/vstf/common/test_func.py b/vstf/vstf/common/test_func.py index 2a9a4c0d..2a9a4c0d 100755..100644 --- a/vstf/vstf/common/test_func.py +++ b/vstf/vstf/common/test_func.py diff --git a/vstf/vstf/common/unix.py b/vstf/vstf/common/unix.py index 97582c74..97582c74 100755..100644 --- a/vstf/vstf/common/unix.py +++ b/vstf/vstf/common/unix.py diff --git a/vstf/vstf/common/utils.py b/vstf/vstf/common/utils.py index f2e14096..f2e14096 100755..100644 --- a/vstf/vstf/common/utils.py +++ b/vstf/vstf/common/utils.py diff --git a/vstf/vstf/common/vstfcli.py b/vstf/vstf/common/vstfcli.py index 896bb1d6..896bb1d6 100755..100644 --- a/vstf/vstf/common/vstfcli.py +++ b/vstf/vstf/common/vstfcli.py diff --git a/vstf/vstf/controller/__init__.py b/vstf/vstf/controller/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/__init__.py +++ b/vstf/vstf/controller/__init__.py diff --git a/vstf/vstf/controller/api_server.py b/vstf/vstf/controller/api_server.py index a37bf4c1..a37bf4c1 100755..100644 --- a/vstf/vstf/controller/api_server.py +++ b/vstf/vstf/controller/api_server.py diff --git a/vstf/vstf/controller/database/__init__.py b/vstf/vstf/controller/database/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/database/__init__.py +++ b/vstf/vstf/controller/database/__init__.py diff --git a/vstf/vstf/controller/database/constants.py b/vstf/vstf/controller/database/constants.py index e5070122..e5070122 100755..100644 --- a/vstf/vstf/controller/database/constants.py +++ b/vstf/vstf/controller/database/constants.py diff --git a/vstf/vstf/controller/database/dbinterface.py b/vstf/vstf/controller/database/dbinterface.py index d0996c30..410e1ee5 100755..100644 --- a/vstf/vstf/controller/database/dbinterface.py +++ b/vstf/vstf/controller/database/dbinterface.py @@ -7,7 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__version__ = ''' ''' import os import logging diff --git a/vstf/vstf/controller/database/tables.py b/vstf/vstf/controller/database/tables.py index 0438d0e9..55b02e5f 100755..100644 --- a/vstf/vstf/controller/database/tables.py +++ b/vstf/vstf/controller/database/tables.py @@ -1,9 +1,12 @@ -#!/usr/bin/python -# -*- coding: utf8 -*- -# author: wly -# date: 2015-12-25 -# see license for license details -__version__ = ''' ''' +############################################################################## +# Copyright (c) 2015 Huawei Technologies Co.,Ltd and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + from sqlalchemy import Column, Integer, String, Float, ForeignKey from sqlalchemy.ext.declarative import declarative_base from vstf.controller.database import constants as const diff --git a/vstf/vstf/controller/env_build/README b/vstf/vstf/controller/env_build/README deleted file mode 100755 index ecb4e118..00000000 --- a/vstf/vstf/controller/env_build/README +++ /dev/null @@ -1,15 +0,0 @@ - env_build.py contains a quick test code for create virtual network in a remote host. - - usage: - - python env_build.py --rpc_server 192.168.188.10 --config /etc/vstf/env/Tn.json - - --rpc_server RPC_SERVER - the rabbitmq server for deliver messages. - --config CONFIG - env-build config file to parse - -the above command will build a 'Tn-type' network according to config file: /etc/vstf/env/Tn.json. - - - diff --git a/vstf/vstf/controller/env_build/__init__.py b/vstf/vstf/controller/env_build/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/controller/env_build/__init__.py +++ b/vstf/vstf/controller/env_build/__init__.py diff --git a/vstf/vstf/controller/env_build/cfg_intent_parse.py b/vstf/vstf/controller/env_build/cfg_intent_parse.py index b536e3b8..b536e3b8 100755..100644 --- a/vstf/vstf/controller/env_build/cfg_intent_parse.py +++ b/vstf/vstf/controller/env_build/cfg_intent_parse.py diff --git a/vstf/vstf/controller/env_build/env_build.py b/vstf/vstf/controller/env_build/env_build.py index 1d201b77..1d201b77 100755..100644 --- a/vstf/vstf/controller/env_build/env_build.py +++ b/vstf/vstf/controller/env_build/env_build.py diff --git a/vstf/vstf/controller/env_build/env_collect.py b/vstf/vstf/controller/env_build/env_collect.py index 6e32a05d..6e32a05d 100755..100644 --- a/vstf/vstf/controller/env_build/env_collect.py +++ b/vstf/vstf/controller/env_build/env_collect.py diff --git a/vstf/vstf/controller/fabricant.py b/vstf/vstf/controller/fabricant.py index 3b1c082f..3b1c082f 100755..100644 --- a/vstf/vstf/controller/fabricant.py +++ b/vstf/vstf/controller/fabricant.py diff --git a/vstf/vstf/controller/reporters/README b/vstf/vstf/controller/reporters/README deleted file mode 100755 index 1ed65360..00000000 --- a/vstf/vstf/controller/reporters/README +++ /dev/null @@ -1,109 +0,0 @@ -Tree - -├── __init__.py -├── mail -│ ├── __init__.py -│ ├── mail.py -│ └── sendmail.py -├── report -│ ├── data_factory.py -│ ├── html -│ │ ├── html_base.py -│ │ ├── htmlcreater.py -│ │ ├── html_text.py -│ │ └── __init__.py -│ ├── __init__.py -│ ├── pdf -│ │ ├── element.py -│ │ ├── __init__.py -│ │ ├── pdfcreater.py -│ │ ├── pdftemplate.py -│ │ ├── story.py -│ │ └── styles.py -│ └── provider -│ ├── html_provider.py -│ └── __init__.py -└── reporter.py - - -Entry: - reporter.py - - usage: reporter.py [-h] [-rpath RPATH] [-mail_off] [--taskid TASKID] - - optional arguments: - -h, --help show this help message and exit - -rpath RPATH the path name of test results - -mail_off is need send mail the for the report - --taskid TASKID report depand of a history task id. - -Settings: - mail_settings - - { - "server": - { - "host": "localhost", - "username": null, - "password": null - }, - "body": - { - "from": ["vstf_from@vstf.com"], - "to": ["vstf_to@vstf.com"], - "cc": ["vstf_cc@vstf.com"], - "bcc": ["vstf_bcc@vstf.com"], - "subject": "Elastic Virtual Switching Performance Test Report" - } - } - - html_settings - - { - "style":{ - "table":{ - "font-family":"\"Trebuchet MS\", Arial, Helvetica, sans-serif", - "border":"1px solid green", - "border-collapse":"collapse", - "padding":"8px", - "text-align":"center" - }, - "td":{ - "border":"1px solid green", - "padding":"8px", - "word-wrap":"break-all" - }, - "th":{ - "background-color":"#EAF2D3", - "border":"1px solid green", - "padding":"8px" - } - } - } - - data_settings - - { - "ovs":{ - "content":{ - "version":3.0 - }, - "title":"Ovs info" - }, - "result":{ - "content":{}, - "title":"Performance Result" - }, - "subject":"ATF Performance Test Tnv Model" - } -Module: - mail - html - pdf - - -Others: - pip processes the package "reportlab" - - pip install reportlab - diff --git a/vstf/vstf/controller/reporters/__init__.py b/vstf/vstf/controller/reporters/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/reporters/__init__.py +++ b/vstf/vstf/controller/reporters/__init__.py diff --git a/vstf/vstf/controller/reporters/mail/__init__.py b/vstf/vstf/controller/reporters/mail/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/reporters/mail/__init__.py +++ b/vstf/vstf/controller/reporters/mail/__init__.py diff --git a/vstf/vstf/controller/reporters/mail/mail.py b/vstf/vstf/controller/reporters/mail/mail.py index 2241d9ad..6792ad91 100755..100644 --- a/vstf/vstf/controller/reporters/mail/mail.py +++ b/vstf/vstf/controller/reporters/mail/mail.py @@ -107,7 +107,7 @@ class Mail(object): if __name__ == "__main__": m = Mail() m.attach_addr(["vstf_server@vstf.com"], m.FROM) - m.attach_addr(["wangli11@huawei.com"], m.TO) + m.attach_addr(["test@test.com"], m.TO) context = """ <!DOCTYPE html> <html> diff --git a/vstf/vstf/controller/reporters/mail/sendmail.py b/vstf/vstf/controller/reporters/mail/sendmail.py index a4d7bb0a..a4d7bb0a 100755..100644 --- a/vstf/vstf/controller/reporters/mail/sendmail.py +++ b/vstf/vstf/controller/reporters/mail/sendmail.py diff --git a/vstf/vstf/controller/reporters/report/__init__.py b/vstf/vstf/controller/reporters/report/__init__.py index 547db686..547db686 100755..100644 --- a/vstf/vstf/controller/reporters/report/__init__.py +++ b/vstf/vstf/controller/reporters/report/__init__.py diff --git a/vstf/vstf/controller/reporters/report/candy_generator.py b/vstf/vstf/controller/reporters/report/candy_generator.py index ea296550..ea296550 100755..100644 --- a/vstf/vstf/controller/reporters/report/candy_generator.py +++ b/vstf/vstf/controller/reporters/report/candy_generator.py diff --git a/vstf/vstf/controller/reporters/report/data_factory.py b/vstf/vstf/controller/reporters/report/data_factory.py index f9fc69d9..f9fc69d9 100755..100644 --- a/vstf/vstf/controller/reporters/report/data_factory.py +++ b/vstf/vstf/controller/reporters/report/data_factory.py diff --git a/vstf/vstf/controller/reporters/report/html/__init__.py b/vstf/vstf/controller/reporters/report/html/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/reporters/report/html/__init__.py +++ b/vstf/vstf/controller/reporters/report/html/__init__.py diff --git a/vstf/vstf/controller/reporters/report/html/html_base.py b/vstf/vstf/controller/reporters/report/html/html_base.py index 36be5981..5769da79 100755..100644 --- a/vstf/vstf/controller/reporters/report/html/html_base.py +++ b/vstf/vstf/controller/reporters/report/html/html_base.py @@ -7,7 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__version__ = ''' ''' import os import vstf.common.pyhtml as pyhtm diff --git a/vstf/vstf/controller/reporters/report/html/htmlcreator.py b/vstf/vstf/controller/reporters/report/html/htmlcreator.py index 1d150e28..695ea37f 100755..100644 --- a/vstf/vstf/controller/reporters/report/html/htmlcreator.py +++ b/vstf/vstf/controller/reporters/report/html/htmlcreator.py @@ -7,7 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__version__ = ''' ''' import logging diff --git a/vstf/vstf/controller/reporters/report/pdf/__init__.py b/vstf/vstf/controller/reporters/report/pdf/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/__init__.py +++ b/vstf/vstf/controller/reporters/report/pdf/__init__.py diff --git a/vstf/vstf/controller/reporters/report/pdf/element.py b/vstf/vstf/controller/reporters/report/pdf/element.py index 78d1c59b..ef8b54df 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/element.py +++ b/vstf/vstf/controller/reporters/report/pdf/element.py @@ -7,7 +7,7 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__version__ = ''' ''' + __doc__ = """ it contains the base element for pdf eImage is used to draw picture on the pdf document diff --git a/vstf/vstf/controller/reporters/report/pdf/pdfcreator.py b/vstf/vstf/controller/reporters/report/pdf/pdfcreator.py index 4f7bd2a8..c33974ec 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/pdfcreator.py +++ b/vstf/vstf/controller/reporters/report/pdf/pdfcreator.py @@ -7,8 +7,6 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## -__version__ = ''' ''' - from vstf.controller.reporters.report.pdf.pdftemplate import PdfVswitch from vstf.controller.reporters.report.pdf.story import TitleStory, SpaceStory, ImageStory, TableStory, \ diff --git a/vstf/vstf/controller/reporters/report/pdf/pdftemplate.py b/vstf/vstf/controller/reporters/report/pdf/pdftemplate.py index 69c65401..69c65401 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/pdftemplate.py +++ b/vstf/vstf/controller/reporters/report/pdf/pdftemplate.py diff --git a/vstf/vstf/controller/reporters/report/pdf/story.py b/vstf/vstf/controller/reporters/report/pdf/story.py index 940c20fb..940c20fb 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/story.py +++ b/vstf/vstf/controller/reporters/report/pdf/story.py diff --git a/vstf/vstf/controller/reporters/report/pdf/styles.py b/vstf/vstf/controller/reporters/report/pdf/styles.py index 2860c245..2860c245 100755..100644 --- a/vstf/vstf/controller/reporters/report/pdf/styles.py +++ b/vstf/vstf/controller/reporters/report/pdf/styles.py diff --git a/vstf/vstf/controller/reporters/report/provider/__init__.py b/vstf/vstf/controller/reporters/report/provider/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/controller/reporters/report/provider/__init__.py +++ b/vstf/vstf/controller/reporters/report/provider/__init__.py diff --git a/vstf/vstf/controller/reporters/report/provider/html_provider.py b/vstf/vstf/controller/reporters/report/provider/html_provider.py index 74c4c593..74c4c593 100755..100644 --- a/vstf/vstf/controller/reporters/report/provider/html_provider.py +++ b/vstf/vstf/controller/reporters/report/provider/html_provider.py diff --git a/vstf/vstf/controller/reporters/report/provider/pdf_provider.py b/vstf/vstf/controller/reporters/report/provider/pdf_provider.py index bc9f0e96..e1cb09ef 100755..100644 --- a/vstf/vstf/controller/reporters/report/provider/pdf_provider.py +++ b/vstf/vstf/controller/reporters/report/provider/pdf_provider.py @@ -8,8 +8,6 @@ ############################################################################## - -__version__ = ''' ''' import logging LOG = logging.getLogger(__name__) diff --git a/vstf/vstf/controller/reporters/reporter.py b/vstf/vstf/controller/reporters/reporter.py index e77ae349..654c9b83 100755..100644 --- a/vstf/vstf/controller/reporters/reporter.py +++ b/vstf/vstf/controller/reporters/reporter.py @@ -26,7 +26,6 @@ from vstf.controller.reporters.report.candy_generator import CandyGenerator import vstf.common.constants as cst -__version__ = ''' ''' LOG = logging.getLogger(__name__) diff --git a/vstf/vstf/controller/res/Traffic-types.gif b/vstf/vstf/controller/res/Traffic-types.gif Binary files differindex 4b1fc600..4b1fc600 100755..100644 --- a/vstf/vstf/controller/res/Traffic-types.gif +++ b/vstf/vstf/controller/res/Traffic-types.gif diff --git a/vstf/vstf/controller/res/Traffic-types.jpg b/vstf/vstf/controller/res/Traffic-types.jpg Binary files differindex 07f23300..07f23300 100755..100644 --- a/vstf/vstf/controller/res/Traffic-types.jpg +++ b/vstf/vstf/controller/res/Traffic-types.jpg diff --git a/vstf/vstf/controller/res/deployment/Ti-direct.gif b/vstf/vstf/controller/res/deployment/Ti-direct.gif Binary files differindex c06a222b..c06a222b 100755..100644 --- a/vstf/vstf/controller/res/deployment/Ti-direct.gif +++ b/vstf/vstf/controller/res/deployment/Ti-direct.gif diff --git a/vstf/vstf/controller/res/deployment/Ti-direct.jpg b/vstf/vstf/controller/res/deployment/Ti-direct.jpg Binary files differindex edb25cad..edb25cad 100755..100644 --- a/vstf/vstf/controller/res/deployment/Ti-direct.jpg +++ b/vstf/vstf/controller/res/deployment/Ti-direct.jpg diff --git a/vstf/vstf/controller/res/deployment/Ti.gif b/vstf/vstf/controller/res/deployment/Ti.gif Binary files differindex 56ada3f6..56ada3f6 100755..100644 --- a/vstf/vstf/controller/res/deployment/Ti.gif +++ b/vstf/vstf/controller/res/deployment/Ti.gif diff --git a/vstf/vstf/controller/res/deployment/Ti.jpg b/vstf/vstf/controller/res/deployment/Ti.jpg Binary files differindex 951b1c09..951b1c09 100755..100644 --- a/vstf/vstf/controller/res/deployment/Ti.jpg +++ b/vstf/vstf/controller/res/deployment/Ti.jpg diff --git a/vstf/vstf/controller/res/deployment/Tn.gif b/vstf/vstf/controller/res/deployment/Tn.gif Binary files differindex 4367ded0..4367ded0 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tn.gif +++ b/vstf/vstf/controller/res/deployment/Tn.gif diff --git a/vstf/vstf/controller/res/deployment/Tn.jpg b/vstf/vstf/controller/res/deployment/Tn.jpg Binary files differindex 45a17048..45a17048 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tn.jpg +++ b/vstf/vstf/controller/res/deployment/Tn.jpg diff --git a/vstf/vstf/controller/res/deployment/Tnv.gif b/vstf/vstf/controller/res/deployment/Tnv.gif Binary files differindex dfc0bd58..dfc0bd58 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tnv.gif +++ b/vstf/vstf/controller/res/deployment/Tnv.gif diff --git a/vstf/vstf/controller/res/deployment/Tnv.jpg b/vstf/vstf/controller/res/deployment/Tnv.jpg Binary files differindex fb47d8a3..fb47d8a3 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tnv.jpg +++ b/vstf/vstf/controller/res/deployment/Tnv.jpg diff --git a/vstf/vstf/controller/res/deployment/Tu.gif b/vstf/vstf/controller/res/deployment/Tu.gif Binary files differindex 426667ed..426667ed 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tu.gif +++ b/vstf/vstf/controller/res/deployment/Tu.gif diff --git a/vstf/vstf/controller/res/deployment/Tu.jpg b/vstf/vstf/controller/res/deployment/Tu.jpg Binary files differindex be62df75..be62df75 100755..100644 --- a/vstf/vstf/controller/res/deployment/Tu.jpg +++ b/vstf/vstf/controller/res/deployment/Tu.jpg diff --git a/vstf/vstf/controller/res/iperf/Ti-3.gif b/vstf/vstf/controller/res/iperf/Ti-3.gif Binary files differindex e09094a2..e09094a2 100755..100644 --- a/vstf/vstf/controller/res/iperf/Ti-3.gif +++ b/vstf/vstf/controller/res/iperf/Ti-3.gif diff --git a/vstf/vstf/controller/res/iperf/Ti-3.jpg b/vstf/vstf/controller/res/iperf/Ti-3.jpg Binary files differindex cdf75271..cdf75271 100755..100644 --- a/vstf/vstf/controller/res/iperf/Ti-3.jpg +++ b/vstf/vstf/controller/res/iperf/Ti-3.jpg diff --git a/vstf/vstf/controller/res/logo.jpg b/vstf/vstf/controller/res/logo.jpg Binary files differindex 9d524829..9d524829 100755..100644 --- a/vstf/vstf/controller/res/logo.jpg +++ b/vstf/vstf/controller/res/logo.jpg diff --git a/vstf/vstf/controller/res/pktgen/Ti-1.gif b/vstf/vstf/controller/res/pktgen/Ti-1.gif Binary files differindex ed9e44ac..ed9e44ac 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-1.gif +++ b/vstf/vstf/controller/res/pktgen/Ti-1.gif diff --git a/vstf/vstf/controller/res/pktgen/Ti-1.jpg b/vstf/vstf/controller/res/pktgen/Ti-1.jpg Binary files differindex 5898769f..5898769f 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-1.jpg +++ b/vstf/vstf/controller/res/pktgen/Ti-1.jpg diff --git a/vstf/vstf/controller/res/pktgen/Ti-2.gif b/vstf/vstf/controller/res/pktgen/Ti-2.gif Binary files differindex 59359b13..59359b13 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-2.gif +++ b/vstf/vstf/controller/res/pktgen/Ti-2.gif diff --git a/vstf/vstf/controller/res/pktgen/Ti-2.jpg b/vstf/vstf/controller/res/pktgen/Ti-2.jpg Binary files differindex ea4b2620..ea4b2620 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-2.jpg +++ b/vstf/vstf/controller/res/pktgen/Ti-2.jpg diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif b/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif Binary files differindex 57b148c6..57b148c6 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif +++ b/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg b/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg Binary files differindex 1255dc8e..1255dc8e 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg +++ b/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif b/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif Binary files differindex 43e58fbc..43e58fbc 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif +++ b/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg b/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg Binary files differindex 898d68ee..898d68ee 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg +++ b/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tn-1.gif b/vstf/vstf/controller/res/pktgen/Tn-1.gif Binary files differindex 74407a94..74407a94 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-1.gif +++ b/vstf/vstf/controller/res/pktgen/Tn-1.gif diff --git a/vstf/vstf/controller/res/pktgen/Tn-1.jpg b/vstf/vstf/controller/res/pktgen/Tn-1.jpg Binary files differindex f3ea6e53..f3ea6e53 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-1.jpg +++ b/vstf/vstf/controller/res/pktgen/Tn-1.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tn-1v.gif b/vstf/vstf/controller/res/pktgen/Tn-1v.gif Binary files differindex 18681bbe..18681bbe 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-1v.gif +++ b/vstf/vstf/controller/res/pktgen/Tn-1v.gif diff --git a/vstf/vstf/controller/res/pktgen/Tn-1v.jpg b/vstf/vstf/controller/res/pktgen/Tn-1v.jpg Binary files differindex 59d4ed5c..59d4ed5c 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-1v.jpg +++ b/vstf/vstf/controller/res/pktgen/Tn-1v.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tn-2.gif b/vstf/vstf/controller/res/pktgen/Tn-2.gif Binary files differindex e26db799..e26db799 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-2.gif +++ b/vstf/vstf/controller/res/pktgen/Tn-2.gif diff --git a/vstf/vstf/controller/res/pktgen/Tn-2.jpg b/vstf/vstf/controller/res/pktgen/Tn-2.jpg Binary files differindex 15ed91e3..15ed91e3 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-2.jpg +++ b/vstf/vstf/controller/res/pktgen/Tn-2.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tn-2v.gif b/vstf/vstf/controller/res/pktgen/Tn-2v.gif Binary files differindex 9ec54578..9ec54578 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-2v.gif +++ b/vstf/vstf/controller/res/pktgen/Tn-2v.gif diff --git a/vstf/vstf/controller/res/pktgen/Tn-2v.jpg b/vstf/vstf/controller/res/pktgen/Tn-2v.jpg Binary files differindex 2ff06ea6..2ff06ea6 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tn-2v.jpg +++ b/vstf/vstf/controller/res/pktgen/Tn-2v.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tu-1.gif b/vstf/vstf/controller/res/pktgen/Tu-1.gif Binary files differindex 9f2357ad..9f2357ad 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-1.gif +++ b/vstf/vstf/controller/res/pktgen/Tu-1.gif diff --git a/vstf/vstf/controller/res/pktgen/Tu-1.jpg b/vstf/vstf/controller/res/pktgen/Tu-1.jpg Binary files differindex ad2724a1..ad2724a1 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-1.jpg +++ b/vstf/vstf/controller/res/pktgen/Tu-1.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tu-2.gif b/vstf/vstf/controller/res/pktgen/Tu-2.gif Binary files differindex b0a2cede..b0a2cede 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-2.gif +++ b/vstf/vstf/controller/res/pktgen/Tu-2.gif diff --git a/vstf/vstf/controller/res/pktgen/Tu-2.jpg b/vstf/vstf/controller/res/pktgen/Tu-2.jpg Binary files differindex d47089b7..d47089b7 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-2.jpg +++ b/vstf/vstf/controller/res/pktgen/Tu-2.jpg diff --git a/vstf/vstf/controller/res/pktgen/Tu-3.gif b/vstf/vstf/controller/res/pktgen/Tu-3.gif Binary files differindex e0b15211..e0b15211 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-3.gif +++ b/vstf/vstf/controller/res/pktgen/Tu-3.gif diff --git a/vstf/vstf/controller/res/pktgen/Tu-3.jpg b/vstf/vstf/controller/res/pktgen/Tu-3.jpg Binary files differindex 579808c4..579808c4 100755..100644 --- a/vstf/vstf/controller/res/pktgen/Tu-3.jpg +++ b/vstf/vstf/controller/res/pktgen/Tu-3.jpg diff --git a/vstf/vstf/controller/res/spirent/Tn-1.gif b/vstf/vstf/controller/res/spirent/Tn-1.gif Binary files differindex 97510da0..97510da0 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-1.gif +++ b/vstf/vstf/controller/res/spirent/Tn-1.gif diff --git a/vstf/vstf/controller/res/spirent/Tn-1.jpg b/vstf/vstf/controller/res/spirent/Tn-1.jpg Binary files differindex 6886d316..6886d316 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-1.jpg +++ b/vstf/vstf/controller/res/spirent/Tn-1.jpg diff --git a/vstf/vstf/controller/res/spirent/Tn-1v.gif b/vstf/vstf/controller/res/spirent/Tn-1v.gif Binary files differindex cb7b668b..cb7b668b 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-1v.gif +++ b/vstf/vstf/controller/res/spirent/Tn-1v.gif diff --git a/vstf/vstf/controller/res/spirent/Tn-1v.jpg b/vstf/vstf/controller/res/spirent/Tn-1v.jpg Binary files differindex 3dec4382..3dec4382 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-1v.jpg +++ b/vstf/vstf/controller/res/spirent/Tn-1v.jpg diff --git a/vstf/vstf/controller/res/spirent/Tn-2.gif b/vstf/vstf/controller/res/spirent/Tn-2.gif Binary files differindex 4eb6780a..4eb6780a 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-2.gif +++ b/vstf/vstf/controller/res/spirent/Tn-2.gif diff --git a/vstf/vstf/controller/res/spirent/Tn-2.jpg b/vstf/vstf/controller/res/spirent/Tn-2.jpg Binary files differindex 9d425af2..9d425af2 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-2.jpg +++ b/vstf/vstf/controller/res/spirent/Tn-2.jpg diff --git a/vstf/vstf/controller/res/spirent/Tn-2v.gif b/vstf/vstf/controller/res/spirent/Tn-2v.gif Binary files differindex 21e31470..21e31470 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-2v.gif +++ b/vstf/vstf/controller/res/spirent/Tn-2v.gif diff --git a/vstf/vstf/controller/res/spirent/Tn-2v.jpg b/vstf/vstf/controller/res/spirent/Tn-2v.jpg Binary files differindex 40a38292..40a38292 100755..100644 --- a/vstf/vstf/controller/res/spirent/Tn-2v.jpg +++ b/vstf/vstf/controller/res/spirent/Tn-2v.jpg diff --git a/vstf/vstf/controller/settings/README b/vstf/vstf/controller/settings/README deleted file mode 100755 index febac1c9..00000000 --- a/vstf/vstf/controller/settings/README +++ /dev/null @@ -1,61 +0,0 @@ -This module providers a set of profile management solution -File: - settings.py -Interface: - Settings - - 1. it is a base class and supports two modes "Default" and "Single" - if the mode is "Default", the program will load the 'json' file from 'default' - and 'user' , merge the input, save only the 'json' file from 'user' - if the mode is "Single", the program will only load and save the 'json' file - 2. it saves a file two, one is only in memory and the other is in file - 3. it provides two types of functions, one is like "set_" and "add_" and the - other is like "mset" and "madd". the functions are automatically registered. - - 4. You can overload the function _register_func to achieve the functions what you desire - by function "_setting_file","_adding_file","_setting_memory" and "_addting_memory" - - 5. it provides "settings" to show the result in memory - 6. it provides "reset" to reload the file - -Example: - - 1. create your-settings file and paste the contents - - { - "items1": "value1", - "items2": "value2" - } - - - 2. create your_settings file and paste the codes - - import vstf.controller.settings.settings as sets - class YourSettings(sets.Settings): - def __init__(self, path="./", filename="your-settings", mode=sets.SETS_SINGLE): - super(MailSettings, self).__init__(path, filename, mode) - - def unit_test(): - setting = YourSettings() - print setting.settings() - value1 = "test_set_items1" - setting.set_items1(value1) - print setting.settings() - value2 = "test_set_items2" - setting.mset_items2(value2) - print setting.settings() - settings.reset() - print setting.settings() - - if __name__ == '__main__': - unit_test() - -Tree: - - data_settings.py - flows_settings.py - perf_settings.py - - mail_settings.py - tool_settings.py - html_settings.py
\ No newline at end of file diff --git a/vstf/vstf/controller/settings/__init__.py b/vstf/vstf/controller/settings/__init__.py index 83b8d15d..83b8d15d 100755..100644 --- a/vstf/vstf/controller/settings/__init__.py +++ b/vstf/vstf/controller/settings/__init__.py diff --git a/vstf/vstf/controller/settings/cpu_settings.py b/vstf/vstf/controller/settings/cpu_settings.py index a25af4c1..a25af4c1 100755..100644 --- a/vstf/vstf/controller/settings/cpu_settings.py +++ b/vstf/vstf/controller/settings/cpu_settings.py diff --git a/vstf/vstf/controller/settings/device_settings.py b/vstf/vstf/controller/settings/device_settings.py index 25f2c5bf..25f2c5bf 100755..100644 --- a/vstf/vstf/controller/settings/device_settings.py +++ b/vstf/vstf/controller/settings/device_settings.py diff --git a/vstf/vstf/controller/settings/flows_settings.py b/vstf/vstf/controller/settings/flows_settings.py index 9cd1a1b7..9cd1a1b7 100755..100644 --- a/vstf/vstf/controller/settings/flows_settings.py +++ b/vstf/vstf/controller/settings/flows_settings.py diff --git a/vstf/vstf/controller/settings/forwarding_settings.py b/vstf/vstf/controller/settings/forwarding_settings.py index 636ddfda..636ddfda 100755..100644 --- a/vstf/vstf/controller/settings/forwarding_settings.py +++ b/vstf/vstf/controller/settings/forwarding_settings.py diff --git a/vstf/vstf/controller/settings/html_settings.py b/vstf/vstf/controller/settings/html_settings.py index ce87733e..ce87733e 100755..100644 --- a/vstf/vstf/controller/settings/html_settings.py +++ b/vstf/vstf/controller/settings/html_settings.py diff --git a/vstf/vstf/controller/settings/mail_settings.py b/vstf/vstf/controller/settings/mail_settings.py index a2d2d6df..db01097f 100755..100644 --- a/vstf/vstf/controller/settings/mail_settings.py +++ b/vstf/vstf/controller/settings/mail_settings.py @@ -94,17 +94,6 @@ def unit_test(): } mail_settings.set_server(mail_server) - from_list = ['vstf_from@vstf.com'] - mail_settings.set_from(from_list) - to_list = ['wangli11@huawei.com'] - mail_settings.set_to(to_list) - cc_list = ['wangli11@huawei.com'] - mail_settings.set_cc(cc_list) - bcc_list = ['wangli11@huawei.com'] - mail_settings.set_bcc(bcc_list) - bcc_list = ['wangli11@huawei.com'] - mail_settings.set_bcc(bcc_list) - subject = "Virtual Switching Performance Test Report" mail_settings.set_subject(subject) diff --git a/vstf/vstf/controller/settings/perf_settings.py b/vstf/vstf/controller/settings/perf_settings.py index 610cb4ae..610cb4ae 100755..100644 --- a/vstf/vstf/controller/settings/perf_settings.py +++ b/vstf/vstf/controller/settings/perf_settings.py diff --git a/vstf/vstf/controller/settings/settings.py b/vstf/vstf/controller/settings/settings.py index 2c712bb2..2c712bb2 100755..100644 --- a/vstf/vstf/controller/settings/settings.py +++ b/vstf/vstf/controller/settings/settings.py diff --git a/vstf/vstf/controller/settings/settings_input.py b/vstf/vstf/controller/settings/settings_input.py index 59652ed5..59652ed5 100755..100644 --- a/vstf/vstf/controller/settings/settings_input.py +++ b/vstf/vstf/controller/settings/settings_input.py diff --git a/vstf/vstf/controller/settings/template_settings.py b/vstf/vstf/controller/settings/template_settings.py index b677c539..b677c539 100755..100644 --- a/vstf/vstf/controller/settings/template_settings.py +++ b/vstf/vstf/controller/settings/template_settings.py diff --git a/vstf/vstf/controller/settings/tester_settings.py b/vstf/vstf/controller/settings/tester_settings.py index 554c8042..554c8042 100755..100644 --- a/vstf/vstf/controller/settings/tester_settings.py +++ b/vstf/vstf/controller/settings/tester_settings.py diff --git a/vstf/vstf/controller/settings/tool_settings.py b/vstf/vstf/controller/settings/tool_settings.py index a84bc59f..a84bc59f 100755..100644 --- a/vstf/vstf/controller/settings/tool_settings.py +++ b/vstf/vstf/controller/settings/tool_settings.py diff --git a/vstf/vstf/controller/spirent/__init__.py b/vstf/vstf/controller/spirent/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/spirent/__init__.py +++ b/vstf/vstf/controller/spirent/__init__.py diff --git a/vstf/vstf/controller/spirent/appliance.py b/vstf/vstf/controller/spirent/appliance.py index d4c5be64..d4c5be64 100755..100644 --- a/vstf/vstf/controller/spirent/appliance.py +++ b/vstf/vstf/controller/spirent/appliance.py diff --git a/vstf/vstf/controller/spirent/common/__init__.py b/vstf/vstf/controller/spirent/common/__init__.py index c354d1f9..c354d1f9 100755..100644 --- a/vstf/vstf/controller/spirent/common/__init__.py +++ b/vstf/vstf/controller/spirent/common/__init__.py diff --git a/vstf/vstf/controller/spirent/common/model.py b/vstf/vstf/controller/spirent/common/model.py index a29794f4..a29794f4 100755..100644 --- a/vstf/vstf/controller/spirent/common/model.py +++ b/vstf/vstf/controller/spirent/common/model.py diff --git a/vstf/vstf/controller/spirent/common/result_analysis.py b/vstf/vstf/controller/spirent/common/result_analysis.py index b09a846d..b09a846d 100755..100644 --- a/vstf/vstf/controller/spirent/common/result_analysis.py +++ b/vstf/vstf/controller/spirent/common/result_analysis.py diff --git a/vstf/vstf/controller/sw_perf/README b/vstf/vstf/controller/sw_perf/README deleted file mode 100755 index 02844a3e..00000000 --- a/vstf/vstf/controller/sw_perf/README +++ /dev/null @@ -1,39 +0,0 @@ -Tree - -|--- flow_producer.py -|--- model.py -|--- performance.py -|--- perf_provider.py -|--- raw_data.py - -Entry: - performance.py - usage: performance.py [-h] [-case CASE] - [-tool {pktgen,netperf,qperf,iperf,netmap}] - [-protocol {tcp,udp}] [-profile {rdp,fastlink,l2switch}] - [-type {throughput,latency,frameloss}] [-sizes SIZES] - [--monitor MONITOR] - - optional arguments: - -h, --help show this help message and exit - -case CASE test case like Ti-1, Tn-1, Tnv-1, Tu-1... - -tool {pktgen,netperf,qperf,iperf,netmap} - -protocol {tcp,udp} - -profile {rdp,fastlink,l2switch} - -type {throughput,latency,frameloss} - -sizes SIZES test size list "64 128" - --monitor MONITOR which ip to be monitored - -Interface: - usage: - conn = Server(host=args.monitor) - flows_settings = FlowsSettings() - tool_settings = ToolSettings() - tester_settings = TesterSettings() - flow_producer = FlowsProducer(conn, flows_settings) - provider = PerfProvider(flows_settings.settings, tool_settings.settings, tester_settings.settings) - perf = Performance(conn, provider) - flow_producer.create(scenario, case) - LOG.info(flows_settings.settings()) - result = perf.run(tool, protocol, type, sizes) - diff --git a/vstf/vstf/controller/sw_perf/__init__.py b/vstf/vstf/controller/sw_perf/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/sw_perf/__init__.py +++ b/vstf/vstf/controller/sw_perf/__init__.py diff --git a/vstf/vstf/controller/sw_perf/flow_producer.py b/vstf/vstf/controller/sw_perf/flow_producer.py index 4a3b02c2..4a3b02c2 100755..100644 --- a/vstf/vstf/controller/sw_perf/flow_producer.py +++ b/vstf/vstf/controller/sw_perf/flow_producer.py diff --git a/vstf/vstf/controller/sw_perf/model.py b/vstf/vstf/controller/sw_perf/model.py index c49df041..c49df041 100755..100644 --- a/vstf/vstf/controller/sw_perf/model.py +++ b/vstf/vstf/controller/sw_perf/model.py diff --git a/vstf/vstf/controller/sw_perf/perf_provider.py b/vstf/vstf/controller/sw_perf/perf_provider.py index 396e6eef..396e6eef 100755..100644 --- a/vstf/vstf/controller/sw_perf/perf_provider.py +++ b/vstf/vstf/controller/sw_perf/perf_provider.py diff --git a/vstf/vstf/controller/sw_perf/performance.py b/vstf/vstf/controller/sw_perf/performance.py index 3fe91e93..3fe91e93 100755..100644 --- a/vstf/vstf/controller/sw_perf/performance.py +++ b/vstf/vstf/controller/sw_perf/performance.py diff --git a/vstf/vstf/controller/sw_perf/raw_data.py b/vstf/vstf/controller/sw_perf/raw_data.py index aefb863d..aefb863d 100755..100644 --- a/vstf/vstf/controller/sw_perf/raw_data.py +++ b/vstf/vstf/controller/sw_perf/raw_data.py diff --git a/vstf/vstf/controller/unittest/README b/vstf/vstf/controller/unittest/README deleted file mode 100755 index 61ef1a24..00000000 --- a/vstf/vstf/controller/unittest/README +++ /dev/null @@ -1,45 +0,0 @@ - - -the procedure to integrate a module unit testing into the unit testing framework: - -1.create your own unit test module, the name should start by 'test', for example, test_env.py - -2.create the test cases inside the module, inherit unittest.TestCase, for example: - class TestNetnsManager(unittest.TestCase): - def setUp(self): // preparing the testig - pass - def tearDown(self):// cleanup after testing - pass - def testCase1(self):// cases - pass - -3.single modules testing, appending below code at the end of the module, execute 'python test_env.py'. - -if __name__ == "__main__": - import logging - logging.getLogger(__name__) - logging.basicConfig(level = logging.DEBUG) - unittest.main() - -4.multiple modules integration, create run_test.py,run_test.py the example code as below: - -import unittest -import importlib - -test_order_list = [ - "vstf.services.agent.unittest.perf.test_utils", - "vstf.services.agent.unittest.perf.test_netns", - "vstf.services.agent.unittest.perf.test_netperf", - "vstf.services.agent.unittest.perf.test_qperf", - "vstf.services.agent.unittest.perf.test_pktgen", -] - -if __name__ == '__main__': - import logging - logging.getLogger(__name__) - logging.basicConfig(level = logging.DEBUG) - for mod_name in test_order_list: - mod = importlib.import_module(mod_name) - suit = unittest.TestLoader().loadTestsFromModule(mod) - unittest.TextTestRunner().run(suit) - diff --git a/vstf/vstf/controller/unittest/__init__.py b/vstf/vstf/controller/unittest/__init__.py index df7d24d0..df7d24d0 100755..100644 --- a/vstf/vstf/controller/unittest/__init__.py +++ b/vstf/vstf/controller/unittest/__init__.py diff --git a/vstf/vstf/controller/unittest/configuration.py b/vstf/vstf/controller/unittest/configuration.py index 6312efa2..6312efa2 100755..100644 --- a/vstf/vstf/controller/unittest/configuration.py +++ b/vstf/vstf/controller/unittest/configuration.py diff --git a/vstf/vstf/controller/unittest/model.py b/vstf/vstf/controller/unittest/model.py index 4c38973e..4c38973e 100755..100644 --- a/vstf/vstf/controller/unittest/model.py +++ b/vstf/vstf/controller/unittest/model.py diff --git a/vstf/vstf/controller/unittest/test_cfg_intent_parse.py b/vstf/vstf/controller/unittest/test_cfg_intent_parse.py index a08607bb..a08607bb 100755..100644 --- a/vstf/vstf/controller/unittest/test_cfg_intent_parse.py +++ b/vstf/vstf/controller/unittest/test_cfg_intent_parse.py diff --git a/vstf/vstf/controller/unittest/test_collect.py b/vstf/vstf/controller/unittest/test_collect.py index 3e84d019..3e84d019 100755..100644 --- a/vstf/vstf/controller/unittest/test_collect.py +++ b/vstf/vstf/controller/unittest/test_collect.py diff --git a/vstf/vstf/controller/unittest/test_driver_function.py b/vstf/vstf/controller/unittest/test_driver_function.py index 8d45c7b3..8d45c7b3 100755..100644 --- a/vstf/vstf/controller/unittest/test_driver_function.py +++ b/vstf/vstf/controller/unittest/test_driver_function.py diff --git a/vstf/vstf/controller/unittest/test_env_build.py b/vstf/vstf/controller/unittest/test_env_build.py index e4529e48..e4529e48 100755..100644 --- a/vstf/vstf/controller/unittest/test_env_build.py +++ b/vstf/vstf/controller/unittest/test_env_build.py diff --git a/vstf/vstf/controller/unittest/test_perf.py b/vstf/vstf/controller/unittest/test_perf.py index 0258ab65..0258ab65 100755..100644 --- a/vstf/vstf/controller/unittest/test_perf.py +++ b/vstf/vstf/controller/unittest/test_perf.py diff --git a/vstf/vstf/controller/unittest/test_ssh.py b/vstf/vstf/controller/unittest/test_ssh.py index f2403551..f2403551 100755..100644 --- a/vstf/vstf/controller/unittest/test_ssh.py +++ b/vstf/vstf/controller/unittest/test_ssh.py diff --git a/vstf/vstf/controller/vstfadm.py b/vstf/vstf/controller/vstfadm.py index 86641e7d..86641e7d 100755..100644 --- a/vstf/vstf/controller/vstfadm.py +++ b/vstf/vstf/controller/vstfadm.py diff --git a/vstf/vstf/rpc_frame_work/__init__.py b/vstf/vstf/rpc_frame_work/__init__.py index 547db686..547db686 100755..100644 --- a/vstf/vstf/rpc_frame_work/__init__.py +++ b/vstf/vstf/rpc_frame_work/__init__.py diff --git a/vstf/vstf/rpc_frame_work/constant.py b/vstf/vstf/rpc_frame_work/constant.py index 84d0592a..84d0592a 100755..100644 --- a/vstf/vstf/rpc_frame_work/constant.py +++ b/vstf/vstf/rpc_frame_work/constant.py diff --git a/vstf/vstf/rpc_frame_work/rpc_consumer.py b/vstf/vstf/rpc_frame_work/rpc_consumer.py index fb54e5db..fb54e5db 100755..100644 --- a/vstf/vstf/rpc_frame_work/rpc_consumer.py +++ b/vstf/vstf/rpc_frame_work/rpc_consumer.py diff --git a/vstf/vstf/rpc_frame_work/rpc_producer.py b/vstf/vstf/rpc_frame_work/rpc_producer.py index abf2a7fc..abf2a7fc 100755..100644 --- a/vstf/vstf/rpc_frame_work/rpc_producer.py +++ b/vstf/vstf/rpc_frame_work/rpc_producer.py |