Merge "install script for TestON"
diff --git a/TestON/bin/cleanup.sh b/TestON/bin/cleanup.sh
index d921147..2d78b1e 100755
--- a/TestON/bin/cleanup.sh
+++ b/TestON/bin/cleanup.sh
@@ -1,5 +1,6 @@
#!/bin/bash
# This script will kill any TestON, ssh, and Mininet sessions that are running.
sudo kill -9 `ps -ef | grep "./cli.py" | grep -v grep | awk '{print $2}'`
+sudo kill -9 `ps -ef | grep "bin/teston" | grep -v grep | awk '{print $2}'`
sudo kill -9 `ps -ef | grep "ssh -X" | grep -v grep | awk '{print $2}'`
sudo mn -c
diff --git a/TestON/bin/updatedriver.py b/TestON/bin/updatedriver.py
index bd6974d..ca5c0f2 100644
--- a/TestON/bin/updatedriver.py
+++ b/TestON/bin/updatedriver.py
@@ -349,8 +349,9 @@
try :
self.driverPath = self.configDict['config-driver']['importTypes'][self.driver]['driver-path']
- except KeyError :
- path = re.sub("(bin)$", "", os.getcwd())
+ except KeyError:
+ location = os.path.abspath( os.path.dirname( __file__ ) )
+ path = re.sub( "(bin)$", "", location )
self.driverPath = path + "/lib/updatedriver/"
return self.driverPath
diff --git a/TestON/tests/FUNCintent/FUNCintent.params b/TestON/tests/FUNCintent/FUNCintent.params
index 81e5bb2..d1cd94c 100644
--- a/TestON/tests/FUNCintent/FUNCintent.params
+++ b/TestON/tests/FUNCintent/FUNCintent.params
@@ -51,8 +51,8 @@
<SDNIP>
<tcpProto>6</tcpProto>
<icmpProto>1</icmpProto>
- <srcPort>5001</srcPort>
- <dstPort>5001</dstPort>
+ <srcPort>179</srcPort>
+ <dstPort>179</dstPort>
</SDNIP>
</PARAMS>
diff --git a/TestON/tests/FUNCintent/FUNCintent.py b/TestON/tests/FUNCintent/FUNCintent.py
index 49c2969..832311e 100644
--- a/TestON/tests/FUNCintent/FUNCintent.py
+++ b/TestON/tests/FUNCintent/FUNCintent.py
@@ -1,9 +1,5 @@
-
# Testing the basic intent functionality of ONOS
-import time
-import json
-
class FUNCintent:
def __init__( self ):
@@ -13,6 +9,7 @@
import time
import os
import imp
+ import re
"""
- Construct tests variables
@@ -33,7 +30,7 @@
# Test variables
try:
- main.testOnDirectory = os.path.dirname( os.getcwd ( ) )
+ main.testOnDirectory = re.sub( "(/tests)$", "", main.testDir )
main.apps = main.params[ 'ENV' ][ 'cellApps' ]
gitBranch = main.params[ 'GIT' ][ 'branch' ]
main.dependencyPath = main.testOnDirectory + \
@@ -282,6 +279,7 @@
" Switches view is correct",
onfail="ONOS" + controllerStr +
" Switches view is incorrect" )
+ devicesResults = devicesResults and currentDevicesResult
if links[ controller ] and "Error" not in links[ controller ]:
currentLinksResult = main.Mininet1.compareLinks(
@@ -295,6 +293,7 @@
" links view is correct",
onfail="ONOS" + controllerStr +
" links view is incorrect" )
+ linksResults = linksResults and currentLinksResult
if hosts[ controller ] or "Error" not in hosts[ controller ]:
currentHostsResult = main.Mininet1.compareHosts(
@@ -308,6 +307,12 @@
" hosts exist in Mininet",
onfail="ONOS" + controllerStr +
" hosts don't match Mininet" )
+ hostsResults = hostsResults and currentHostsResult
+ topoResults = hostsResults and linksResults and devicesResults
+ utilities.assert_equals( expect=main.TRUE,
+ actual=topoResults,
+ onpass="ONOS correctly discovered the topology",
+ onfail="ONOS incorrectly discovered the topology" )
def CASE9( self, main ):
'''
@@ -732,7 +737,7 @@
"failed using IPV4 type with " +
"no MAC addresses" )
- main.step( "SDNIP-TCP: Add point intents between h1 and h9" )
+ main.step( "SDNIP-ICMP: Add point intents between h1 and h9" )
stepResult = main.TRUE
mac1 = main.hostsData[ 'h1' ][ 'mac' ]
mac2 = main.hostsData[ 'h9' ][ 'mac' ]
@@ -752,7 +757,7 @@
stepResult = main.intentFunction.pointIntent(
main,
- name="SDNIP-TCP",
+ name="SDNIP-ICMP",
host1="h1",
host2="h9",
deviceId1="of:0000000000000005/1",
@@ -766,14 +771,14 @@
utilities.assert_equals( expect=main.TRUE,
actual=stepResult,
- onpass="SDNIP-TCP: Point intent test " +
+ onpass="SDNIP-ICMP: Point intent test " +
"successful using IPV4 type with " +
"IP protocol TCP enabled",
- onfail="SDNIP-TCP: Point intent test " +
+ onfail="SDNIP-ICMP: Point intent test " +
"failed using IPV4 type with " +
"IP protocol TCP enabled" )
- main.step( "SDNIP-ICMP: Add point intents between h1 and h9" )
+ main.step( "SDNIP-TCP: Add point intents between h1 and h9" )
stepResult = main.TRUE
mac1 = main.hostsData[ 'h1' ][ 'mac' ]
mac2 = main.hostsData[ 'h9' ][ 'mac' ]
@@ -785,7 +790,7 @@
stepResult = main.intentFunction.pointIntent(
main,
- name="SDNIP-ICMP",
+ name="SDNIP-TCP",
host1="h1",
host2="h9",
deviceId1="of:0000000000000005/1",
@@ -793,14 +798,18 @@
mac1=mac1,
mac2=mac2,
ethType="IPV4",
- ipProto=ipProto )
+ ipProto=ipProto,
+ ip1=ip1,
+ ip2=ip2,
+ tcp1=tcp1,
+ tcp2=tcp2 )
utilities.assert_equals( expect=main.TRUE,
actual=stepResult,
- onpass="SDNIP-ICMP: Point intent test " +
+ onpass="SDNIP-TCP: Point intent test " +
"successful using IPV4 type with " +
"IP protocol ICMP enabled",
- onfail="SDNIP-ICMP: Point intent test " +
+ onfail="SDNIP-TCP: Point intent test " +
"failed using IPV4 type with " +
"IP protocol ICMP enabled" )
diff --git a/TestON/tests/SAMPscaleTopo/SAMPscaleTopo.py b/TestON/tests/SAMPscaleTopo/SAMPscaleTopo.py
index 2458c71..9a77f64 100644
--- a/TestON/tests/SAMPscaleTopo/SAMPscaleTopo.py
+++ b/TestON/tests/SAMPscaleTopo/SAMPscaleTopo.py
@@ -11,6 +11,7 @@
import time
import os
import imp
+ import re
"""
- Construct tests variables
@@ -27,7 +28,7 @@
stepResult = main.FALSE
# Test variables
- main.testOnDirectory = os.path.dirname( os.getcwd ( ) )
+ main.testOnDirectory = re.sub( "(/tests)$", "", main.testDir )
main.apps = main.params[ 'ENV' ][ 'cellApps' ]
gitBranch = main.params[ 'GIT' ][ 'branch' ]
main.dependencyPath = main.testOnDirectory + \
diff --git a/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.py b/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.py
index 96d24a9..464a0d3 100644
--- a/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.py
+++ b/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.py
@@ -11,6 +11,7 @@
import time
import os
import imp
+ import re
"""
- Construct tests variables
@@ -27,7 +28,7 @@
stepResult = main.FALSE
# Test variables
- main.testOnDirectory = os.path.dirname( os.getcwd ( ) )
+ main.testOnDirectory = re.sub( "(/tests)$", "", main.testDir )
main.cellName = main.params[ 'ENV' ][ 'cellName' ]
main.apps = main.params[ 'ENV' ][ 'cellApps' ]
gitBranch = main.params[ 'GIT' ][ 'branch' ]
diff --git a/TestON/tests/SCPFportLat/SCPFportLat.params b/TestON/tests/SCPFportLat/SCPFportLat.params
index 00c8c19..bc3d704 100644
--- a/TestON/tests/SCPFportLat/SCPFportLat.params
+++ b/TestON/tests/SCPFportLat/SCPFportLat.params
@@ -59,12 +59,12 @@
</topoConfigName>
#Number of times to iterate each case
- <numIter>2</numIter>
+ <numIter>25</numIter>
<numSwitch>2</numSwitch>
#Number of iterations to ignore initially
- <iterIgnore>0</iterIgnore>
+ <iterIgnore>5</iterIgnore>
- <portUpThreshold>0,1000</portUpThreshold>
+ <portUpThreshold>0,5000</portUpThreshold>
<portDownThreshold>0,1000</portDownThreshold>
<tabletFile>tablets_3node.json</tabletFile>
diff --git a/TestON/tests/SCPFportLat/SCPFportLat.py b/TestON/tests/SCPFportLat/SCPFportLat.py
index 9c75cb8..b900825 100644
--- a/TestON/tests/SCPFportLat/SCPFportLat.py
+++ b/TestON/tests/SCPFportLat/SCPFportLat.py
@@ -9,7 +9,7 @@
def CASE1( self, main ):
import sys
- import os.path
+ import re
import os
import time
@@ -32,9 +32,9 @@
homeDir = os.path.expanduser('~')
topoCfgFile = main.params['TEST']['topoConfigFile']
topoCfgName = main.params['TEST']['topoConfigName']
- portEventResultPath = main.params['DB']['portEventResultPath']
+ resultPath = main.params['DB']['portEventResultPath']
skipMvn = main.params ['TEST']['mci']
- testONpath = os.getcwd() #testON/bin
+ testONpath = re.sub( "(tests)$", "bin", main.testDir ) # TestON/bin
# -- INIT SECTION, ONLY RUNS ONCE -- #
if init == False:
@@ -90,7 +90,7 @@
commit = (commit.split(" "))[1]
main.step("Creating results file")
- resultsDB = open("IntentEventTPDB", "w+")
+ resultsDB = open(resultPath, "w+")
resultsDB.close()
main.log.report('Commit information - ')
@@ -137,10 +137,6 @@
main.step('Starting mininet topology ')
main.Mininet1.startNet()
- main.step('Clearing previous DB log file')
- fPortLog = open(portEventResultPath, 'w+')
- fPortLog.close()
-
main.log.report( "Initializeing " + str( clusterCount ) + " node cluster." )
for node in range(clusterCount):
main.log.info("Starting ONOS " + str(node) + " at IP: " + ONOSIp[node])
@@ -352,6 +348,8 @@
main.Mininet1.handle.sendline('sh ifconfig ' + interfaceConfig + ' up')
main.Mininet1.handle.expect('mininet>')
+ time.sleep(5)
+
jsonStrPtUp = []
for node in range (0, clusterCount):
metricsPortUp = CLIs[node].topologyEventsMetrics()
@@ -391,7 +389,7 @@
linkTimestamp = 0
- main.log.info('ptDownTimestamp: ' + str(timestampBeginPtDown))
+ main.log.info('ptUpTimestamp: ' + str(timestampBeginPtUp))
main.log.info("graphTimestamp: " + str(graphTimestamp))
main.log.info("deviceTimestamp: " + str(deviceTimestamp))
main.log.info("linkTimestamp: " + str(linkTimestamp))
diff --git a/TestON/tests/SCPFswitchLat/SCPFswitchLat.py b/TestON/tests/SCPFswitchLat/SCPFswitchLat.py
index 78ae16c..c0c4ba4 100644
--- a/TestON/tests/SCPFswitchLat/SCPFswitchLat.py
+++ b/TestON/tests/SCPFswitchLat/SCPFswitchLat.py
@@ -9,7 +9,7 @@
def CASE1( self, main ):
import sys
- import os.path
+ import re
import os
import time
@@ -34,7 +34,7 @@
topoCfgName = main.params['TEST']['topoConfigName']
switchEventResultPath = main.params['DB']['switchEventResultPath']
skipMvn = main.params ['TEST']['mci']
- testONpath = os.getcwd() #testON/bin
+ testONpath = re.sub( "(tests)$", "bin", main.testDir ) # TestON/bin
user = main.params[ 'CTRL' ][ 'user' ]
# -- INIT SECTION, ONLY RUNS ONCE -- #