import assert from 'node:assert/strict' import { register } from 'node:module' register('./t32-delay-model-loader.mjs', import.meta.url) const { syncPipeLayer, clearPipeLayer } = await import('../../../src/modules/cockpit/services/cesiumPipeLayer.js') const sources = [] const viewer = { scene:{primitives:{}}, isDestroyed:()=>false, dataSources:{ getByName:(name)=>sources.filter(s=>s.name===name), add:async(source)=>{sources.push(source);return source}, } } const network={pipes:[{code:'p',industry:'GAS',diameter:200,positions:[[110.39,28.44],[110.4,28.44]]}],components:[]} const pending=syncPipeLayer(viewer,network) await new Promise(setImmediate) await clearPipeLayer(viewer) await pending assert.equal(globalThis.t32AdapterCreates || 0,0,'cleared layer must not create a delayed model adapter') assert.equal(sources[0].entities.values.length,0) console.log('PASS clear during first model import cannot resurrect old objects')