From 13c3f7243c6a266f10c267fd5c723d37311d3818 Mon Sep 17 00:00:00 2001 From: Dmitry Gozman Date: Fri, 17 Jul 2020 19:54:37 -0700 Subject: [PATCH] test: restart worker fixtures after test failure (#3021) This way previous test that leaves browser in a bad state does not affect future tests. --- test/jest/playwrightEnvironment.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/jest/playwrightEnvironment.js b/test/jest/playwrightEnvironment.js index 1e65972e60..65ea360416 100644 --- a/test/jest/playwrightEnvironment.js +++ b/test/jest/playwrightEnvironment.js @@ -75,7 +75,6 @@ class PlaywrightEnvironment extends NodeEnvironment { async handleTestEvent(event, state) { if (event.name === 'setup') { - this.patchToEnableFixtures(this.global, 'beforeEach'); this.patchToEnableFixtures(this.global, 'afterEach'); @@ -111,6 +110,7 @@ class PlaywrightEnvironment extends NodeEnvironment { }; this.global.expect.extend({ toBeGolden }); } + if (event.name === 'test_start') { const fn = event.test.fn; event.test.fn = async () => { @@ -121,6 +121,10 @@ class PlaywrightEnvironment extends NodeEnvironment { } }; } + + if (event.name === 'test_fn_failure') { + await this.fixturePool.teardownScope('worker'); + } } }