summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/topotests/lib/topogen.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/tests/topotests/lib/topogen.py b/tests/topotests/lib/topogen.py
index f437401517..97f006c59c 100644
--- a/tests/topotests/lib/topogen.py
+++ b/tests/topotests/lib/topogen.py
@@ -40,6 +40,7 @@ Basic usage instructions:
import os
import sys
+import json
from mininet.net import Mininet
from mininet.log import setLogLevel
@@ -388,7 +389,7 @@ class TopoRouter(TopoGear):
"""
return self.tgen.net[self.name].startRouter()
- def vtysh_cmd(self, command):
+ def vtysh_cmd(self, command, isjson=False):
"""
Runs the provided command string in the vty shell and returns a string
with the response.
@@ -401,7 +402,11 @@ class TopoRouter(TopoGear):
return self.vtysh_multicmd(command)
vtysh_command = 'vtysh -c "{}" 2>/dev/null'.format(command)
- return self.run(vtysh_command)
+ output = self.run(vtysh_command)
+ if isjson is False:
+ return output
+
+ return json.loads(output)
def vtysh_multicmd(self, commands, pretty_output=True):
"""