summaryrefslogtreecommitdiffstats
path: root/vstf
diff options
context:
space:
mode:
authorYiting.Li <liyiting@huawei.com>2016-01-22 10:46:57 +0800
committerJun Li <matthew.lijun@huawei.com>2016-01-25 01:30:21 +0000
commit07fa6d43cf0ac1baf3cd67e741f474273fbd387d (patch)
tree17ed17fa64b121bd5189070f46e14db336a50bd4 /vstf
parent486719ea0024e683f4e90832e647becf3d5d5ab7 (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)
Diffstat (limited to 'vstf')
-rw-r--r--[-rwxr-xr-x]vstf/README.rst5
-rw-r--r--[-rwxr-xr-x]vstf/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/amqp/amqp.ini0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/default/reporters.html-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/default/reporters.mail.mail-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/default/sw_perf.tool-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/Ti.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/Tn.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/Tnv.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/Tu.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/eth2eth.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/images.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/src.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/env/tester.json0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/perf/sw_perf.batch-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/perf/sw_perf.cpu-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/perf/sw_perf.device-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/perf/sw_perf.flownodes-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/perf/sw_perf.forwarding-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/reporter/reporters.template-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/spirent/optimize.ini0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/spirent/strategy.ini0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/user/reporters.html-settings0
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/user/reporters.mail.mail-settings7
-rw-r--r--[-rwxr-xr-x]vstf/etc/vstf/user/sw_perf.tool-settings0
-rw-r--r--[-rwxr-xr-x]vstf/install.sh8
-rw-r--r--[-rwxr-xr-x]vstf/pylint.conf0
-rw-r--r--[-rwxr-xr-x]vstf/requirements.txt0
-rw-r--r--[-rwxr-xr-x]vstf/setup.cfg13
-rw-r--r--[-rwxr-xr-x]vstf/setup.py0
-rw-r--r--[-rwxr-xr-x]vstf/tool_package/install.sh8
-rw-r--r--[-rwxr-xr-x]vstf/tool_package/netperf-2.7.0.tar.gzbin1299801 -> 1299801 bytes
-rw-r--r--[-rwxr-xr-x]vstf/tool_package/qperf-0.4.9.tar.gzbin207844 -> 207844 bytes
-rw-r--r--[-rwxr-xr-x]vstf/tool_package/vnstat-1.14.tar.gzbin103281 -> 103281 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/__init__.py0
-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
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/candy_text.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/cfgparser.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/check.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/cliutil.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/cmds.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/constants.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/daemon.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/decorator.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/excepts.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/input.py3
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/log.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/message.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/perfmark.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/pyhtml.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/rsync.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/saltstack.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/ssh.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/test_func.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/unix.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/utils.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/common/vstfcli.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/api_server.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/database/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/database/constants.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/database/dbinterface.py1
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/database/tables.py15
-rwxr-xr-xvstf/vstf/controller/env_build/README15
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/env_build/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/env_build/cfg_intent_parse.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/env_build/env_build.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/env_build/env_collect.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/fabricant.py0
-rwxr-xr-xvstf/vstf/controller/reporters/README109
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/mail/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/mail/mail.py2
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/mail/sendmail.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/candy_generator.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/data_factory.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/html/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/html/html_base.py1
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/html/htmlcreator.py1
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/element.py2
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/pdfcreator.py2
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/pdftemplate.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/story.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/pdf/styles.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/provider/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/provider/html_provider.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/report/provider/pdf_provider.py2
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/reporters/reporter.py1
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/Traffic-types.gifbin160486 -> 160486 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/Traffic-types.jpgbin541886 -> 541886 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Ti-direct.gifbin41247 -> 41247 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Ti-direct.jpgbin147185 -> 147185 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Ti.gifbin61062 -> 61062 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Ti.jpgbin221926 -> 221926 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tn.gifbin57362 -> 57362 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tn.jpgbin213515 -> 213515 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tnv.gifbin89853 -> 89853 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tnv.jpgbin308215 -> 308215 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tu.gifbin56592 -> 56592 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/deployment/Tu.jpgbin183475 -> 183475 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/iperf/Ti-3.gifbin83575 -> 83575 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/iperf/Ti-3.jpgbin277597 -> 277597 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/logo.jpgbin4713 -> 4713 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-1.gifbin71843 -> 71843 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-1.jpgbin251078 -> 251078 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-2.gifbin73543 -> 73543 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-2.jpgbin249443 -> 249443 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-direct-1.gifbin53683 -> 53683 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-direct-1.jpgbin177600 -> 177600 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-direct-2.gifbin51763 -> 51763 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Ti-direct-2.jpgbin183484 -> 183484 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-1.gifbin66762 -> 66762 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-1.jpgbin244190 -> 244190 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-1v.gifbin93153 -> 93153 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-1v.jpgbin327571 -> 327571 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-2.gifbin77273 -> 77273 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-2.jpgbin269108 -> 269108 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-2v.gifbin103475 -> 103475 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tn-2v.jpgbin353221 -> 353221 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-1.gifbin67571 -> 67571 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-1.jpgbin224490 -> 224490 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-2.gifbin67834 -> 67834 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-2.jpgbin224479 -> 224479 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-3.gifbin74698 -> 74698 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/pktgen/Tu-3.jpgbin243850 -> 243850 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-1.gifbin53330 -> 53330 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-1.jpgbin207261 -> 207261 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-1v.gifbin76052 -> 76052 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-1v.jpgbin289977 -> 289977 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-2.gifbin53711 -> 53711 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-2.jpgbin210919 -> 210919 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-2v.gifbin72834 -> 72834 bytes
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/res/spirent/Tn-2v.jpgbin286486 -> 286486 bytes
-rwxr-xr-xvstf/vstf/controller/settings/README61
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/cpu_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/device_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/flows_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/forwarding_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/html_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/mail_settings.py11
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/perf_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/settings_input.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/template_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/tester_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/settings/tool_settings.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/spirent/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/spirent/appliance.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/spirent/common/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/spirent/common/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/spirent/common/result_analysis.py0
-rwxr-xr-xvstf/vstf/controller/sw_perf/README39
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/flow_producer.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/perf_provider.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/performance.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/sw_perf/raw_data.py0
-rwxr-xr-xvstf/vstf/controller/unittest/README45
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/configuration.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/model.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_cfg_intent_parse.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_collect.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_driver_function.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_env_build.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_perf.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/unittest/test_ssh.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/controller/vstfadm.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/rpc_frame_work/__init__.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/rpc_frame_work/constant.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/rpc_frame_work/rpc_consumer.py0
-rw-r--r--[-rwxr-xr-x]vstf/vstf/rpc_frame_work/rpc_producer.py0
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
index 666945af..666945af 100755..100644
--- a/vstf/tool_package/netperf-2.7.0.tar.gz
+++ b/vstf/tool_package/netperf-2.7.0.tar.gz
Binary files differ
diff --git a/vstf/tool_package/qperf-0.4.9.tar.gz b/vstf/tool_package/qperf-0.4.9.tar.gz
index 12ec727c..12ec727c 100755..100644
--- a/vstf/tool_package/qperf-0.4.9.tar.gz
+++ b/vstf/tool_package/qperf-0.4.9.tar.gz
Binary files differ
diff --git a/vstf/tool_package/vnstat-1.14.tar.gz b/vstf/tool_package/vnstat-1.14.tar.gz
index f8b0bcf4..f8b0bcf4 100755..100644
--- a/vstf/tool_package/vnstat-1.14.tar.gz
+++ b/vstf/tool_package/vnstat-1.14.tar.gz
Binary files differ
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
index 4b1fc600..4b1fc600 100755..100644
--- a/vstf/vstf/controller/res/Traffic-types.gif
+++ b/vstf/vstf/controller/res/Traffic-types.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/Traffic-types.jpg b/vstf/vstf/controller/res/Traffic-types.jpg
index 07f23300..07f23300 100755..100644
--- a/vstf/vstf/controller/res/Traffic-types.jpg
+++ b/vstf/vstf/controller/res/Traffic-types.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Ti-direct.gif b/vstf/vstf/controller/res/deployment/Ti-direct.gif
index c06a222b..c06a222b 100755..100644
--- a/vstf/vstf/controller/res/deployment/Ti-direct.gif
+++ b/vstf/vstf/controller/res/deployment/Ti-direct.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Ti-direct.jpg b/vstf/vstf/controller/res/deployment/Ti-direct.jpg
index edb25cad..edb25cad 100755..100644
--- a/vstf/vstf/controller/res/deployment/Ti-direct.jpg
+++ b/vstf/vstf/controller/res/deployment/Ti-direct.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Ti.gif b/vstf/vstf/controller/res/deployment/Ti.gif
index 56ada3f6..56ada3f6 100755..100644
--- a/vstf/vstf/controller/res/deployment/Ti.gif
+++ b/vstf/vstf/controller/res/deployment/Ti.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Ti.jpg b/vstf/vstf/controller/res/deployment/Ti.jpg
index 951b1c09..951b1c09 100755..100644
--- a/vstf/vstf/controller/res/deployment/Ti.jpg
+++ b/vstf/vstf/controller/res/deployment/Ti.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tn.gif b/vstf/vstf/controller/res/deployment/Tn.gif
index 4367ded0..4367ded0 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tn.gif
+++ b/vstf/vstf/controller/res/deployment/Tn.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tn.jpg b/vstf/vstf/controller/res/deployment/Tn.jpg
index 45a17048..45a17048 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tn.jpg
+++ b/vstf/vstf/controller/res/deployment/Tn.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tnv.gif b/vstf/vstf/controller/res/deployment/Tnv.gif
index dfc0bd58..dfc0bd58 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tnv.gif
+++ b/vstf/vstf/controller/res/deployment/Tnv.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tnv.jpg b/vstf/vstf/controller/res/deployment/Tnv.jpg
index fb47d8a3..fb47d8a3 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tnv.jpg
+++ b/vstf/vstf/controller/res/deployment/Tnv.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tu.gif b/vstf/vstf/controller/res/deployment/Tu.gif
index 426667ed..426667ed 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tu.gif
+++ b/vstf/vstf/controller/res/deployment/Tu.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/deployment/Tu.jpg b/vstf/vstf/controller/res/deployment/Tu.jpg
index be62df75..be62df75 100755..100644
--- a/vstf/vstf/controller/res/deployment/Tu.jpg
+++ b/vstf/vstf/controller/res/deployment/Tu.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/iperf/Ti-3.gif b/vstf/vstf/controller/res/iperf/Ti-3.gif
index e09094a2..e09094a2 100755..100644
--- a/vstf/vstf/controller/res/iperf/Ti-3.gif
+++ b/vstf/vstf/controller/res/iperf/Ti-3.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/iperf/Ti-3.jpg b/vstf/vstf/controller/res/iperf/Ti-3.jpg
index cdf75271..cdf75271 100755..100644
--- a/vstf/vstf/controller/res/iperf/Ti-3.jpg
+++ b/vstf/vstf/controller/res/iperf/Ti-3.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/logo.jpg b/vstf/vstf/controller/res/logo.jpg
index 9d524829..9d524829 100755..100644
--- a/vstf/vstf/controller/res/logo.jpg
+++ b/vstf/vstf/controller/res/logo.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-1.gif b/vstf/vstf/controller/res/pktgen/Ti-1.gif
index ed9e44ac..ed9e44ac 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-1.gif
+++ b/vstf/vstf/controller/res/pktgen/Ti-1.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-1.jpg b/vstf/vstf/controller/res/pktgen/Ti-1.jpg
index 5898769f..5898769f 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-1.jpg
+++ b/vstf/vstf/controller/res/pktgen/Ti-1.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-2.gif b/vstf/vstf/controller/res/pktgen/Ti-2.gif
index 59359b13..59359b13 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-2.gif
+++ b/vstf/vstf/controller/res/pktgen/Ti-2.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-2.jpg b/vstf/vstf/controller/res/pktgen/Ti-2.jpg
index ea4b2620..ea4b2620 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-2.jpg
+++ b/vstf/vstf/controller/res/pktgen/Ti-2.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif b/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif
index 57b148c6..57b148c6 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif
+++ b/vstf/vstf/controller/res/pktgen/Ti-direct-1.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg b/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg
index 1255dc8e..1255dc8e 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg
+++ b/vstf/vstf/controller/res/pktgen/Ti-direct-1.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif b/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif
index 43e58fbc..43e58fbc 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif
+++ b/vstf/vstf/controller/res/pktgen/Ti-direct-2.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg b/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg
index 898d68ee..898d68ee 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg
+++ b/vstf/vstf/controller/res/pktgen/Ti-direct-2.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-1.gif b/vstf/vstf/controller/res/pktgen/Tn-1.gif
index 74407a94..74407a94 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-1.gif
+++ b/vstf/vstf/controller/res/pktgen/Tn-1.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-1.jpg b/vstf/vstf/controller/res/pktgen/Tn-1.jpg
index f3ea6e53..f3ea6e53 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-1.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tn-1.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-1v.gif b/vstf/vstf/controller/res/pktgen/Tn-1v.gif
index 18681bbe..18681bbe 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-1v.gif
+++ b/vstf/vstf/controller/res/pktgen/Tn-1v.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-1v.jpg b/vstf/vstf/controller/res/pktgen/Tn-1v.jpg
index 59d4ed5c..59d4ed5c 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-1v.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tn-1v.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-2.gif b/vstf/vstf/controller/res/pktgen/Tn-2.gif
index e26db799..e26db799 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-2.gif
+++ b/vstf/vstf/controller/res/pktgen/Tn-2.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-2.jpg b/vstf/vstf/controller/res/pktgen/Tn-2.jpg
index 15ed91e3..15ed91e3 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-2.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tn-2.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-2v.gif b/vstf/vstf/controller/res/pktgen/Tn-2v.gif
index 9ec54578..9ec54578 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-2v.gif
+++ b/vstf/vstf/controller/res/pktgen/Tn-2v.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tn-2v.jpg b/vstf/vstf/controller/res/pktgen/Tn-2v.jpg
index 2ff06ea6..2ff06ea6 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tn-2v.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tn-2v.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-1.gif b/vstf/vstf/controller/res/pktgen/Tu-1.gif
index 9f2357ad..9f2357ad 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-1.gif
+++ b/vstf/vstf/controller/res/pktgen/Tu-1.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-1.jpg b/vstf/vstf/controller/res/pktgen/Tu-1.jpg
index ad2724a1..ad2724a1 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-1.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tu-1.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-2.gif b/vstf/vstf/controller/res/pktgen/Tu-2.gif
index b0a2cede..b0a2cede 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-2.gif
+++ b/vstf/vstf/controller/res/pktgen/Tu-2.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-2.jpg b/vstf/vstf/controller/res/pktgen/Tu-2.jpg
index d47089b7..d47089b7 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-2.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tu-2.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-3.gif b/vstf/vstf/controller/res/pktgen/Tu-3.gif
index e0b15211..e0b15211 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-3.gif
+++ b/vstf/vstf/controller/res/pktgen/Tu-3.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/pktgen/Tu-3.jpg b/vstf/vstf/controller/res/pktgen/Tu-3.jpg
index 579808c4..579808c4 100755..100644
--- a/vstf/vstf/controller/res/pktgen/Tu-3.jpg
+++ b/vstf/vstf/controller/res/pktgen/Tu-3.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-1.gif b/vstf/vstf/controller/res/spirent/Tn-1.gif
index 97510da0..97510da0 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-1.gif
+++ b/vstf/vstf/controller/res/spirent/Tn-1.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-1.jpg b/vstf/vstf/controller/res/spirent/Tn-1.jpg
index 6886d316..6886d316 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-1.jpg
+++ b/vstf/vstf/controller/res/spirent/Tn-1.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-1v.gif b/vstf/vstf/controller/res/spirent/Tn-1v.gif
index cb7b668b..cb7b668b 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-1v.gif
+++ b/vstf/vstf/controller/res/spirent/Tn-1v.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-1v.jpg b/vstf/vstf/controller/res/spirent/Tn-1v.jpg
index 3dec4382..3dec4382 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-1v.jpg
+++ b/vstf/vstf/controller/res/spirent/Tn-1v.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-2.gif b/vstf/vstf/controller/res/spirent/Tn-2.gif
index 4eb6780a..4eb6780a 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-2.gif
+++ b/vstf/vstf/controller/res/spirent/Tn-2.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-2.jpg b/vstf/vstf/controller/res/spirent/Tn-2.jpg
index 9d425af2..9d425af2 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-2.jpg
+++ b/vstf/vstf/controller/res/spirent/Tn-2.jpg
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-2v.gif b/vstf/vstf/controller/res/spirent/Tn-2v.gif
index 21e31470..21e31470 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-2v.gif
+++ b/vstf/vstf/controller/res/spirent/Tn-2v.gif
Binary files differ
diff --git a/vstf/vstf/controller/res/spirent/Tn-2v.jpg b/vstf/vstf/controller/res/spirent/Tn-2v.jpg
index 40a38292..40a38292 100755..100644
--- a/vstf/vstf/controller/res/spirent/Tn-2v.jpg
+++ b/vstf/vstf/controller/res/spirent/Tn-2v.jpg
Binary files differ
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