| 133 | |
| 134 | |
| 135 | class TestHeader(unittest.TestCase): |
| 136 | def test_roundtrip(self): |
| 137 | header = { |
| 138 | "root_offset": 1, |
| 139 | "root_length": 2, |
| 140 | "metadata_offset": 3, |
| 141 | "metadata_length": 4, |
| 142 | "leaf_directory_offset": 5, |
| 143 | "leaf_directory_length": 6, |
| 144 | "tile_data_offset": 7, |
| 145 | "tile_data_length": 8, |
| 146 | "addressed_tiles_count": 9, |
| 147 | "tile_entries_count": 10, |
| 148 | "tile_contents_count": 11, |
| 149 | "clustered": True, |
| 150 | "internal_compression": Compression.GZIP, |
| 151 | "tile_compression": Compression.BROTLI, |
| 152 | "tile_type": TileType.MVT, |
| 153 | "min_zoom": 1, |
| 154 | "max_zoom": 2, |
| 155 | "min_lon_e7": int(-1.1 * 10000000), |
| 156 | "min_lat_e7": int(2.1 * 10000000), |
| 157 | "max_lon_e7": int(1.2 * 10000000), |
| 158 | "max_lat_e7": int(2.2 * 10000000), |
| 159 | "center_zoom": 3, |
| 160 | "center_lon_e7": int(3.1 * 10000000), |
| 161 | "center_lat_e7": int(3.2 * 10000000), |
| 162 | } |
| 163 | serialized = serialize_header(header) |
| 164 | result = deserialize_header(serialized) |
| 165 | self.assertEqual(result['version'], 3) |
| 166 | self.assertEqual(result["root_offset"], 1) |
| 167 | self.assertEqual(result["root_length"], 2) |
| 168 | self.assertEqual(result["metadata_offset"], 3) |
| 169 | self.assertEqual(result["metadata_length"], 4) |
| 170 | self.assertEqual(result["leaf_directory_offset"], 5) |
| 171 | self.assertEqual(result["leaf_directory_length"], 6) |
| 172 | self.assertEqual(result["tile_data_offset"], 7) |
| 173 | self.assertEqual(result["tile_data_length"], 8) |
| 174 | self.assertEqual(result["addressed_tiles_count"], 9) |
| 175 | self.assertEqual(result["tile_entries_count"], 10) |
| 176 | self.assertEqual(result["tile_contents_count"], 11) |
| 177 | self.assertEqual(result["clustered"], True) |
| 178 | self.assertEqual(result["internal_compression"], Compression.GZIP) |
| 179 | self.assertEqual(result["tile_compression"], Compression.BROTLI) |
| 180 | self.assertEqual(result["tile_type"], TileType.MVT) |
| 181 | self.assertEqual(result["min_zoom"], 1) |
| 182 | self.assertEqual(result["max_zoom"], 2) |
| 183 | self.assertEqual(result["min_lon_e7"], -1.1 * 10000000) |
| 184 | self.assertEqual(result["min_lat_e7"], 2.1 * 10000000) |
| 185 | self.assertEqual(result["max_lon_e7"], 1.2 * 10000000) |
| 186 | self.assertEqual(result["max_lat_e7"], 2.2 * 10000000) |
| 187 | self.assertEqual(result["center_zoom"], 3) |
| 188 | self.assertEqual(result["center_lon_e7"], 3.1 * 10000000) |
| 189 | self.assertEqual(result["center_lat_e7"], 3.2 * 10000000) |
| 190 | |
| 191 | def test_spec_version(self): |
| 192 | with self.assertRaises(SpecVersionUnsupported): |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…