New method to discover host
- Add retry to check topology
- Using arping to discover host
- Rename the folder
Change-Id: Ifdca303c1cbeb14d2215ef32c74e4d6947160139
diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index 89e591b..35674ab 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -1159,11 +1159,11 @@
main.exit()
return response
- def links( self ):
+ def links( self, timeout=20 ):
main.log.info( self.name + ": List network links" )
try:
response = self.execute( cmd='links', prompt='mininet>',
- timeout=20 )
+ timeout=timeout )
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
main.log.error( self.name + ": " + self.handle.before )
@@ -1985,7 +1985,7 @@
response = main.FALSE
return response
- def arping( self, srcHost="", dstHost="10.128.20.211", ethDevice="" ):
+ def arping( self, srcHost="", dstHost="10.128.20.211", ethDevice="", output=main.TRUE ):
"""
Description:
Sends arp message from mininet host for hosts discovery
@@ -1999,7 +1999,8 @@
ethDevice = '-I ' + ethDevice + ' '
cmd = srcHost + " arping -c1 " + ethDevice + dstHost
try:
- main.log.info( "Sending: " + cmd )
+ if output:
+ main.log.info( "Sending: " + cmd )
self.handle.sendline( cmd )
i = self.handle.expect( [ "mininet>", "arping: " ] )
if i == 0:
@@ -2508,7 +2509,7 @@
hosts[ name ] = { "interfaces": interfaces }
return hosts
- def getLinks( self ):
+ def getLinks( self, timeout=20 ):
"""
Gathers information about current Mininet links. These links may not
be up if one of the ports is down.
@@ -2525,7 +2526,7 @@
hosts, this is just the eth#.
"""
self.update()
- response = self.links().split( '\n' )
+ response = self.links(timeout=timeout).split( '\n' )
# Examples:
# s1-eth3<->s2-eth1 (OK OK)