From 8f9cad9ad4ca502c00ce01540ec0bbe414ab9fbc Mon Sep 17 00:00:00 2001 From: Ifiok Jr Date: Thu, 21 Feb 2019 11:53:19 +0000 Subject: [PATCH 1/2] update jest-environment-puppeteer --- types/jest-environment-puppeteer/index.d.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/types/jest-environment-puppeteer/index.d.ts b/types/jest-environment-puppeteer/index.d.ts index 79c25e32d8..8c71525938 100644 --- a/types/jest-environment-puppeteer/index.d.ts +++ b/types/jest-environment-puppeteer/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for jest-environment-puppeteer 2.2 +// Type definitions for jest-environment-puppeteer 4.0 // Project: https://github.com/smooth-code/jest-puppeteer/tree/master/packages/jest-environment-puppeteer // Definitions by: Josh Goldberg // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -6,9 +6,15 @@ import { Browser, Page } from "puppeteer"; +interface JestPuppeteer { + resetPage(): Promise; + debug(): Promise; +} + declare global { const browser: Browser; - const page: Page; + const page: Page + const jestPuppeteer: JestPuppeteer; } export { }; From 35f4c6d0af4486bccfb0494caff2cb81deda70d1 Mon Sep 17 00:00:00 2001 From: Ifiok Jr Date: Thu, 21 Feb 2019 12:07:16 +0000 Subject: [PATCH 2/2] fix: update types with latest information from docs --- types/jest-environment-puppeteer/index.d.ts | 29 +++++++++++++++++-- .../jest-environment-puppeteer-tests.ts | 4 +++ 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/types/jest-environment-puppeteer/index.d.ts b/types/jest-environment-puppeteer/index.d.ts index 8c71525938..bcc37c8f9e 100644 --- a/types/jest-environment-puppeteer/index.d.ts +++ b/types/jest-environment-puppeteer/index.d.ts @@ -1,20 +1,43 @@ // Type definitions for jest-environment-puppeteer 4.0 // Project: https://github.com/smooth-code/jest-puppeteer/tree/master/packages/jest-environment-puppeteer // Definitions by: Josh Goldberg +// Ifiok Jr. // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.8 -import { Browser, Page } from "puppeteer"; +import { Browser, Page, BrowserContext } from 'puppeteer'; interface JestPuppeteer { + /** + * Reset global.page + * + * ```ts + * beforeEach(async () => { + * await jestPuppeteer.resetPage() + * }) + * ``` + */ resetPage(): Promise; + + /** + * Suspends test execution and gives you opportunity to see what's going on in the browser + * - Jest is suspended (no timeout) + * - A debugger instruction to Chromium, if Puppeteer has been launched with { devtools: true } it will stop + * + * ```ts + * it('should put test in debug mode', async () => { + * await jestPuppeteer.debug() + * }) + * ``` + */ debug(): Promise; } declare global { const browser: Browser; - const page: Page + const context: BrowserContext; + const page: Page; const jestPuppeteer: JestPuppeteer; } -export { }; +export {}; diff --git a/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts b/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts index 3de8c3661a..fb424d580b 100644 --- a/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts +++ b/types/jest-environment-puppeteer/jest-environment-puppeteer-tests.ts @@ -2,3 +2,7 @@ import * as puppeteer from "puppeteer"; const myBrowser: puppeteer.Browser = browser; const myPage: puppeteer.Page = page; +const myContext: puppeteer.BrowserContext = context; + +jestPuppeteer.debug(); +jestPuppeteer.resetPage();