@wordpress/e2e-test-utils-playwright 1.20.0 → 1.22.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.
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.emulateNetworkConditions = emulateNetworkConditions;
4
+ // Defaults from https://github.com/puppeteer/puppeteer/blob/401355610874beac23a51dcb75739a4bb4191a2b/packages/puppeteer-core/src/cdp/PredefinedNetworkConditions.ts.
5
+ const PredefinedNetworkConditions = {
6
+ // Generally aligned with DevTools
7
+ // https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/front_end/core/sdk/NetworkManager.ts;l=398;drc=225e1240f522ca684473f541ae6dae6cd766dd33.
8
+ 'Slow 3G': {
9
+ offline: false,
10
+ // ~500Kbps down
11
+ downloadThroughput: ((500 * 1000) / 8) * 0.8,
12
+ // ~500Kbps up
13
+ uploadThroughput: ((500 * 1000) / 8) * 0.8,
14
+ // 400ms RTT
15
+ latency: 400 * 5,
16
+ },
17
+ 'Fast 3G': {
18
+ offline: false,
19
+ // ~1.6 Mbps down
20
+ downloadThroughput: ((1.6 * 1000 * 1000) / 8) * 0.9,
21
+ // ~0.75 Mbps up
22
+ uploadThroughput: ((750 * 1000) / 8) * 0.9,
23
+ // 150ms RTT
24
+ latency: 150 * 3.75,
25
+ },
26
+ // alias to Fast 3G to align with Lighthouse (crbug.com/342406608)
27
+ // and DevTools (crbug.com/342406608),
28
+ 'Slow 4G': {
29
+ offline: false,
30
+ // ~1.6 Mbps down
31
+ downloadThroughput: ((1.6 * 1000 * 1000) / 8) * 0.9,
32
+ // ~0.75 Mbps up
33
+ uploadThroughput: ((750 * 1000) / 8) * 0.9,
34
+ // 150ms RTT
35
+ latency: 150 * 3.75,
36
+ },
37
+ 'Fast 4G': {
38
+ offline: false,
39
+ // 9 Mbps down
40
+ downloadThroughput: ((9 * 1000 * 1000) / 8) * 0.9,
41
+ // 1.5 Mbps up
42
+ uploadThroughput: ((1.5 * 1000 * 1000) / 8) * 0.9,
43
+ // 60ms RTT
44
+ latency: 60 * 2.75,
45
+ },
46
+ /**
47
+ * Network conditions used for desktop in Lighthouse/PSI.
48
+ *
49
+ * 10,240 kb/s throughput with 40 ms TCP RTT.
50
+ *
51
+ * @see https://github.com/paulirish/lighthouse/blob/f0855904aaffaecf3089169449646960782d7e92/core/config/constants.js#L40-L49
52
+ * @see https://docs.google.com/document/d/1-p4HSp42REEA5-jCBVB6PqQcVhI1nQIblBCNKhPJUXg/edit?tab=t.0#heading=h.jsap7yf4phk6
53
+ */
54
+ Broadband: {
55
+ offline: false,
56
+ downloadThroughput: (10240 * 1000) / 8,
57
+ uploadThroughput: (10240 * 1000) / 8,
58
+ latency: 40,
59
+ },
60
+ };
61
+ async function emulateNetworkConditions(condition) {
62
+ if ('chromium' !== this.browserName) {
63
+ throw new Error('CDP sessions are only supported on Chromium-based browsers');
64
+ }
65
+ const session = await this.page.context().newCDPSession(this.page);
66
+ await session.send('Network.emulateNetworkConditions', 'string' === typeof condition
67
+ ? PredefinedNetworkConditions[condition]
68
+ : condition);
69
+ await session.detach();
70
+ }
71
+ //# sourceMappingURL=emulate-network-conditions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emulate-network-conditions.js","sourceRoot":"","sources":["../../src/page-utils/emulate-network-conditions.ts"],"names":[],"mappings":";;AAkFA,4DAkBC;AA5ED,qKAAqK;AACrK,MAAM,2BAA2B,GAAwC;IACxE,kCAAkC;IAClC,sLAAsL;IACtL,SAAS,EAAE;QACV,OAAO,EAAE,KAAK;QACd,gBAAgB;QAChB,kBAAkB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QAChD,cAAc;QACd,gBAAgB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QAC9C,YAAY;QACZ,OAAO,EAAE,GAAG,GAAG,CAAC;KAChB;IACD,SAAS,EAAE;QACV,OAAO,EAAE,KAAK;QACd,iBAAiB;QACjB,kBAAkB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QACvD,gBAAgB;QAChB,gBAAgB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QAC9C,YAAY;QACZ,OAAO,EAAE,GAAG,GAAG,IAAI;KACnB;IACD,kEAAkE;IAClE,sCAAsC;IACtC,SAAS,EAAE;QACV,OAAO,EAAE,KAAK;QACd,iBAAiB;QACjB,kBAAkB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QACvD,gBAAgB;QAChB,gBAAgB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QAC9C,YAAY;QACZ,OAAO,EAAE,GAAG,GAAG,IAAI;KACnB;IACD,SAAS,EAAE;QACV,OAAO,EAAE,KAAK;QACd,cAAc;QACd,kBAAkB,EAAE,CAAE,CAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QACrD,cAAc;QACd,gBAAgB,EAAE,CAAE,CAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,CAAC,CAAE,GAAG,GAAG;QACrD,WAAW;QACX,OAAO,EAAE,EAAE,GAAG,IAAI;KAClB;IACD;;;;;;;OAOG;IACH,SAAS,EAAE;QACV,OAAO,EAAE,KAAK;QACd,kBAAkB,EAAE,CAAE,KAAK,GAAG,IAAI,CAAE,GAAG,CAAC;QACxC,gBAAgB,EAAE,CAAE,KAAK,GAAG,IAAI,CAAE,GAAG,CAAC;QACtC,OAAO,EAAE,EAAE;KACX;CACD,CAAC;AAEK,KAAK,UAAU,wBAAwB,CAE7C,SAAuE;IAEvE,IAAK,UAAU,KAAK,IAAI,CAAC,WAAW,EAAG,CAAC;QACvC,MAAM,IAAI,KAAK,CACd,4DAA4D,CAC5D,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,CAAE,IAAI,CAAC,IAAI,CAAE,CAAC;IACrE,MAAM,OAAO,CAAC,IAAI,CACjB,kCAAkC,EAClC,QAAQ,KAAK,OAAO,SAAS;QAC5B,CAAC,CAAC,2BAA2B,CAAE,SAAS,CAAE;QAC1C,CAAC,CAAC,SAAS,CACZ,CAAC;IACF,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;AACxB,CAAC"}
@@ -8,14 +8,17 @@ const drag_files_1 = require("./drag-files");
8
8
  const is_current_url_1 = require("./is-current-url");
