import assert from 'node:assert/strict' import { isFineReadyAtCamera } from '../../src/modules/cockpit/services/tilesetLoading.js' const entry = (overrides = {}) => ({ plan: { role: '', loadDistance: 1000 }, instance: { show: true, tilesLoaded: true }, contentReady: true, distance: 500, ...overrides, }) assert.equal(isFineReadyAtCamera([entry()], (item) => item.distance), true) assert.equal(isFineReadyAtCamera([entry({ contentReady: false })], (item) => item.distance), false) assert.equal(isFineReadyAtCamera([entry({ instance: { show: true, tilesLoaded: false } })], (item) => item.distance), false) assert.equal(isFineReadyAtCamera([entry({ distance: 1100 })], (item) => item.distance), false) assert.equal(isFineReadyAtCamera([entry({ plan: { role: 'far', loadDistance: 1000 } })], (item) => item.distance), false) assert.equal(isFineReadyAtCamera([ entry({ distance: 2500 }), entry({ distance: 800 }), ], (item) => item.distance), true) console.log(JSON.stringify({ passed: true, scope: 'local fine readiness preserves coarse coverage until rendered' }))