Starting Topology Performance test framework
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
index 44d796a..d023a99 100644
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -81,9 +81,11 @@
'''
response = ''
try:
+ self.handle.sendline("")
+ self.handle.expect("onos>")
self.handle.sendline("system:shutdown")
self.handle.expect("Confirm")
- self.handle.sendline("Yes")
+ self.handle.sendline("yes")
self.handle.expect("\$")
except pexpect.EOF:
@@ -479,7 +481,7 @@
main.log.info(self.name+" ::::::")
main.cleanup()
main.exit()
-
+
def paths(self, src_id, dst_id):
'''
Returns string of paths, and the cost.
@@ -520,8 +522,6 @@
main.cleanup()
main.exit()
-
-
#Wrapper functions ****************
#Wrapper functions use existing driver
#functions and extends their use case.
diff --git a/TestON/drivers/common/cli/onosdriver.py b/TestON/drivers/common/cli/onosdriver.py
index ff13e5d..5532b8a 100644
--- a/TestON/drivers/common/cli/onosdriver.py
+++ b/TestON/drivers/common/cli/onosdriver.py
@@ -457,6 +457,8 @@
os.system("scp "+temp_directory+file_name+
" admin@"+bench_ip+":"+cell_directory)
+ return main.TRUE
+
except pexpect.EOF:
main.log.error(self.name + ": EOF exception found")
main.log.error(self.name + ": " + self.handle.before)
diff --git a/TestON/tests/ONOSNextTest/ONOSNextTest.py b/TestON/tests/ONOSNextTest/ONOSNextTest.py
index 4f716d9..0e7a707 100755
--- a/TestON/tests/ONOSNextTest/ONOSNextTest.py
+++ b/TestON/tests/ONOSNextTest/ONOSNextTest.py
@@ -6,7 +6,6 @@
import sys
import os
import re
-import time
class ONOSNextTest:
def __init__(self):
diff --git a/TestON/tests/TopoPerfNext/TopoPerfNext.params b/TestON/tests/TopoPerfNext/TopoPerfNext.params
new file mode 100644
index 0000000..2635df6
--- /dev/null
+++ b/TestON/tests/TopoPerfNext/TopoPerfNext.params
@@ -0,0 +1,27 @@
+<PARAMS>
+ <testcases>1</testcases>
+
+ <ENV>
+ <cellName>topo_perf_test</cellName>
+ </ENV>
+
+ <GIT>
+ #autoPull 'on' or 'off'
+ <autoPull>off</autoPull>
+ <checkout>master</checkout>
+ </GIT>
+
+ <CTRL>
+ <ip1>10.128.20.11</ip1>
+ <port1>6633</port1>
+ </CTRL>
+
+ <MN>
+ <ip1>10.128.10.90</ip1>
+ <ip2>10.128.10.91</ip2>
+ </MN>
+
+ <BENCH>
+ <ip>10.128.20.10</ip>
+ </BENCH>
+</PARAMS>
diff --git a/TestON/tests/TopoPerfNext/TopoPerfNext.py b/TestON/tests/TopoPerfNext/TopoPerfNext.py
new file mode 100644
index 0000000..170a43b
--- /dev/null
+++ b/TestON/tests/TopoPerfNext/TopoPerfNext.py
@@ -0,0 +1,73 @@
+#TopoPerfNext
+#
+#Topology Performance test for ONOS-next
+#
+#andrew@onlab.us
+
+import time
+import sys
+import os
+import re
+
+class TopoPerfNext:
+ def __init__(self):
+ self.default = ''
+
+ def CASE1(self, main):
+ '''
+ ONOS startup sequence
+ '''
+ cell_name = main.params['ENV']['cellName']
+
+ git_pull = main.params['GIT']['autoPull']
+ checkout_branch = main.params['GIT']['checkout']
+
+ ONOS1_ip = main.params['CTRL']['ip1']
+ MN1_ip = main.params['MN']['ip1']
+ BENCH_ip = main.params['BENCH']['ip']
+
+ main.case("Setting up test environment")
+
+ main.step("Creating cell file")
+ cell_file_result = main.ONOSbench.create_cell_file(
+ BENCH_ip, cell_name, MN1_ip, ONOS1_ip)
+
+ main.step("Applying cell file to environment")
+ cell_apply_result = main.ONOSbench.set_cell(cell_name)
+ verify_cell_result = main.ONOSbench.verify_cell()
+
+ main.step("Git checkout and pull "+checkout_branch)
+ if git_pull == 'on':
+ checkout_result = \
+ main.ONOSbench.git_checkout(checkout_branch)
+ pull_result = main.ONOSbench.git_pull()
+ else:
+ checkout_result = main.TRUE
+ pull_result = main.TRUE
+ main.log.info("Skipped git checkout and pull")
+
+ main.step("Using mvn clean & install")
+ if git_pull == 'on':
+ mvn_result = main.ONOSbench.clean_install()
+ else:
+ mvn_result = main.TRUE
+ main.log.info("Skipped mvn clean compile")
+
+ main.step("Creating ONOS package")
+ package_result = main.ONOSbench.onos_package()
+
+ main.step("Installing ONOS package")
+ install_result = main.ONOSbench.onos_install()
+
+ main.step("Starting ONOS service")
+ start_result = main.ONOSbench.onos_start(ONOS1_ip)
+
+ utilities.assert_equals(expect=main.TRUE,
+ actual= cell_file_result and cell_apply_result and\
+ verify_cell_result and checkout_result and\
+ pull_result and mvn_result and\
+ install_result and start_result,
+ onpass="Cell file created successfully",
+ onfail="Failed to create cell file")
+
+
diff --git a/TestON/tests/TopoPerfNext/TopoPerfNext.topo b/TestON/tests/TopoPerfNext/TopoPerfNext.topo
new file mode 100644
index 0000000..7d65d18
--- /dev/null
+++ b/TestON/tests/TopoPerfNext/TopoPerfNext.topo
@@ -0,0 +1,46 @@
+<TOPOLOGY>
+ <COMPONENT>
+
+ <ONOSbench>
+ <host>10.128.20.10</host>
+ <user>admin</user>
+ <password>onos_test</password>
+ <type>OnosDriver</type>
+ <connect_order>1</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOSbench>
+
+ <ONOScli>
+ <host>10.128.20.10</host>
+ <user>admin</user>
+ <password>onos_test</password>
+ <type>OnosCliDriver</type>
+ <connect_order>2</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOScli>
+
+ <ONOS1>
+ <host>10.128.20.11</host>
+ <user>sdn</user>
+ <password>sdn</password>
+ <type>OnosDriver</type>
+ <connect_order>3</connect_order>
+ <COMPONENTS> </COMPONENTS>
+ </ONOS1>
+
+ <Mininet1>
+ <host>10.128.10.90</host>
+ <user>admin</user>
+ <password>onos_test</password>
+ <type>MininetCliDriver</type>
+ <connect_order>4</connect_order>
+ <COMPONENTS>
+ <arg1> --custom topo-4fan.py </arg1>
+ <arg2> --arp --mac</arg2>
+ <arg3> --topo mytopo </arg3>
+ <controller> remote </controller>
+ </COMPONENTS>
+ </Mininet1>
+
+ </COMPONENT>
+</TOPOLOGY>