コード例 #1
0
ファイル: test_vlan.py プロジェクト: anarkiwi/faucet
    def test_modify_routes_static_v6(self):
        """Tests the add_route() and remove_route() methods,
        starting with configured static routes for IPv6"""

        vlan_config = {
            'routes': [
                {'route': {'ip_dst': 'fc00::30:0/112', 'ip_gw': 'fc00::1:99'}},
            ],
        }

        vlan = VLAN(1, 1, vlan_config)

        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::30:0/112'): ip_address('fc00::1:99')
        })
        vlan.add_route(ip_network('fc00::10:0/112'), ip_address('fc00::1:1'))
        vlan.add_route(ip_network('fc00::20:0/112'), ip_address('fc00::1:99'))
        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::10:0/112'): ip_address('fc00::1:1'),
            ip_network('fc00::20:0/112'): ip_address('fc00::1:99'),
            ip_network('fc00::30:0/112'): ip_address('fc00::1:99')
        })
        self.assertEqual(vlan.route_count_by_ipv(6), 3)
        vlan.del_route(ip_network('fc00::10:0/112'))
        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::30:0/112'): ip_address('fc00::1:99'),
            ip_network('fc00::20:0/112'): ip_address('fc00::1:99')
        })
        self.assertEqual(vlan.route_count_by_ipv(6), 2)
        vlan.del_route(ip_network('fc00::20:0/112'))
        self.assertEqual(vlan.route_count_by_ipv(6), 1)
        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::30:0/112'): ip_address('fc00::1:99')
        })
コード例 #2
0
ファイル: test_vlan.py プロジェクト: anarkiwi/faucet
    def test_modify_routes_static_v4(self):
        """Tests the add_route() and remove_route() methods,
        starting with configured static routes for IPv4"""

        vlan_config = {
            'routes': [
                {'route': {'ip_dst': '10.99.97.0/24', 'ip_gw': '10.0.0.99'}},
            ],
        }

        vlan = VLAN(1, 1, vlan_config)

        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.97.0/24'): ip_address('10.0.0.99')
        })
        vlan.add_route(ip_network('10.99.99.0/24'), ip_address('10.0.0.1'))
        vlan.add_route(ip_network('10.99.98.0/24'), ip_address('10.0.0.99'))
        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.99.0/24'): ip_address('10.0.0.1'),
            ip_network('10.99.98.0/24'): ip_address('10.0.0.99'),
            ip_network('10.99.97.0/24'): ip_address('10.0.0.99')
        })
        self.assertEqual(vlan.route_count_by_ipv(4), 3)
        vlan.del_route(ip_network('10.99.99.0/24'))
        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.97.0/24'): ip_address('10.0.0.99'),
            ip_network('10.99.98.0/24'): ip_address('10.0.0.99')
        })
        self.assertEqual(vlan.route_count_by_ipv(4), 2)
        vlan.del_route(ip_network('10.99.98.0/24'))
        self.assertEqual(vlan.route_count_by_ipv(4), 1)
        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.97.0/24'): ip_address('10.0.0.99')
        })
