test(01-09): cover high-compression point-event aggregation

- Reuses the point-event-only map fixture for LowCompression and HighCompression
- Asserts both paths preserve z-index and index-priority-eventId nesting
This commit is contained in:
unanmed 2026-09-09 10:26:22 +08:00
parent 3df0b2afc5
commit 8b2e58e9a2

View File

@ -223,15 +223,22 @@ describe('MapLayer point event lifecycle', () => {
point.set(7, 'point-only');
expect(layer.dirty()).toBe(true);
const save = map.saveState(modules.SaveCompression.LowCompression);
const layerSave = save.layers.get(7);
expect(layerSave).toBeDefined();
expect(layerSave?.fullMap).toBeUndefined();
expect(layerSave?.staticBlocks?.size).toBe(0);
expect(layerSave?.dynamicBlocks?.size).toBe(0);
expect(layerSave?.pointEvents).toEqual(
new Map([[1, new Map([[7, 'point-only']])]])
);
const compressionLevels = [
modules.SaveCompression.LowCompression,
modules.SaveCompression.HighCompression
];
for (const compression of compressionLevels) {
const save = map.saveState(compression);
const layerSave = save.layers.get(7);
expect(layerSave).toBeDefined();
expect(layerSave?.fullMap).toBeUndefined();
expect(layerSave?.rows).toBeUndefined();
expect(layerSave?.staticBlocks?.size).toBe(0);
expect(layerSave?.dynamicBlocks?.size).toBe(0);
expect(layerSave?.pointEvents).toEqual(
new Map([[1, new Map([[7, 'point-only']])]])
);
}
});
it('resize preserves in-range point events and resize2 clears them', () => {