Bug fix: #4011 #4012 - "show run acl", "show run interfaces" - traceback when no ACL_RULE/INTERFACE is present. (#4226)
* Fix bugs - "show run acl/interfaces" returns traceback when no ACL_RULE/INTERFACE is present in configuration - Change logic in main to take data only if the var_json appears in DB. - Add unit testing for bug fix & fix comments Signed-off-by: Noa Or <noaor@mellanox.com>
This commit is contained in:
parent
eede9a9db9
commit
1a0067ede0
@ -295,7 +295,7 @@ def main():
|
||||
template = jinja2.Template('{{' + args.var + '}}')
|
||||
print(template.render(data))
|
||||
|
||||
if args.var_json != None:
|
||||
if args.var_json != None and args.var_json in data:
|
||||
if args.key != None:
|
||||
print(json.dumps(FormatConverter.to_serialized(data[args.var_json], args.key), indent=4, cls=minigraph_encoder))
|
||||
else:
|
||||
|
@ -331,3 +331,13 @@ class TestCfgGen(TestCase):
|
||||
output = subprocess.check_output("sed -i \'s/%s/%s/g\' %s" % (BACKEND_TOR_ROUTER, TOR_ROUTER, self.sample_graph_simple), shell=True)
|
||||
|
||||
self.test_jinja_expression(self.sample_graph_simple, TOR_ROUTER)
|
||||
|
||||
def test_show_run_acl(self):
|
||||
argument = '-a \'{"key1":"value"}\' --var-json ACL_RULE'
|
||||
output = self.run_script(argument)
|
||||
self.assertEqual(output, '')
|
||||
|
||||
def test_show_run_interfaces(self):
|
||||
argument = '-a \'{"key1":"value"}\' --var-json INTERFACE'
|
||||
output = self.run_script(argument)
|
||||
self.assertEqual(output, '')
|
||||
|
Loading…
Reference in New Issue
Block a user