コード例 #1
0
    def _render_networks(self, item, config=None):
        commands = list()
        safe_list = list()

        for entry in item["networks"]:
            network = entry["prefix"]
            cmd = "network %s" % network
            if entry["masklen"]:
                cmd += " mask %s" % to_netmask(entry["masklen"])
                network += " mask %s" % to_netmask(entry["masklen"])
            if entry["route_map"]:
                cmd += " route-map %s" % entry["route_map"]
                network += " route-map %s" % entry["route_map"]

            safe_list.append(network)

            if not config or cmd not in config:
                commands.append(cmd)

        if self.params["operation"] == "replace":
            if config:
                matches = re.findall(r"network (.*)", config, re.M)
                for entry in set(matches).difference(safe_list):
                    commands.append("no network %s" % entry)

        return commands
コード例 #2
0
    def _render_networks(self, item, config=None):
        commands = list()
        safe_list = list()

        for entry in item['networks']:
            network = entry['prefix']
            cmd = 'network %s' % network
            if entry['masklen']:
                cmd += ' mask %s' % to_netmask(entry['masklen'])
                network += ' mask %s' % to_netmask(entry['masklen'])
            if entry['route_map']:
                cmd += ' route-map %s' % entry['route_map']
                network += ' route-map %s' % entry['route_map']

            safe_list.append(network)

            if not config or cmd not in config:
                commands.append(cmd)

        if self.params['operation'] == 'replace':
            if config:
                matches = re.findall(r'network (.*)', config, re.M)
                for entry in set(matches).difference(safe_list):
                    commands.append('no network %s' % entry)

        return commands
コード例 #3
0
def test_to_netmask_invalid():
    with pytest.raises(ValueError):
        to_netmask(128)
コード例 #4
0
def test_to_netmask():
    assert '255.0.0.0' == to_netmask(8)
    assert '255.0.0.0' == to_netmask('8')
コード例 #5
0
ファイル: test_utils.py プロジェクト: kokasha/layer2_demo
def test_to_netmask():
    assert "255.0.0.0" == to_netmask(8)
    assert "255.0.0.0" == to_netmask("8")