@thisisagile/easy-playwright 8.17.0 → 8.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { Browser, Page } from 'playwright';
2
- import { Id, UseCase } from '@thisisagile/easy';
2
+ import { Id, Json, UseCase } from '@thisisagile/easy';
3
3
  import { TestElement, Tester } from '@thisisagile/easy-test-web';
4
4
  export declare type BrowserType = 'Chromium' | 'Webkit' | 'Firefox';
5
5
  export declare class PlaywrightTester implements Tester {
@@ -8,8 +8,8 @@ export declare class PlaywrightTester implements Tester {
8
8
  private readonly page;
9
9
  constructor(host: string, browser: Browser, page: Page);
10
10
  get url(): string;
11
- static launch: (browserType: BrowserType, headless: boolean) => Promise<Browser>;
12
- static init(browserType: BrowserType, host?: string, headless?: boolean, width?: number, height?: number): Promise<Tester>;
11
+ static launch: (browserType: BrowserType, headless: boolean, launchProps: Json) => Promise<Browser>;
12
+ static init(browserType: BrowserType, host?: string, headless?: boolean, width?: number, height?: number, launchProps?: {}): Promise<Tester>;
13
13
  byClass(c: string): TestElement;
14
14
  byId(id: string): TestElement;
15
15
  byDataTestId(id: string): TestElement;
@@ -14,8 +14,8 @@ class PlaywrightTester {
14
14
  get url() {
15
15
  return this.page.url();
16
16
  }
17
- static async init(browserType, host = easy_1.ctx.env.get('webHost', ''), headless = true, width = 1200, height = 800) {
18
- const browser = await PlaywrightTester.launch(browserType, headless);
17
+ static async init(browserType, host = easy_1.ctx.env.get('webHost', ''), headless = true, width = 1200, height = 800, launchProps = {}) {
18
+ const browser = await PlaywrightTester.launch(browserType, headless, launchProps);
19
19
  const page = await browser.newPage();
20
20
  await page.setViewportSize({ width, height });
21
21
  return new PlaywrightTester(host, browser, page);
@@ -62,10 +62,11 @@ class PlaywrightTester {
62
62
  }
63
63
  }
64
64
  exports.PlaywrightTester = PlaywrightTester;
65
- PlaywrightTester.launch = (browserType, headless) => {
65
+ PlaywrightTester.launch = (browserType, headless, launchProps) => {
66
66
  const options = {
67
67
  headless: headless,
68
68
  args: ['--no-sandbox', '--start-maximized'],
69
+ ...launchProps,
69
70
  };
70
71
  switch (browserType) {
71
72
  case 'Firefox':
@@ -1 +1 @@
1
- {"version":3,"file":"PlaywrightTester.js","sourceRoot":"","sources":["../src/PlaywrightTester.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlaywrightTester.js","sourceRoot":"","sources":["../src/PlaywrightTester.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy-playwright",
3
- "version": "8.17.0",
3
+ "version": "8.18.0",
4
4
  "description": "Straightforward wrapper library for Playwright web testing framework",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -34,11 +34,11 @@
34
34
  "access": "public"
35
35
  },
36
36
  "devDependencies": {
37
- "@thisisagile/easy-test": "8.17.0"
37
+ "@thisisagile/easy-test": "8.18.0"
38
38
  },
39
39
  "dependencies": {
40
- "@thisisagile/easy": "8.17.0",
41
- "@thisisagile/easy-test-web": "8.17.0",
42
- "playwright": "^1.15.0"
40
+ "@thisisagile/easy": "8.18.0",
41
+ "@thisisagile/easy-test-web": "8.18.0",
42
+ "playwright": "^1.18.1"
43
43
  }
44
44
  }
@@ -1,6 +1,6 @@
1
1
  import playwright, { Browser, chromium, firefox, Page, webkit } from 'playwright';
2
2
  import { PlaywrightElement } from './PlaywrightElement';
3
- import { ctx, Id, UseCase } from '@thisisagile/easy';
3
+ import { ctx, Id, Json, UseCase } from '@thisisagile/easy';
4
4
  import { TestElement, Tester, toUrl } from '@thisisagile/easy-test-web';
5
5
 
6
6
  export type BrowserType = 'Chromium' | 'Webkit' | 'Firefox';
@@ -13,10 +13,11 @@ export class PlaywrightTester implements Tester {
13
13
  }
14
14
 
15
15
  /* istanbul ignore next */
16
- static launch = (browserType: BrowserType, headless: boolean): Promise<Browser> => {
16
+ static launch = (browserType: BrowserType, headless: boolean, launchProps: Json): Promise<Browser> => {
17
17
  const options: playwright.LaunchOptions = {
18
18
  headless: headless,
19
19
  args: ['--no-sandbox', '--start-maximized'],
20
+ ...launchProps,
20
21
  };
21
22
  switch (browserType) {
22
23
  case 'Firefox':
@@ -34,9 +35,10 @@ export class PlaywrightTester implements Tester {
34
35
  host: string = ctx.env.get('webHost', '') as string,
35
36
  headless = true,
36
37
  width = 1200,
37
- height = 800
38
+ height = 800,
39
+ launchProps = {}
38
40
  ): Promise<Tester> {
39
- const browser = await PlaywrightTester.launch(browserType, headless);
41
+ const browser = await PlaywrightTester.launch(browserType, headless, launchProps);
40
42
  const page = await browser.newPage();
41
43
  await page.setViewportSize({ width, height });
42
44
  return new PlaywrightTester(host, browser, page);