Attempted fix for random control strings
diff --git a/TestON/drivers/common/cli/onosclidriver.py b/TestON/drivers/common/cli/onosclidriver.py
index 9f08e06..a301065 100644
--- a/TestON/drivers/common/cli/onosclidriver.py
+++ b/TestON/drivers/common/cli/onosclidriver.py
@@ -183,6 +183,7 @@
and passed to startOnosCli from PARAMS file as str.
"""
try:
+ self.handle.setecho(False)
self.handle.sendline( "" )
x = self.handle.expect( [
"\$", "onos>" ], timeout=10 )
@@ -261,20 +262,21 @@
+ cmdStr + "'\"" )
self.handle.expect( "onos>" )
self.handle.sendline( cmdStr )
- self.handle.expect( cmdStr )
self.handle.expect( "onos>" )
handle = self.handle.before
-
- self.handle.sendline( "" )
- self.handle.expect( "onos>" )
+ print repr( handle )
+ # Remove control strings from output
+ ansiEscape = re.compile( r'\x1b[^m]*m' )
+ handle = ansiEscape.sub( '', handle )
+ # parse for just the output, remove the cmd from handle
+ output = handle.split( cmdStr, 1 )[1]
+ print repr( output )
main.log.info( "Command '" + str( cmdStr ) + "' sent to "
+ self.name + "." )
- ansiEscape = re.compile( r'\x1b[^m]*m' )
- handle = ansiEscape.sub( '', handle )
- return handle
+ return output
except pexpect.EOF:
main.log.error( self.name + ": EOF exception found" )
main.log.error( self.name + ": " + self.handle.before )