feat: support registering MV3 extension service workers (#27562)
* feat: support registering MV3 extension service workers * feat: load chrome extension APIs in worker context * feat: add more ContentRendererClient service worker overrides * fix: lint error * refactor: emit object for 'registration-completed' * docs: clarify when registration-completed emits
This commit is contained in:
parent
6681f8f507
commit
3250ef551c
10 changed files with 152 additions and 6 deletions
|
@ -656,4 +656,16 @@ describe('chrome extensions', () => {
|
|||
expect(textContent).to.equal('script loaded ok\n');
|
||||
});
|
||||
});
|
||||
|
||||
describe('manifest v3', () => {
|
||||
it('registers background service worker', async () => {
|
||||
const customSession = session.fromPartition(`persist:${uuid.v4()}`);
|
||||
const registrationPromise = new Promise<string>(resolve => {
|
||||
customSession.serviceWorkers.once('registration-completed', (event, { scope }) => resolve(scope));
|
||||
});
|
||||
const extension = await customSession.loadExtension(path.join(fixtures, 'extensions', 'mv3-service-worker'));
|
||||
const scope = await registrationPromise;
|
||||
expect(scope).equals(extension.url);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue