summaryrefslogtreecommitdiffstats
path: root/framework/src/onos/tools/test/topos/rftest.py
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/tools/test/topos/rftest.py')
-rw-r--r--framework/src/onos/tools/test/topos/rftest.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/framework/src/onos/tools/test/topos/rftest.py b/framework/src/onos/tools/test/topos/rftest.py
new file mode 100644
index 00000000..7aba54f9
--- /dev/null
+++ b/framework/src/onos/tools/test/topos/rftest.py
@@ -0,0 +1,40 @@
+#!/usr/bin/python
+
+import sys
+
+from mininet.net import Mininet
+from mininet.cli import CLI
+from mininet.log import setLogLevel
+from mininet.node import RemoteController
+
+from rftesttopo import ReactiveForwardingTestTopo
+
+setLogLevel( 'info' )
+
+def pingloop( net ):
+ setLogLevel( 'error' )
+ try:
+ while True:
+ net.ping()
+ finally:
+ setLogLevel( 'info' )
+
+def run(controllers=[ '127.0.0.1' ]):
+ Mininet.pingloop = pingloop
+ net = Mininet( topo=ReactiveForwardingTestTopo(), build=False, autoSetMacs=True )
+ ctrl_count = 0
+ for controllerIP in controllers:
+ net.addController( 'c%d' % ctrl_count, RemoteController, ip=controllerIP )
+ ctrl_count = ctrl_count + 1
+ net.build()
+ net.start()
+ CLI( net )
+ net.stop()
+
+if __name__ == '__main__':
+ if len( sys.argv ) > 1:
+ controllers = sys.argv[ 1: ]
+ else:
+ print 'Usage: rf-test.py <c0 IP> <c1 IP> ...'
+ exit( 1 )
+ run( controllers )