Updated test scripts and drivers; New ONOS test for ARP and reactive flows
diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index 97c5db3..286b1c8 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -77,7 +77,7 @@
#cmdString = "sudo mn --topo "+self.options['topo']+","+self.options['topocount']+" --mac --switch "+self.options['switch']+" --controller "+self.options['controller']
#cmdString = "sudo mn --custom ~/mininet/custom/topo-2sw-2host.py --controller remote --ip 192.168.56.102 --port 6633 --topo mytopo"
main.log.info("building fresh mininet")
- cmdString = "sudo mn " + self.options['arg1'] + " " + self.options['arg2'] + " --arp --mac --controller " + self.options['controller']
+ cmdString = "sudo mn " + self.options['arg1'] + " " + self.options['arg2'] + " --mac --controller " + self.options['controller']
#resultCommand = self.execute(cmd=cmdString,prompt='mininet>',timeout=120)
self.handle.sendline(cmdString)
self.handle.expect("sudo mn")
@@ -397,6 +397,24 @@
def ctrl_one(self, ip):
self.execute(cmd="sh ~/ONOS/scripts/ctrl-one.sh "+ip, prompt="mininet",timeout=20)
+
+ def arping(self, src, dest, destmac):
+ self.handle.sendline('')
+ self.handle.expect("mininet")
+
+ self.handle.sendline(src + ' arping ' + dest)
+ try:
+ self.handle.expect(destmac)
+ main.log.info("ARP successful")
+ self.handle.expect("mininet")
+ return main.TRUE
+ except:
+ main.log.warn("ARP FAILURE")
+ self.handle.expect("mininet")
+ return main.FALSE
+
+ def decToHex(num):
+ return hex(num).split('x')[1]
if __name__ != "__main__":
import sys
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
index a04309e..3aab38b 100644
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -154,7 +154,7 @@
response = self.execute(cmd="~/ONOS/start-onos.sh status ",prompt="running",timeout=10)
self.execute(cmd="\r",prompt="\$",timeout=10)
tail1 = self.execute(cmd="tail ~/ONOS/onos-logs/onos.*.log",prompt="\$",timeout=10)
- time.sleep(2)
+ time.sleep(30)
self.execute(cmd="\r",prompt="\$",timeout=10)
tail2 = self.execute(cmd="tail ~/ONOS/onos-logs/onos.*.log",prompt="\$",timeout=10)
pattern = '(.*)1 instance(.*)'
@@ -268,9 +268,6 @@
self.handle.sendline("~/ONOS/web/delete_flow.py all")
self.handle.expect("delete_flow")
self.handle.expect("\$",1000)
- self.handle.sendline("~/ONOS/web/clear_flow.py all")
- self.handle.expect("clear_flow")
- self.handle.expect("\$",1000)
main.log.info("Flows deleted")
else:
main.log.info("Deleting flow "+str(delParams[0])+"...")
@@ -279,9 +276,6 @@
self.handle.sendline("~/ONOS/web/delete_flow.py %d" % int(delParams[0]))
self.handle.expect("delete_flow")
self.handle.expect("\$",60)
- self.handle.sendline("~/ONOS/web/clear_flow.py %d" % int(delParams[0]))
- self.handle.expect("clear_flow")
- self.handle.expect("\$",60)
main.log.info("Flow deleted")
elif len(delParams)==2:
main.log.info("Deleting flows "+str(delParams[0])+" through "+str(delParams[1])+"...")
@@ -290,9 +284,6 @@
self.handle.sendline("~/ONOS/web/delete_flow.py %d %d" % (int(delParams[0]), int(delParams[1])))
self.handle.expect("delete_flow")
self.handle.expect("\$",600)
- self.handle.sendline("~/ONOS/web/clear_flow.py %d %d" % (int(delParams[0]), int(delParams[1])))
- self.handle.expect("clear_flow")
- self.handle.expect("\$",600)
main.log.info("Flows deleted")
def check_flow(self):
@@ -493,6 +484,7 @@
self.handle.sendline("")
self.handle.expect("\$")
self.handle.expect("\$")
+ main.log.info("Keyspace dropped")
def ctrl_none(self):
'''
@@ -534,7 +526,7 @@
self.handle.sendline("git pull")
uptodate = 0
- i=self.handle.expect(['fatal','Username\sfor\s(.*):\s','Unpacking\sobjects',pexpect.TIMEOUT,'Already up-to-date','Aborting'],timeout=180)
+ i=self.handle.expect(['fatal','Username\sfor\s(.*):\s','Unpacking\sobjects',pexpect.TIMEOUT,'Already up-to-date','Aborting'],timeout=60)
if i==0:
main.log.error("Git pull had some issue...")
return main.FALSE