9
9
  const press_keys_1 = require("./press-keys");
10
10
  const set_browser_viewport_1 = require("./set-browser-viewport");
11
+ const emulate_network_conditions_1 = require("./emulate-network-conditions");
11
12
  class PageUtils {
12
13
  browser;
13
14
  page;
14
15
  context;
15
- constructor({ page }) {
16
+ browserName;
17
+ constructor({ page, browserName }) {
16
18
  this.page = page;
17
19
  this.context = page.context();
18
20
  this.browser = this.context.browser();
21
+ this.browserName = browserName;
19
22
  }
20
23
  /** @borrows dragFiles as this.dragFiles */
21
24
  dragFiles = drag_files_1.dragFiles.bind(this);
@@ -27,6 +30,8 @@ class PageUtils {
27
30
  setBrowserViewport = set_browser_viewport_1.setBrowserViewport.bind(this);
28
31
  /** @borrows setClipboardData as this.setClipboardData */
29
32
  setClipboardData = press_keys_1.setClipboardData.bind(this);
33
+ /** @borrows emulateNetworkConditions as this.emulateNetworkConditions */
34
+ emulateNetworkConditions = emulate_network_conditions_1.emulateNetworkConditions.bind(this);
30
35
  }
31
36
  exports.PageUtils = PageUtils;
32
37
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page-utils/index.ts"],"names":[],"mappings":";;;AAKA;;GAEG;AACH,6CAAyC;AACzC,qDAAgD;AAChD,6CAA2D;AAC3D,iEAA4D;AAM5D,MAAM,SAAS;IACd,OAAO,CAAU;IACjB,IAAI,CAAO;IACX,OAAO,CAAiB;IAExB,YAAa,EAAE,IAAI,EAA6B;QAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAG,CAAC;IACxC,CAAC;IAED,2CAA2C;IAC3C,SAAS,GAAqB,sBAAS,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACrD,iDAAiD;IACjD,YAAY,GAAwB,6BAAY,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IAC9D,2CAA2C;IAC3C,SAAS,GAAqB,sBAAS,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACrD,6DAA6D;IAC7D,kBAAkB,GACjB,yCAAkB,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACjC,yDAAyD;IACzD,gBAAgB,GAA4B,6BAAgB,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;CAC1E;AAEQ,8BAAS"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/page-utils/index.ts"],"names":[],"mappings":";;;AAUA;;GAEG;AACH,6CAAyC;AACzC,qDAAgD;AAChD,6CAA2D;AAC3D,iEAA4D;AAC5D,6EAAwE;AAOxE,MAAM,SAAS;IACd,OAAO,CAAU;IACjB,IAAI,CAAO;IACX,OAAO,CAAiB;IACxB,WAAW,CAA2C;IAEtD,YAAa,EAAE,IAAI,EAAE,WAAW,EAA6B;QAC5D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAG,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,2CAA2C;IAC3C,SAAS,GAAqB,sBAAS,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACrD,iDAAiD;IACjD,YAAY,GAAwB,6BAAY,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IAC9D,2CAA2C;IAC3C,SAAS,GAAqB,sBAAS,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACrD,6DAA6D;IAC7D,kBAAkB,GACjB,yCAAkB,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IACjC,yDAAyD;IACzD,gBAAgB,GAA4B,6BAAgB,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;IAC1E,yEAAyE;IACzE,wBAAwB,GACvB,qDAAwB,CAAC,IAAI,CAAE,IAAI,CAAE,CAAC;CACvC;AAEQ,8BAAS"}
package/build/test.js CHANGED
@@ -112,8 +112,8 @@ const test = test_1.test.extend({
112
112
  }
113
113
  await page.close();
114
114
  },