コード例 #3
0
ファイル: test_vlan.py プロジェクト: mwutzke/faucet
    def test_modify_routes_static_v6(self):
        """Tests the add_route() and remove_route() methods,
        starting with configured static routes for IPv6"""

        vlan_config = {
            'routes': [
                {
                    'route': {
                        'ip_dst': 'fc00::30:0/112',
                        'ip_gw': 'fc00::1:99'
                    }
                },
            ],
        }

        vlan = VLAN(1, 1, vlan_config)

        self.assertEqual(
            vlan.routes_by_ipv(6),
            {ip_network('fc00::30:0/112'): ip_address('fc00::1:99')})
        vlan.add_route(ip_network('fc00::10:0/112'), ip_address('fc00::1:1'))
        vlan.add_route(ip_network('fc00::20:0/112'), ip_address('fc00::1:99'))
        self.assertEqual(
            vlan.routes_by_ipv(6), {
                ip_network('fc00::10:0/112'): ip_address('fc00::1:1'),
                ip_network('fc00::20:0/112'): ip_address('fc00::1:99'),
                ip_network('fc00::30:0/112'): ip_address('fc00::1:99')
            })
        self.assertEqual(vlan.route_count_by_ipv(6), 3)
        vlan.del_route(ip_network('fc00::10:0/112'))
        self.assertEqual(
            vlan.routes_by_ipv(6), {
                ip_network('fc00::30:0/112'): ip_address('fc00::1:99'),
                ip_network('fc00::20:0/112'): ip_address('fc00::1:99')
            })
        self.assertEqual(vlan.route_count_by_ipv(6), 2)
        vlan.del_route(ip_network('fc00::20:0/112'))
        self.assertEqual(vlan.route_count_by_ipv(6), 1)
        self.assertEqual(
            vlan.routes_by_ipv(6),
            {ip_network('fc00::30:0/112'): ip_address('fc00::1:99')})
コード例 #4
0
ファイル: test_vlan.py プロジェクト: mwutzke/faucet
    def test_modify_routes_static_v4(self):
        """Tests the add_route() and remove_route() methods,
        starting with configured static routes for IPv4"""

        vlan_config = {
            'routes': [
                {
                    'route': {
                        'ip_dst': '10.99.97.0/24',
                        'ip_gw': '10.0.0.99'
                    }
                },
            ],
        }

        vlan = VLAN(1, 1, vlan_config)

        self.assertEqual(
            vlan.routes_by_ipv(4),
            {ip_network('10.99.97.0/24'): ip_address('10.0.0.99')})
        vlan.add_route(ip_network('10.99.99.0/24'), ip_address('10.0.0.1'))
        vlan.add_route(ip_network('10.99.98.0/24'), ip_address('10.0.0.99'))
        self.assertEqual(
            vlan.routes_by_ipv(4), {
                ip_network('10.99.99.0/24'): ip_address('10.0.0.1'),
                ip_network('10.99.98.0/24'): ip_address('10.0.0.99'),
                ip_network('10.99.97.0/24'): ip_address('10.0.0.99')
            })
        self.assertEqual(vlan.route_count_by_ipv(4), 3)
        vlan.del_route(ip_network('10.99.99.0/24'))
        self.assertEqual(
            vlan.routes_by_ipv(4), {
                ip_network('10.99.97.0/24'): ip_address('10.0.0.99'),
                ip_network('10.99.98.0/24'): ip_address('10.0.0.99')
            })
        self.assertEqual(vlan.route_count_by_ipv(4), 2)
        vlan.del_route(ip_network('10.99.98.0/24'))
        self.assertEqual(vlan.route_count_by_ipv(4), 1)
        self.assertEqual(
            vlan.routes_by_ipv(4),
            {ip_network('10.99.97.0/24'): ip_address('10.0.0.99')})
コード例 #5
0
ファイル: test_vlan.py プロジェクト: anarkiwi/faucet
    def test_modify_routes_v6(self):
        """Tests the add_route() and remove_route() methods with IPv4 routes"""

        vlan = VLAN(1, 1, {})

        self.assertEqual(vlan.routes_by_ipv(6), {})
        vlan.add_route(ip_network('fc00::10:0/112'), ip_address('fc00::1:1'))
        vlan.add_route(ip_network('fc00::20:0/112'), ip_address('fc00::1:99'))
        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::10:0/112'): ip_address('fc00::1:1'),
            ip_network('fc00::20:0/112'): ip_address('fc00::1:99')
        })
        self.assertEqual(vlan.route_count_by_ipv(6), 2)
        vlan.del_route(ip_network('fc00::10:0/112'))
        self.assertEqual(vlan.routes_by_ipv(6), {
            ip_network('fc00::20:0/112'): ip_address('fc00::1:99')
        })
        self.assertEqual(vlan.route_count_by_ipv(6), 1)
        vlan.del_route(ip_network('fc00::20:0/112'))
        self.assertEqual(vlan.route_count_by_ipv(6), 0)
        self.assertEqual(vlan.routes_by_ipv(6), {})
