summaryrefslogtreecommitdiffstats
path: root/vstf/vstf/agent
diff options
context:
space:
mode:
authorYiting.Li <liyiting@huawei.com>2016-01-22 10:46:57 +0800
committerYiting.Li <liyiting@huawei.com>2016-01-22 10:46:57 +0800
commit0ea3b714615e7a9383048a13695bbe4d62f028fd (patch)
tree17ed17fa64b121bd5189070f46e14db336a50bd4 /vstf/vstf/agent
parentc4d0a8aec1c3b883ac875e538dccde25f477c142 (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>
Diffstat (limited to 'vstf/vstf/agent')
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/agent.py0
-rwxr-xr-xvstf/vstf/agent/env/Readme9
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/__init__.py0
-rwxr-xr-xvstf/vstf/agent/env/basic/Readme39
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/collect.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/commandline.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/device_manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/image_manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/source_manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/vm9pfs.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/vm_manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/basic/vm_xml_help.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/builder.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/driver_plugins/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/driver_plugins/manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/driver_plugins/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/driver_plugins/origin_driver.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/fsmonitor/FSMonitor.py0
-rwxr-xr-xvstf/vstf/agent/env/fsmonitor/Readme13
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/fsmonitor/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/fsmonitor/constant.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/fsmonitor/utils.py0
-rwxr-xr-xvstf/vstf/agent/env/plugins/Readme49
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/plugins/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/plugins/libvirt_plugin.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/plugins/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/plugins/tester_env_plugin.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/vswitch_plugins/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/vswitch_plugins/bridge_plugin.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/vswitch_plugins/manager.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/vswitch_plugins/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/env/vswitch_plugins/ovs_plugin.py0
-rwxr-xr-xvstf/vstf/agent/equalizer/README1
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/equalizer/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/equalizer/equalizer.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/equalizer/get_info.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/equalizer/optimize.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/affctl.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/ethtool.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/iperf.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/netmap.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/netns.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/netperf.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/pktgen.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/qperf.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/sar.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/utils.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/vnstat.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/perf/vstfperf.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/softagent.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/spirent/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/spirent/spirent.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/spirent/tools.py11
-rw-r--r--[-rwxr-xr-x]vstf/vstf/agent/spirentagent.py0
-rwxr-xr-xvstf/vstf/agent/unittest/__init__.py14
-rwxr-xr-xvstf/vstf/agent/unittest/configuration.py28
-rwxr-xr-xvstf/vstf/agent/unittest/env/Readme13
-rwxr-xr-xvstf/vstf/agent/unittest/env/__init__.py14
-rwxr-xr-xvstf/vstf/agent/unittest/env/configuration/Ti.json58
-rwxr-xr-xvstf/vstf/agent/unittest/env/configuration/Tn-ovs.json36
-rwxr-xr-xvstf/vstf/agent/unittest/env/configuration/Tn.json37
-rwxr-xr-xvstf/vstf/agent/unittest/env/configuration/Tn1v.json85
-rwxr-xr-xvstf/vstf/agent/unittest/env/configuration/Tu.json71
-rwxr-xr-xvstf/vstf/agent/unittest/env/model.py24
-rwxr-xr-xvstf/vstf/agent/unittest/env/run_test.py33
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_bridge_plugin.py56
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_builder.py74
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_devicemanager.py38
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_drivermanager.py50
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_origin_driver.py44
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_sourcemanager.py53
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_vm9pfs.py71
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_vm_manager.py69
-rwxr-xr-xvstf/vstf/agent/unittest/env/test_vs_plugin_manager.py68
-rwxr-xr-xvstf/vstf/agent/unittest/perf/Readme7
-rwxr-xr-xvstf/vstf/agent/unittest/perf/__init__.py14
-rwxr-xr-xvstf/vstf/agent/unittest/perf/model.py46
-rwxr-xr-xvstf/vstf/agent/unittest/perf/run_test.py32
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_ethtool.py42
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_netns.py67
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_netperf.py105
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_pktgen.py90
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_qperf.py102
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_utils.py31
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_vnstat.py57
-rwxr-xr-xvstf/vstf/agent/unittest/perf/test_vstfperf.py98
-rwxr-xr-xvstf/vstf/agent/unittest/test_callback.py80
90 files changed, 10 insertions, 1819 deletions
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()