Synchronize verified assets incrementally and guard update activation
This commit is contained in:
@@ -349,3 +349,10 @@ test('askCacheStatus returns the worker reply', async () => {
|
||||
const got = await askCacheStatus(worker, { setTimeout: () => {}, Channel: FakeChannel });
|
||||
assert.deepStrictEqual(got, { ready: true, version: 'abc' });
|
||||
});
|
||||
|
||||
test('playback guard blocks activation and reload unless explicit override is accepted',async()=>{
|
||||
let messages=[],reloads=0;const reg={waiting:{postMessage:m=>messages.push(m)}};
|
||||
await assert.rejects(applyUpdate({reg,container:fakeContainer(),reload:()=>reloads++,isPlaying:()=>true,confirmOverride:()=>false}),/Playing/);
|
||||
assert.equal(messages.length,0);assert.equal(reloads,0);
|
||||
let playing=false;const container=fakeContainer();await applyUpdate({reg,container,reload:()=>reloads++,isPlaying:()=>playing,askStatus:async()=>({ready:true}),setTimeout:()=>{}});playing=true;container.fireControllerChange();assert.equal(reloads,0);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user