Esempio n. 1
0
 def test_build_indent_based_list__multiline_indent(self):
     LINE = '  cfg_line'
     cfg = LINE + '\n' + LINE
     parser = HTParser(cfg)
     parser.find_objects("fake_object")
     res = [(2, LINE), (2, LINE)]
     self.assertEqual(res, parser._indent_list)
Esempio n. 2
0
 def test_init__multiline_mixed_different_indent(self):
     LINE = "cfg_line"
     cfg = "  " + LINE + "\n" + "  \n" + "   " + LINE
     parser = HTParser(cfg)
     parser.find_objects("fake_object")
     res = [(2, '  cfg_line'), (3, '   cfg_line')]
     self.assertEqual(res, parser._indent_list)
Esempio n. 3
0
 def test_re_search_children_interface(self):
     linespec = "^interf"
     child_linespec = "\s*no ip*"
     exp = ['interface Serial1/0', ' no ip address']
     parse = HTParser(self.cfg)
     act = [
         obj for obj in parse.find_objects(linespec)
         if obj.re_search_children(child_linespec)
     ]
     self.assertEqual(1, len(act))
     self.assertEqual(exp, act[0].str_list())
Esempio n. 4
0
 def test_re_match_nat(self):
     linespec = "^interf"
     child_linespec = "\s*ip nat inside"
     match_regex = "^interface (\S+)"
     exp = 'Port-channel11.2033'
     parse = HTParser(self.cfg)
     act = [
         obj for obj in parse.find_objects(linespec)
         if obj.re_search_children(child_linespec)
     ]
     self.assertEqual(1, len(act))
     self.assertEqual(exp, act[0].re_match(match_regex))
Esempio n. 5
0
 def test_re_search_children_acl(self):
     linespec = "^ip access"
     child_linespec = ACL_CHILD_REGEX
     exp = [
         'ip access-list standard neutron_acl_2033_5c409ae1',
         ' permit 10.10.0.0 0.0.255.255', ' dummy-input2'
     ]
     parse = HTParser(self.cfg)
     act = [
         obj for obj in parse.find_objects(linespec)
         if obj.re_search_children(child_linespec)
     ]
     self.assertEqual(1, len(act))
     self.assertEqual(exp, act[0].str_list())
Esempio n. 6
0
 def test_init__multiline_blank(self):
     LINE = ""
     cfg = LINE + "\n" + LINE + "\n" + LINE
     parser = HTParser(cfg)
     parser.find_objects("fake_object")
     self.assertEqual([], parser._indent_list)
Esempio n. 7
0
 def test_build_indent_based_list__singleline_comment(self):
     LINE = '!'
     cfg = LINE
     parser = HTParser(cfg)
     parser.find_objects("fake_object")
     self.assertEqual([], parser._indent_list)