コード例 #6
0
ファイル: test_vlan.py プロジェクト: anarkiwi/faucet
    def test_modify_routes_v4(self):
        """Tests the add_route() and remove_route() methods with IPv4 routes"""

        vlan = VLAN(1, 1, {})

        self.assertEqual(vlan.routes_by_ipv(4), {})
        vlan.add_route(ip_network('10.99.99.0/24'), ip_address('10.0.0.1'))
        vlan.add_route(ip_network('10.99.98.0/24'), ip_address('10.0.0.99'))
        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.99.0/24'): ip_address('10.0.0.1'),
            ip_network('10.99.98.0/24'): ip_address('10.0.0.99')
        })
        self.assertEqual(vlan.route_count_by_ipv(4), 2)
        vlan.del_route(ip_network('10.99.99.0/24'))
        self.assertEqual(vlan.routes_by_ipv(4), {
            ip_network('10.99.98.0/24'): ip_address('10.0.0.99')
        })
        self.assertEqual(vlan.route_count_by_ipv(4), 1)
        vlan.del_route(ip_network('10.99.98.0/24'))
        self.assertEqual(vlan.route_count_by_ipv(4), 0)
        self.assertEqual(vlan.routes_by_ipv(4), {})
コード例 #7
0
ファイル: test_vlan.py プロジェクト: mwutzke/faucet
    def test_modify_routes_v6(self):
        """Tests the add_route() and remove_route() methods with IPv4 routes"""

        vlan = VLAN(1, 1, {})

        self.assertEqual(vlan.routes_by_ipv(6), {})
        vlan.add_route(ip_network('fc00::10:0/112'), ip_address('fc00::1:1'))
        vlan.add_route(ip_network('fc00::20:0/112'), ip_address('fc00::1:99'))
        self.assertEqual(
            vlan.routes_by_ipv(6), {
                ip_network('fc00::10:0/112'): ip_address('fc00::1:1'),
                ip_network('fc00::20:0/112'): ip_address('fc00::1:99')
            })
        self.assertEqual(vlan.route_count_by_ipv(6), 2)
        vlan.del_route(ip_network('fc00::10:0/112'))
        self.assertEqual(
            vlan.routes_by_ipv(6),
            {ip_network('fc00::20:0/112'): ip_address('fc00::1:99')})
        self.assertEqual(vlan.route_count_by_ipv(6), 1)
        vlan.del_route(ip_network('fc00::20:0/112'))
        self.assertEqual(vlan.route_count_by_ipv(6), 0)
        self.assertEqual(vlan.routes_by_ipv(6), {})
コード例 #8
0
ファイル: test_vlan.py プロジェクト: mwutzke/faucet
    def test_modify_routes_v4(self):
        """Tests the add_route() and remove_route() methods with IPv4 routes"""

        vlan = VLAN(1, 1, {})

        self.assertEqual(vlan.routes_by_ipv(4), {})
        vlan.add_route(ip_network('10.99.99.0/24'), ip_address('10.0.0.1'))
        vlan.add_route(ip_network('10.99.98.0/24'), ip_address('10.0.0.99'))
        self.assertEqual(
            vlan.routes_by_ipv(4), {
                ip_network('10.99.99.0/24'): ip_address('10.0.0.1'),
                ip_network('10.99.98.0/24'): ip_address('10.0.0.99')
            })
        self.assertEqual(vlan.route_count_by_ipv(4), 2)
        vlan.del_route(ip_network('10.99.99.0/24'))
        self.assertEqual(
            vlan.routes_by_ipv(4),
            {ip_network('10.99.98.0/24'): ip_address('10.0.0.99')})
        self.assertEqual(vlan.route_count_by_ipv(4), 1)
        vlan.del_route(ip_network('10.99.98.0/24'))
        self.assertEqual(vlan.route_count_by_ipv(4), 0)
        self.assertEqual(vlan.routes_by_ipv(4), {})