Cidr4 merge algorithm #5

Merged
PavelPatsey merged 91 commits from CIDR4_merge_algorithm into main 2025-01-27 22:05:39 +03:00
Showing only changes of commit 0b56caffac - Show all commits
-26
View File
@@ -1,8 +1,6 @@
from vpn_manager.cidr4_merge.cidr4_merger import ( from vpn_manager.cidr4_merge.cidr4_merger import (
calc_dip,
cidr4_to_node, cidr4_to_node,
find_neighbors, find_neighbors,
find_parent,
make_cidr4, make_cidr4,
merge_nodes, merge_nodes,
solution, solution,
@@ -38,30 +36,6 @@ def test_make_cidr4():
assert make_cidr4(520969728, 23) == "31.13.94.0/23" assert make_cidr4(520969728, 23) == "31.13.94.0/23"
def test_find_parent():
assert find_parent((0, 2), (1073741824, 2)) == (0, 1)
assert find_parent((2147483648, 2), (3221225472, 2)) == (2147483648, 1)
assert find_parent((0, 2), (3221225472, 2)) == (0, 0)
assert find_parent((1, 32), (6, 32)) == (0, 29)
assert find_parent((0, 32), (0, 29)) == (0, 29)
assert find_parent((0, 1), (1073741824, 2)) == (0, 1)
assert find_parent((0, 0), (3221225472, 2)) == (0, 0)
def test_calc_dip():
assert calc_dip(32, 32, 31) == 0
assert calc_dip(32, 32, 30) == 2
assert calc_dip(32, 32, 29) == 6
assert calc_dip(32, 30, 29) == 3
assert calc_dip(32, 31, 29) == 5
assert calc_dip(32, 31, 29) == 5
assert calc_dip(2, 2, 1) == 0
assert calc_dip(2, 2, 0) == 2**31
assert calc_dip(3, 3, 1) == 2**30
def test_merge_nodes(): def test_merge_nodes():
assert merge_nodes((0, 32), (1, 32)) == ((0, 31), 0) assert merge_nodes((0, 32), (1, 32)) == ((0, 31), 0)
assert merge_nodes((0, 32), (2, 32)) == ((0, 30), 2) assert merge_nodes((0, 32), (2, 32)) == ((0, 30), 2)