More bad input handling
Change-Id: I3509892b187138b725d139a2975746e874cba5bb
diff --git a/TestON/drivers/common/cli/emulator/mininetclidriver.py b/TestON/drivers/common/cli/emulator/mininetclidriver.py
index 95e6ee5..21eb959 100644
--- a/TestON/drivers/common/cli/emulator/mininetclidriver.py
+++ b/TestON/drivers/common/cli/emulator/mininetclidriver.py
@@ -1906,19 +1906,25 @@
if len(flowTable1) != len(flowTable2):
main.log.warn( "Flow table lengths do not match" )
return main.FALSE
-
dFields = ["n_bytes", "cookie", "n_packets", "duration"]
for flow1, flow2 in zip(flowTable1, flowTable2):
- map( lambda a: map(a.pop, dFields), [flow1, flow2] )
-
+ for field in dFields:
+ try:
+ flow1.pop( field )
+ except KeyError as e:
+ main.log.warn( e )
+ main.log.debug( flow1 )
+ try:
+ flow2.pop( field )
+ except KeyError as e:
+ main.log.warn( e )
+ main.log.debug( flow2 )
for i in range( len(flowTable1) ):
if flowTable1[i] not in flowTable2:
main.log.warn( "Flow tables do not match:" )
main.log.warn( "Old flow:\n{}\n not in new flow table".format( flowTable1[i] ) )
return main.FALSE
-
return main.TRUE
-
except Exception:
main.log.exception( "Uncaught exception!" )
main.cleanup()