|
8 | 8 | import maxminddb |
9 | 9 | from netaddr import IPSet |
10 | 10 |
|
11 | | -from mmdb_writer import MMDBWriter |
12 | | -from tests.record import Record |
| 11 | +from mmdb_writer import MMDBWriter, MmdbI32, MmdbU16, MmdbU32, MmdbU64, MmdbU128 |
13 | 12 |
|
14 | 13 | logging.basicConfig( |
15 | 14 | format="[%(asctime)s: %(levelname)s] %(message)s", level=logging.INFO |
@@ -71,20 +70,24 @@ def test_insert_subnet(self): |
71 | 70 | m.close() |
72 | 71 |
|
73 | 72 | def test_int_type(self): |
74 | | - value_range_map = { |
75 | | - "i32": (-(2 ** 31), 2 ** 31 - 1), |
76 | | - "u16": (0, 2 ** 16 - 1), |
77 | | - "u32": (0, 2 ** 32 - 1), |
78 | | - "u64": (0, 2 ** 64 - 1), |
79 | | - "u128": (0, 2 ** 128 - 1), |
80 | | - } |
81 | | - for int_type in ("i32", "u16", "u32", "u64", "u128"): |
| 73 | + value_range_map = {} |
| 74 | + value_range_map.update( |
| 75 | + {k: (-(2**31), 2**31 - 1) for k in ("i32", "int32", MmdbI32)} |
| 76 | + ) |
| 77 | + value_range_map.update({k: (0, 2**16 - 1) for k in ("u16", "uint16", MmdbU16)}) |
| 78 | + value_range_map.update({k: (0, 2**32 - 1) for k in ("u32", "uint32", MmdbU32)}) |
| 79 | + value_range_map.update({k: (0, 2**64 - 1) for k in ("u64", "uint64", MmdbU64)}) |
| 80 | + value_range_map.update( |
| 81 | + {k: (0, 2**128 - 1) for k in ("u128", "uint128", MmdbU128)} |
| 82 | + ) |
| 83 | + |
| 84 | + for int_type, value_range in value_range_map.items(): |
82 | 85 | writer = MMDBWriter(int_type=int_type) |
83 | 86 |
|
84 | | - (start, end) = value_range_map[int_type] |
| 87 | + (start, end) = value_range |
85 | 88 | ok_value = random.randint(start, end) |
86 | | - bad_value1 = random.randint(end + 1, end + 2 ** 16) |
87 | | - bad_value2 = random.randint(start - 2 ** 16, start - 1) |
| 89 | + bad_value1 = random.randint(end + 1, end + 2**16) |
| 90 | + bad_value2 = random.randint(start - 2**16, start - 1) |
88 | 91 | writer.insert_network(IPSet(["1.0.0.0/8"]), {"value": ok_value}) |
89 | 92 | writer.to_db_file(self.filename) |
90 | 93 | for bad_value in (bad_value1, bad_value2): |
|
0 commit comments