fix(datacenters): drop the redundant seen set and test skipped against exports

The merge test now passes an exported newly tagged feature, so removing
'- set(fresh)' from the skipped report fails it.
This commit is contained in:
German Khokhlov committed 2026-11-05 21:42:22 +04:00
1 parent 1f0a8b5f16
commit 067383fda8
2 files changed
+6 -6

No files matched your search

+2 -3
View File
@@ -182,7 +182,7 @@ def feature_line(key, sequence, fresh):
def merge(lines, fresh, rings, tagged):
out, seen, known, sequence = [], set(), set(), 0
out, known, sequence = [], set(), 0
report = {'kept': 0, 'updated': [], 'removed': [], 'added': [], 'unexported': [], 'skipped': []}
for line in lines:
feature = json.loads(line)
@@ -190,7 +190,6 @@ def merge(lines, fresh, rings, tagged):
key = osm_key(feature)
known.add(key)
if key in fresh:
seen.add(key)
old_tags = feature['properties']['tags']
if old_tags == fresh[key]['tags'] and same_geometry(feature['geometry'], fresh[key]['geometry']):
out.append(line)
@@ -208,7 +207,7 @@ def merge(lines, fresh, rings, tagged):
report['removed'].append(key)
continue
out.append(line)
for key in sorted(set(fresh) - seen, key=lambda k: (k[0], int(k[1:]))):
for key in sorted(set(fresh) - known, key=lambda k: (k[0], int(k[1:]))):
sequence += 1
out.append(feature_line(key, sequence, fresh[key]))
report['added'].append(key)
+4 -3
View File
@@ -52,10 +52,11 @@ def line(osm_id, sequence):
'type': 'data_center', 'osm_id': osm_id}})
norway = [([(0, 0), (20, 0), (20, 80), (0, 80)], False)]
lines = [line(7, 1), line(8, 2)]
out, report = merge(lines, {}, norway, {'w7', 'w12'})
assert out == [lines[0]], out
fresh = {'w13': {'geometry': {'type': 'Polygon', 'coordinates': square}, 'tags': {'building': 'data_center'}}}
out, report = merge(lines, fresh, norway, {'w7', 'w12', 'w13'})
assert out[0] == lines[0] and len(out) == 2, out
assert report['unexported'] == ['w7'] and report['removed'] == ['w8'], report
assert report['skipped'] == ['w12'] and report['added'] == [], report
assert report['skipped'] == ['w12'] and report['added'] == ['w13'], report
`,
);
});