115
- pageUtils: async ({ page }, use) => {
116
- await use(new index_1.PageUtils({ page }));
115
+ pageUtils: async ({ page, browserName }, use) => {
116
+ await use(new index_1.PageUtils({ page, browserName }));
117
117
  },
118
118
  requestUtils: [
119
119
  async ({}, use, workerInfo) => {
package/build/test.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import type { PageUtils } from './';
5
+ interface NetworkConditions {
6
+ /**
7
+ * True to emulate internet disconnection.
8
+ */
9
+ offline: boolean;
10
+ /**
11
+ * Minimum latency from request sent to response headers received (ms).
12
+ */
13
+ latency: number;
14
+ /**
15
+ * Maximal aggregated download throughput (bytes/sec). -1 disables download throttling.
16
+ */
17
+ downloadThroughput: number;
18
+ /**
19
+ * Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling.
20
+ */
21
+ uploadThroughput: number;
22
+ }
23
+ declare const PredefinedNetworkConditions: Record<string, NetworkConditions>;
24
+ export declare function emulateNetworkConditions(this: PageUtils, condition: keyof typeof PredefinedNetworkConditions | NetworkConditions): Promise<void>;
25
+ export {};
26
+ //# sourceMappingURL=emulate-network-conditions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emulate-network-conditions.d.ts","sourceRoot":"","sources":["../../src/page-utils/emulate-network-conditions.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAEpC,UAAU,iBAAiB;IAC1B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAGD,QAAA,MAAM,2BAA2B,EAAE,MAAM,CAAE,MAAM,EAAE,iBAAiB,CAuDnE,CAAC;AAEF,wBAAsB,wBAAwB,CAC7C,IAAI,EAAE,SAAS,EACf,SAAS,EAAE,MAAM,OAAO,2BAA2B,GAAG,iBAAiB,iBAgBvE"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies
3
3
  */
4
- import type { Browser, Page, BrowserContext } from '@playwright/test';
4
+ import type { Browser, Page, BrowserContext, PlaywrightWorkerOptions } from '@playwright/test';
5
5
  /**
6
6
  * Internal dependencies
7
7
  */
@@ -9,14 +9,17 @@ import { dragFiles } from './drag-files';
9
9
  import { isCurrentURL } from './is-current-url';
10
10
  import { setClipboardData, pressKeys } from './press-keys';
11
11
  import { setBrowserViewport } from './set-browser-viewport';
12
+ import { emulateNetworkConditions } from './emulate-network-conditions';
12
13
  type PageUtilConstructorParams = {
13
14
  page: Page;
15
+ browserName: PlaywrightWorkerOptions['browserName'];
14
16
  };
15
17
  declare class PageUtils {
16
18
  browser: Browser;
17
19
  page: Page;
18
20
  context: BrowserContext;
19
- constructor({ page }: PageUtilConstructorParams);
21
+ browserName: PlaywrightWorkerOptions['browserName'];
22
+ constructor({ page, browserName }: PageUtilConstructorParams);
20
23
  /** @borrows dragFiles as this.dragFiles */
21
24
  dragFiles: typeof dragFiles;
22
25
  /** @borrows isCurrentURL as this.isCurrentURL */
@@ -27,6 +30,8 @@ declare class PageUtils {
27
30
  setBrowserViewport: typeof setBrowserViewport;
28
31
  /** @borrows setClipboardData as this.setClipboardData */
29
32
  setClipboardData: typeof setClipboardData;
33
+ /** @borrows emulateNetworkConditions as this.emulateNetworkConditions */
34
+ emulateNetworkConditions: typeof emulateNetworkConditions;
30
35
  }
31
36
  export { PageUtils };
32
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/page-utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEtE;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,KAAK,yBAAyB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAC;CACX,CAAC;AAEF,cAAM,SAAS;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,cAAc,CAAC;gBAEX,EAAE,IAAI,EAAE,EAAE,yBAAyB;IAMhD,2CAA2C;IAC3C,SAAS,EAAE,OAAO,SAAS,CAA0B;IACrD,iDAAiD;IACjD,YAAY,EAAE,OAAO,YAAY,CAA6B;IAC9D,2CAA2C;IAC3C,SAAS,EAAE,OAAO,SAAS,CAA0B;IACrD,6DAA6D;IAC7D,kBAAkB,EAAE,OAAO,kBAAkB,CACZ;IACjC,yDAAyD;IACzD,gBAAgB,EAAE,OAAO,gBAAgB,CAAiC;CAC1E;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/page-utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACX,OAAO,EACP,IAAI,EACJ,cAAc,EACd,uBAAuB,EACvB,MAAM,kBAAkB,CAAC;AAE1B;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE,KAAK,yBAAyB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,uBAAuB,CAAE,aAAa,CAAE,CAAC;CACtD,CAAC;AAEF,cAAM,SAAS;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,EAAE,cAAc,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAE,aAAa,CAAE,CAAC;gBAEzC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,yBAAyB;IAO7D,2CAA2C;IAC3C,SAAS,EAAE,OAAO,SAAS,CAA0B;IACrD,iDAAiD;IACjD,YAAY,EAAE,OAAO,YAAY,CAA6B;IAC9D,2CAA2C;IAC3C,SAAS,EAAE,OAAO,SAAS,CAA0B;IACrD,6DAA6D;IAC7D,kBAAkB,EAAE,OAAO,kBAAkB,CACZ;IACjC,yDAAyD;IACzD,gBAAgB,EAAE,OAAO,gBAAgB,CAAiC;IAC1E,yEAAyE;IACzE,wBAAwB,EAAE,OAAO,wBAAwB,CAClB;CACvC;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/e2e-test-utils-playwright",
3
- "version": "1.20.0",
3
+ "version": "1.22.0",
4
4
  "description": "End-To-End (E2E) test utils for WordPress.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -44,5 +44,5 @@
44
44
  "publishConfig": {
45
45
  "access": "public"
46
46
  },
47
- "gitHead": "72476970386146d450c375e5c71a96dda7c9aaa8"
47
+ "gitHead": "01a314d7e46a50101e328fdb11959c441e49372d"
48
48
  }