fix(context): fire close event for persistent contexts (#2891)

This commit is contained in:
Joel Einbinder 2020-07-09 08:34:07 -07:00 committed by GitHub
parent 8fe29feb21
commit e90ba26250
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 0 deletions

View file

@ -92,6 +92,8 @@ export abstract class BrowserBase extends EventEmitter implements Browser {
_didClose() {
for (const context of this.contexts())
(context as BrowserContextBase)._browserClosed();
if (this._defaultContext)
this._defaultContext._browserClosed();
this.emit(Events.Browser.Disconnected);
}

View file

@ -367,4 +367,11 @@ describe('launchPersistentContext()', function() {
expect(error).toBe(e);
await removeUserDataDir(userDataDir);
});
it('should fire close event for a persistent context', async(state) => {
const {context} = await launch(state);
let closed = false;
context.on('close', () => closed = true);
await close(state);
expect(closed).toBe(true);
});
});