示例#1
0
    def test_difference3(options_ios):
        host = Host(hostname="test_host", os="ios", hconfig_options=options_ios)
        rc = ["ip access-list extended test", " 10 a", " 20 b"]
        step = ["ip access-list extended test", " 10 a", " 20 b", " 30 c"]
        rc_hier = HConfig(host=host)
        rc_hier.load_from_string("\n".join(rc))
        step_hier = HConfig(host=host)
        step_hier.load_from_string("\n".join(step))

        difference = step_hier.difference(rc_hier)
        difference_children = list(
            c.cisco_style_text() for c in difference.all_children_sorted()
        )
        assert difference_children == ["ip access-list extended test", "  30 c"]
示例#2
0
    def test_difference2(options_ios):
        host = Host(hostname="test_host", os="ios", hconfig_options=options_ios)
        rc = ["a", " a1", " a2", " a3", "b"]
        step = ["a", " a1", " a2", " a3", " a4", " a5", "b", "c", "d", " d1"]
        rc_hier = HConfig(host=host)
        rc_hier.load_from_string("\n".join(rc))
        step_hier = HConfig(host=host)
        step_hier.load_from_string("\n".join(step))

        difference = step_hier.difference(rc_hier)
        difference_children = list(
            c.cisco_style_text() for c in difference.all_children_sorted()
        )
        assert len(difference_children) == 6
示例#3
0
    def test_difference(self):
        rc = ['a', ' a1', ' a2', ' a3', 'b']
        step = ['a', ' a1', ' a2', ' a3', ' a4', ' a5', 'b', 'c', 'd', ' d1']
        rc_hier = HConfig(host=self.host_a)
        rc_hier.load_from_string("\n".join(rc))
        step_hier = HConfig(host=self.host_a)
        step_hier.load_from_string("\n".join(step))

        difference = step_hier.difference(rc_hier)
        difference_children = list(c.cisco_style_text()
                                   for c in difference.all_children_sorted())
        self.assertEqual(len(difference_children), 6)
        self.assertIn('c', difference)
        self.assertIn('d', difference)
        self.assertIn('a4', difference.get_child('equals', 'a'))
        self.assertIn('a5', difference.get_child('equals', 'a'))
        self.assertIn('d1', difference.get_child('equals', 'd'))
示例#4
0
    def test_difference1(self):
        rc = ["a", " a1", " a2", " a3", "b"]
        step = ["a", " a1", " a2", " a3", " a4", " a5", "b", "c", "d", " d1"]
        rc_hier = HConfig(host=self.host_a)
        rc_hier.load_from_string("\n".join(rc))
        step_hier = HConfig(host=self.host_a)
        step_hier.load_from_string("\n".join(step))

        difference = step_hier.difference(rc_hier)
        difference_children = list(
            c.cisco_style_text() for c in difference.all_children_sorted()
        )

        assert len(difference_children) == 6
        assert "c" in difference
        assert "d" in difference
        assert "a4" in difference.get_child("equals", "a")
        assert "a5" in difference.get_child("equals", "a")
        assert "d1" in difference.get_child("equals", "d")