mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
fix: deprecate indirect network condition imports (#9074)
This commit is contained in:
parent
6ab823ef34
commit
e72318e955
@ -120,18 +120,19 @@ sidebar_label: API
|
|||||||
|
|
||||||
## Variables
|
## Variables
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| [connect](./puppeteer.connect.md) | |
|
| [connect](./puppeteer.connect.md) | |
|
||||||
| [createBrowserFetcher](./puppeteer.createbrowserfetcher.md) | |
|
| [createBrowserFetcher](./puppeteer.createbrowserfetcher.md) | |
|
||||||
| [DEFAULT_INTERCEPT_RESOLUTION_PRIORITY](./puppeteer.default_intercept_resolution_priority.md) | The default cooperative request interception resolution priority |
|
| [DEFAULT_INTERCEPT_RESOLUTION_PRIORITY](./puppeteer.default_intercept_resolution_priority.md) | The default cooperative request interception resolution priority |
|
||||||
| [defaultArgs](./puppeteer.defaultargs.md) | |
|
| [defaultArgs](./puppeteer.defaultargs.md) | |
|
||||||
| [devices](./puppeteer.devices.md) | A list of devices to be used with <code>page.emulate(options)</code>. Actual list of devices can be found in [src/common/DeviceDescriptors.ts](https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts). |
|
| [devices](./puppeteer.devices.md) | A list of devices to be used with <code>page.emulate(options)</code>. Actual list of devices can be found in [src/common/DeviceDescriptors.ts](https://github.com/puppeteer/puppeteer/blob/main/src/common/DeviceDescriptors.ts). |
|
||||||
| [errors](./puppeteer.errors.md) | |
|
| [errors](./puppeteer.errors.md) | |
|
||||||
| [EVALUATION_SCRIPT_URL](./puppeteer.evaluation_script_url.md) | |
|
| [EVALUATION_SCRIPT_URL](./puppeteer.evaluation_script_url.md) | |
|
||||||
| [executablePath](./puppeteer.executablepath.md) | |
|
| [executablePath](./puppeteer.executablepath.md) | |
|
||||||
| [launch](./puppeteer.launch.md) | |
|
| [launch](./puppeteer.launch.md) | |
|
||||||
| [networkConditions](./puppeteer.networkconditions.md) | A list of network conditions to be used with <code>page.emulateNetworkConditions(networkConditions)</code>. Actual list of predefined conditions can be found in [src/common/NetworkConditions.ts](https://github.com/puppeteer/puppeteer/blob/main/src/common/NetworkConditions.ts). |
|
| [networkConditions](./puppeteer.networkconditions.md) | |
|
||||||
|
| [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md) | A list of network conditions to be used with [Page.emulateNetworkConditions()](./puppeteer.page.emulatenetworkconditions.md). |
|
||||||
|
|
||||||
## Type Aliases
|
## Type Aliases
|
||||||
|
|
||||||
|
@ -4,7 +4,9 @@ sidebar_label: networkConditions
|
|||||||
|
|
||||||
# networkConditions variable
|
# networkConditions variable
|
||||||
|
|
||||||
A list of network conditions to be used with `page.emulateNetworkConditions(networkConditions)`. Actual list of predefined conditions can be found in [src/common/NetworkConditions.ts](https://github.com/puppeteer/puppeteer/blob/main/src/common/NetworkConditions.ts).
|
> Warning: This API is now obsolete.
|
||||||
|
>
|
||||||
|
> Import [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md).
|
||||||
|
|
||||||
**Signature:**
|
**Signature:**
|
||||||
|
|
||||||
@ -14,19 +16,3 @@ networkConditions: Readonly<{
|
|||||||
'Fast 3G': NetworkConditions;
|
'Fast 3G': NetworkConditions;
|
||||||
}>;
|
}>;
|
||||||
```
|
```
|
||||||
|
|
||||||
## Example
|
|
||||||
|
|
||||||
```ts
|
|
||||||
const puppeteer = require('puppeteer');
|
|
||||||
const slow3G = puppeteer.networkConditions['Slow 3G'];
|
|
||||||
|
|
||||||
(async () => {
|
|
||||||
const browser = await puppeteer.launch();
|
|
||||||
const page = await browser.newPage();
|
|
||||||
await page.emulateNetworkConditions(slow3G);
|
|
||||||
await page.goto('https://www.google.com');
|
|
||||||
// other actions...
|
|
||||||
await browser.close();
|
|
||||||
})();
|
|
||||||
```
|
|
||||||
|
@ -4,6 +4,10 @@ sidebar_label: Page.emulateNetworkConditions
|
|||||||
|
|
||||||
# Page.emulateNetworkConditions() method
|
# Page.emulateNetworkConditions() method
|
||||||
|
|
||||||
|
This does not affect WebSockets and WebRTC PeerConnections (see https://crbug.com/563644). To set the page offline, you can use [Page.setOfflineMode()](./puppeteer.page.setofflinemode.md).
|
||||||
|
|
||||||
|
A list of predefined network conditions can be used by importing [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md).
|
||||||
|
|
||||||
**Signature:**
|
**Signature:**
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
@ -24,15 +28,11 @@ class Page {
|
|||||||
|
|
||||||
Promise<void>
|
Promise<void>
|
||||||
|
|
||||||
## Remarks
|
|
||||||
|
|
||||||
NOTE: This does not affect WebSockets and WebRTC PeerConnections (see https://crbug.com/563644). To set the page offline, you can use \[page.setOfflineMode(enabled)\](\#pagesetofflinemodeenabled).
|
|
||||||
|
|
||||||
## Example
|
## Example
|
||||||
|
|
||||||
```ts
|
```ts
|
||||||
const puppeteer = require('puppeteer');
|
import {PredefinedNetworkConditions} from 'puppeteer';
|
||||||
const slow3G = puppeteer.networkConditions['Slow 3G'];
|
const slow3G = PredefinedNetworkConditions['Slow 3G'];
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const browser = await puppeteer.launch();
|
const browser = await puppeteer.launch();
|
||||||
|
@ -100,7 +100,7 @@ page.off('request', logRequest);
|
|||||||
| [emulateIdleState(overrides)](./puppeteer.page.emulateidlestate.md) | | Emulates the idle state. If no arguments set, clears idle state emulation. |
|
| [emulateIdleState(overrides)](./puppeteer.page.emulateidlestate.md) | | Emulates the idle state. If no arguments set, clears idle state emulation. |
|
||||||
| [emulateMediaFeatures(features)](./puppeteer.page.emulatemediafeatures.md) | | |
|
| [emulateMediaFeatures(features)](./puppeteer.page.emulatemediafeatures.md) | | |
|
||||||
| [emulateMediaType(type)](./puppeteer.page.emulatemediatype.md) | | |
|
| [emulateMediaType(type)](./puppeteer.page.emulatemediatype.md) | | |
|
||||||
| [emulateNetworkConditions(networkConditions)](./puppeteer.page.emulatenetworkconditions.md) | | |
|
| [emulateNetworkConditions(networkConditions)](./puppeteer.page.emulatenetworkconditions.md) | | <p>This does not affect WebSockets and WebRTC PeerConnections (see https://crbug.com/563644). To set the page offline, you can use [Page.setOfflineMode()](./puppeteer.page.setofflinemode.md).</p><p>A list of predefined network conditions can be used by importing [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md).</p> |
|
||||||
| [emulateTimezone(timezoneId)](./puppeteer.page.emulatetimezone.md) | | |
|
| [emulateTimezone(timezoneId)](./puppeteer.page.emulatetimezone.md) | | |
|
||||||
| [emulateVisionDeficiency(type)](./puppeteer.page.emulatevisiondeficiency.md) | | Simulates the given vision deficiency on the page. |
|
| [emulateVisionDeficiency(type)](./puppeteer.page.emulatevisiondeficiency.md) | | Simulates the given vision deficiency on the page. |
|
||||||
| [evaluate(pageFunction, args)](./puppeteer.page.evaluate.md) | | <p>Evaluates a function in the page's context and returns the result.</p><p>If the function passed to <code>page.evaluteHandle</code> returns a Promise, the function will wait for the promise to resolve and return its value.</p> |
|
| [evaluate(pageFunction, args)](./puppeteer.page.evaluate.md) | | <p>Evaluates a function in the page's context and returns the result.</p><p>If the function passed to <code>page.evaluteHandle</code> returns a Promise, the function will wait for the promise to resolve and return its value.</p> |
|
||||||
@ -137,7 +137,7 @@ page.off('request', logRequest);
|
|||||||
| [setExtraHTTPHeaders(headers)](./puppeteer.page.setextrahttpheaders.md) | | <p>The extra HTTP headers will be sent with every request the page initiates.</p><p>:::tip</p><p>All HTTP header names are lowercased. (HTTP headers are case-insensitive, so this shouldn’t impact your server code.)</p><p>:::</p><p>:::note</p><p>page.setExtraHTTPHeaders does not guarantee the order of headers in the outgoing requests.</p><p>:::</p> |
|
| [setExtraHTTPHeaders(headers)](./puppeteer.page.setextrahttpheaders.md) | | <p>The extra HTTP headers will be sent with every request the page initiates.</p><p>:::tip</p><p>All HTTP header names are lowercased. (HTTP headers are case-insensitive, so this shouldn’t impact your server code.)</p><p>:::</p><p>:::note</p><p>page.setExtraHTTPHeaders does not guarantee the order of headers in the outgoing requests.</p><p>:::</p> |
|
||||||
| [setGeolocation(options)](./puppeteer.page.setgeolocation.md) | | Sets the page's geolocation. |
|
| [setGeolocation(options)](./puppeteer.page.setgeolocation.md) | | Sets the page's geolocation. |
|
||||||
| [setJavaScriptEnabled(enabled)](./puppeteer.page.setjavascriptenabled.md) | | |
|
| [setJavaScriptEnabled(enabled)](./puppeteer.page.setjavascriptenabled.md) | | |
|
||||||
| [setOfflineMode(enabled)](./puppeteer.page.setofflinemode.md) | | |
|
| [setOfflineMode(enabled)](./puppeteer.page.setofflinemode.md) | | <p>Sets the network connection to offline.</p><p>It does not change the parameters used in [Page.emulateNetworkConditions()](./puppeteer.page.emulatenetworkconditions.md)</p> |
|
||||||
| [setRequestInterception(value)](./puppeteer.page.setrequestinterception.md) | | <p>Activating request interception enables [HTTPRequest.abort()](./puppeteer.httprequest.abort.md), [HTTPRequest.continue()](./puppeteer.httprequest.continue.md) and [HTTPRequest.respond()](./puppeteer.httprequest.respond.md) methods. This provides the capability to modify network requests that are made by a page.</p><p>Once request interception is enabled, every request will stall unless it's continued, responded or aborted; or completed using the browser cache.</p><p>Enabling request interception disables page caching.</p><p>See the [Request interception guide](https://pptr.dev/next/guides/request-interception) for more details.</p> |
|
| [setRequestInterception(value)](./puppeteer.page.setrequestinterception.md) | | <p>Activating request interception enables [HTTPRequest.abort()](./puppeteer.httprequest.abort.md), [HTTPRequest.continue()](./puppeteer.httprequest.continue.md) and [HTTPRequest.respond()](./puppeteer.httprequest.respond.md) methods. This provides the capability to modify network requests that are made by a page.</p><p>Once request interception is enabled, every request will stall unless it's continued, responded or aborted; or completed using the browser cache.</p><p>Enabling request interception disables page caching.</p><p>See the [Request interception guide](https://pptr.dev/next/guides/request-interception) for more details.</p> |
|
||||||
| [setUserAgent(userAgent, userAgentMetadata)](./puppeteer.page.setuseragent.md) | | |
|
| [setUserAgent(userAgent, userAgentMetadata)](./puppeteer.page.setuseragent.md) | | |
|
||||||
| [setViewport(viewport)](./puppeteer.page.setviewport.md) | | <p><code>page.setViewport</code> will resize the page. A lot of websites don't expect phones to change size, so you should set the viewport before navigating to the page.</p><p>In the case of multiple pages in a single browser, each page can have its own viewport size.</p> |
|
| [setViewport(viewport)](./puppeteer.page.setviewport.md) | | <p><code>page.setViewport</code> will resize the page. A lot of websites don't expect phones to change size, so you should set the viewport before navigating to the page.</p><p>In the case of multiple pages in a single browser, each page can have its own viewport size.</p> |
|
||||||
|
@ -4,6 +4,10 @@ sidebar_label: Page.setOfflineMode
|
|||||||
|
|
||||||
# Page.setOfflineMode() method
|
# Page.setOfflineMode() method
|
||||||
|
|
||||||
|
Sets the network connection to offline.
|
||||||
|
|
||||||
|
It does not change the parameters used in [Page.emulateNetworkConditions()](./puppeteer.page.emulatenetworkconditions.md)
|
||||||
|
|
||||||
**Signature:**
|
**Signature:**
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
@ -21,7 +25,3 @@ class Page {
|
|||||||
**Returns:**
|
**Returns:**
|
||||||
|
|
||||||
Promise<void>
|
Promise<void>
|
||||||
|
|
||||||
## Remarks
|
|
||||||
|
|
||||||
NOTE: while this method sets the network connection to offline, it does not change the parameters used in \[page.emulateNetworkConditions(networkConditions)\] (\#pageemulatenetworkconditionsnetworkconditions)
|
|
||||||
|
32
docs/api/puppeteer.predefinednetworkconditions.md
Normal file
32
docs/api/puppeteer.predefinednetworkconditions.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
sidebar_label: PredefinedNetworkConditions
|
||||||
|
---
|
||||||
|
|
||||||
|
# PredefinedNetworkConditions variable
|
||||||
|
|
||||||
|
A list of network conditions to be used with [Page.emulateNetworkConditions()](./puppeteer.page.emulatenetworkconditions.md).
|
||||||
|
|
||||||
|
**Signature:**
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
PredefinedNetworkConditions: Readonly<{
|
||||||
|
'Slow 3G': NetworkConditions;
|
||||||
|
'Fast 3G': NetworkConditions;
|
||||||
|
}>;
|
||||||
|
```
|
||||||
|
|
||||||
|
## Example
|
||||||
|
|
||||||
|
```ts
|
||||||
|
import {PredefinedNetworkConditions} from 'puppeteer';
|
||||||
|
const slow3G = PredefinedNetworkConditions['Slow 3G'];
|
||||||
|
|
||||||
|
(async () => {
|
||||||
|
const browser = await puppeteer.launch();
|
||||||
|
const page = await browser.newPage();
|
||||||
|
await page.emulateNetworkConditions(slow3G);
|
||||||
|
await page.goto('https://www.google.com');
|
||||||
|
// other actions...
|
||||||
|
await browser.close();
|
||||||
|
})();
|
||||||
|
```
|
@ -20,10 +20,9 @@ The constructor for this class is marked as internal. Third-party code should no
|
|||||||
|
|
||||||
## Properties
|
## Properties
|
||||||
|
|
||||||
| Property | Modifiers | Type | Description |
|
| Property | Modifiers | Type | Description |
|
||||||
| --------------------------------------------------------------- | --------------------- | ------------------------------------------------------------ | ----------- |
|
| ------------------------------------------- | --------------------- | ---------------------------------------- | ----------- |
|
||||||
| [devices](./puppeteer.puppeteer.devices.md) | <code>readonly</code> | typeof [devices](./puppeteer.devices.md) | |
|
| [devices](./puppeteer.puppeteer.devices.md) | <code>readonly</code> | typeof [devices](./puppeteer.devices.md) | |
|
||||||
| [networkConditions](./puppeteer.puppeteer.networkconditions.md) | <code>readonly</code> | typeof [networkConditions](./puppeteer.networkconditions.md) | |
|
|
||||||
|
|
||||||
## Methods
|
## Methods
|
||||||
|
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
---
|
|
||||||
sidebar_label: Puppeteer.networkConditions
|
|
||||||
---
|
|
||||||
|
|
||||||
# Puppeteer.networkConditions property
|
|
||||||
|
|
||||||
> Warning: This API is now obsolete.
|
|
||||||
>
|
|
||||||
> Import directly puppeteer.
|
|
||||||
|
|
||||||
**Signature:**
|
|
||||||
|
|
||||||
```typescript
|
|
||||||
class Puppeteer {
|
|
||||||
get networkConditions(): typeof networkConditions;
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Example
|
|
||||||
|
|
||||||
```ts
|
|
||||||
import {networkConditions} from 'puppeteer';
|
|
||||||
```
|
|
@ -675,11 +675,11 @@ export class Page extends EventEmitter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* Sets the network connection to offline.
|
||||||
|
*
|
||||||
|
* It does not change the parameters used in {@link Page.emulateNetworkConditions}
|
||||||
|
*
|
||||||
* @param enabled - When `true`, enables offline mode for the page.
|
* @param enabled - When `true`, enables offline mode for the page.
|
||||||
* @remarks
|
|
||||||
* NOTE: while this method sets the network connection to offline, it does
|
|
||||||
* not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
|
|
||||||
* (#pageemulatenetworkconditionsnetworkconditions)
|
|
||||||
*/
|
*/
|
||||||
setOfflineMode(enabled: boolean): Promise<void>;
|
setOfflineMode(enabled: boolean): Promise<void>;
|
||||||
setOfflineMode(): Promise<void> {
|
setOfflineMode(): Promise<void> {
|
||||||
@ -687,12 +687,18 @@ export class Page extends EventEmitter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param networkConditions - Passing `null` disables network condition emulation.
|
* This does not affect WebSockets and WebRTC PeerConnections (see
|
||||||
|
* https://crbug.com/563644). To set the page offline, you can use
|
||||||
|
* {@link Page.setOfflineMode}.
|
||||||
|
*
|
||||||
|
* A list of predefined network conditions can be used by importing
|
||||||
|
* {@link PredefinedNetworkConditions}.
|
||||||
|
*
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* ```ts
|
* ```ts
|
||||||
* const puppeteer = require('puppeteer');
|
* import {PredefinedNetworkConditions} from 'puppeteer';
|
||||||
* const slow3G = puppeteer.networkConditions['Slow 3G'];
|
* const slow3G = PredefinedNetworkConditions['Slow 3G'];
|
||||||
*
|
*
|
||||||
* (async () => {
|
* (async () => {
|
||||||
* const browser = await puppeteer.launch();
|
* const browser = await puppeteer.launch();
|
||||||
@ -704,10 +710,8 @@ export class Page extends EventEmitter {
|
|||||||
* })();
|
* })();
|
||||||
* ```
|
* ```
|
||||||
*
|
*
|
||||||
* @remarks
|
* @param networkConditions - Passing `null` disables network condition
|
||||||
* NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
|
* emulation.
|
||||||
* https://crbug.com/563644). To set the page offline, you can use
|
|
||||||
* [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
|
|
||||||
*/
|
*/
|
||||||
emulateNetworkConditions(
|
emulateNetworkConditions(
|
||||||
networkConditions: NetworkConditions | null
|
networkConditions: NetworkConditions | null
|
||||||
|
@ -589,40 +589,10 @@ export class CDPPage extends Page {
|
|||||||
return this.#client.send('Input.setInterceptDrags', {enabled});
|
return this.#client.send('Input.setInterceptDrags', {enabled});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @param enabled - When `true`, enables offline mode for the page.
|
|
||||||
* @remarks
|
|
||||||
* NOTE: while this method sets the network connection to offline, it does
|
|
||||||
* not change the parameters used in [page.emulateNetworkConditions(networkConditions)]
|
|
||||||
* (#pageemulatenetworkconditionsnetworkconditions)
|
|
||||||
*/
|
|
||||||
override setOfflineMode(enabled: boolean): Promise<void> {
|
override setOfflineMode(enabled: boolean): Promise<void> {
|
||||||
return this.#frameManager.networkManager.setOfflineMode(enabled);
|
return this.#frameManager.networkManager.setOfflineMode(enabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @param networkConditions - Passing `null` disables network condition emulation.
|
|
||||||
* @example
|
|
||||||
*
|
|
||||||
* ```ts
|
|
||||||
* const puppeteer = require('puppeteer');
|
|
||||||
* const slow3G = puppeteer.networkConditions['Slow 3G'];
|
|
||||||
*
|
|
||||||
* (async () => {
|
|
||||||
* const browser = await puppeteer.launch();
|
|
||||||
* const page = await browser.newPage();
|
|
||||||
* await page.emulateNetworkConditions(slow3G);
|
|
||||||
* await page.goto('https://www.google.com');
|
|
||||||
* // other actions...
|
|
||||||
* await browser.close();
|
|
||||||
* })();
|
|
||||||
* ```
|
|
||||||
*
|
|
||||||
* @remarks
|
|
||||||
* NOTE: This does not affect WebSockets and WebRTC PeerConnections (see
|
|
||||||
* https://crbug.com/563644). To set the page offline, you can use
|
|
||||||
* [page.setOfflineMode(enabled)](#pagesetofflinemodeenabled).
|
|
||||||
*/
|
|
||||||
override emulateNetworkConditions(
|
override emulateNetworkConditions(
|
||||||
networkConditions: NetworkConditions | null
|
networkConditions: NetworkConditions | null
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
|
@ -18,15 +18,13 @@ import {NetworkConditions} from './NetworkManager.js';
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* A list of network conditions to be used with
|
* A list of network conditions to be used with
|
||||||
* `page.emulateNetworkConditions(networkConditions)`. Actual list of predefined
|
* {@link Page.emulateNetworkConditions}.
|
||||||
* conditions can be found in
|
|
||||||
* {@link https://github.com/puppeteer/puppeteer/blob/main/src/common/NetworkConditions.ts | src/common/NetworkConditions.ts}.
|
|
||||||
*
|
*
|
||||||
* @example
|
* @example
|
||||||
*
|
*
|
||||||
* ```ts
|
* ```ts
|
||||||
* const puppeteer = require('puppeteer');
|
* import {PredefinedNetworkConditions} from 'puppeteer';
|
||||||
* const slow3G = puppeteer.networkConditions['Slow 3G'];
|
* const slow3G = PredefinedNetworkConditions['Slow 3G'];
|
||||||
*
|
*
|
||||||
* (async () => {
|
* (async () => {
|
||||||
* const browser = await puppeteer.launch();
|
* const browser = await puppeteer.launch();
|
||||||
@ -40,18 +38,22 @@ import {NetworkConditions} from './NetworkManager.js';
|
|||||||
*
|
*
|
||||||
* @public
|
* @public
|
||||||
*/
|
*/
|
||||||
export const networkConditions: Readonly<{
|
export const PredefinedNetworkConditions = Object.freeze({
|
||||||
'Slow 3G': NetworkConditions;
|
|
||||||
'Fast 3G': NetworkConditions;
|
|
||||||
}> = Object.freeze({
|
|
||||||
'Slow 3G': {
|
'Slow 3G': {
|
||||||
download: ((500 * 1000) / 8) * 0.8,
|
download: ((500 * 1000) / 8) * 0.8,
|
||||||
upload: ((500 * 1000) / 8) * 0.8,
|
upload: ((500 * 1000) / 8) * 0.8,
|
||||||
latency: 400 * 5,
|
latency: 400 * 5,
|
||||||
},
|
} as NetworkConditions,
|
||||||
'Fast 3G': {
|
'Fast 3G': {
|
||||||
download: ((1.6 * 1000 * 1000) / 8) * 0.9,
|
download: ((1.6 * 1000 * 1000) / 8) * 0.9,
|
||||||
upload: ((750 * 1000) / 8) * 0.9,
|
upload: ((750 * 1000) / 8) * 0.9,
|
||||||
latency: 150 * 3.75,
|
latency: 150 * 3.75,
|
||||||
},
|
} as NetworkConditions,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated Import {@link PredefinedNetworkConditions}.
|
||||||
|
*
|
||||||
|
* @public
|
||||||
|
*/
|
||||||
|
export const networkConditions = PredefinedNetworkConditions;
|
@ -20,7 +20,6 @@ import {
|
|||||||
} from './BrowserConnector.js';
|
} from './BrowserConnector.js';
|
||||||
import {ConnectionTransport} from './ConnectionTransport.js';
|
import {ConnectionTransport} from './ConnectionTransport.js';
|
||||||
import {devices} from './DeviceDescriptors.js';
|
import {devices} from './DeviceDescriptors.js';
|
||||||
import {networkConditions} from './NetworkConditions.js';
|
|
||||||
import {
|
import {
|
||||||
clearCustomQueryHandlers,
|
clearCustomQueryHandlers,
|
||||||
CustomQueryHandler,
|
CustomQueryHandler,
|
||||||
@ -98,18 +97,6 @@ export class Puppeteer {
|
|||||||
return devices;
|
return devices;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @deprecated Import directly puppeteer.
|
|
||||||
* @example
|
|
||||||
*
|
|
||||||
* ```ts
|
|
||||||
* import {networkConditions} from 'puppeteer';
|
|
||||||
* ```
|
|
||||||
*/
|
|
||||||
get networkConditions(): typeof networkConditions {
|
|
||||||
return networkConditions;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @deprecated Import directly puppeteer.
|
* @deprecated Import directly puppeteer.
|
||||||
* @example
|
* @example
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
export {Protocol} from 'devtools-protocol';
|
export {Protocol} from 'devtools-protocol';
|
||||||
export * from './common/DeviceDescriptors.js';
|
export * from './common/DeviceDescriptors.js';
|
||||||
export * from './common/Errors.js';
|
export * from './common/Errors.js';
|
||||||
export * from './common/NetworkConditions.js';
|
export * from './common/PredefinedNetworkConditions.js';
|
||||||
export * from './common/QueryHandler.js';
|
export * from './common/QueryHandler.js';
|
||||||
|
|
||||||
import {rootDirname} from './constants.js';
|
import {rootDirname} from './constants.js';
|
||||||
|
@ -33,12 +33,12 @@ export * from './common/IsolatedWorld.js';
|
|||||||
export * from './common/JSHandle.js';
|
export * from './common/JSHandle.js';
|
||||||
export * from './common/LazyArg.js';
|
export * from './common/LazyArg.js';
|
||||||
export * from './common/LifecycleWatcher.js';
|
export * from './common/LifecycleWatcher.js';
|
||||||
export * from './common/NetworkConditions.js';
|
|
||||||
export * from './common/NetworkEventManager.js';
|
export * from './common/NetworkEventManager.js';
|
||||||
export * from './common/NetworkManager.js';
|
export * from './common/NetworkManager.js';
|
||||||
export * from './common/NodeWebSocketTransport.js';
|
export * from './common/NodeWebSocketTransport.js';
|
||||||
export * from './common/Page.js';
|
export * from './common/Page.js';
|
||||||
export * from './common/PDFOptions.js';
|
export * from './common/PDFOptions.js';
|
||||||
|
export * from './common/PredefinedNetworkConditions.js';
|
||||||
export * from './common/Product.js';
|
export * from './common/Product.js';
|
||||||
export * from './common/Puppeteer.js';
|
export * from './common/Puppeteer.js';
|
||||||
export * from './common/PuppeteerViewport.js';
|
export * from './common/PuppeteerViewport.js';
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
export {Protocol} from 'devtools-protocol';
|
export {Protocol} from 'devtools-protocol';
|
||||||
export * from 'puppeteer-core/internal/common/DeviceDescriptors.js';
|
export * from 'puppeteer-core/internal/common/DeviceDescriptors.js';
|
||||||
export * from 'puppeteer-core/internal/common/Errors.js';
|
export * from 'puppeteer-core/internal/common/Errors.js';
|
||||||
export * from 'puppeteer-core/internal/common/NetworkConditions.js';
|
export * from 'puppeteer-core/internal/common/PredefinedNetworkConditions.js';
|
||||||
export * from 'puppeteer-core/internal/common/QueryHandler.js';
|
export * from 'puppeteer-core/internal/common/QueryHandler.js';
|
||||||
export {BrowserFetcher} from 'puppeteer-core/internal/node/BrowserFetcher.js';
|
export {BrowserFetcher} from 'puppeteer-core/internal/node/BrowserFetcher.js';
|
||||||
export {LaunchOptions} from 'puppeteer-core/internal/node/LaunchOptions.js';
|
export {LaunchOptions} from 'puppeteer-core/internal/node/LaunchOptions.js';
|
||||||
|
@ -33,12 +33,12 @@ export * from 'puppeteer-core/internal/common/IsolatedWorld.js';
|
|||||||
export * from 'puppeteer-core/internal/common/JSHandle.js';
|
export * from 'puppeteer-core/internal/common/JSHandle.js';
|
||||||
export * from 'puppeteer-core/internal/common/LazyArg.js';
|
export * from 'puppeteer-core/internal/common/LazyArg.js';
|
||||||
export * from 'puppeteer-core/internal/common/LifecycleWatcher.js';
|
export * from 'puppeteer-core/internal/common/LifecycleWatcher.js';
|
||||||
export * from 'puppeteer-core/internal/common/NetworkConditions.js';
|
|
||||||
export * from 'puppeteer-core/internal/common/NetworkEventManager.js';
|
export * from 'puppeteer-core/internal/common/NetworkEventManager.js';
|
||||||
export * from 'puppeteer-core/internal/common/NetworkManager.js';
|
export * from 'puppeteer-core/internal/common/NetworkManager.js';
|
||||||
export * from 'puppeteer-core/internal/common/NodeWebSocketTransport.js';
|
export * from 'puppeteer-core/internal/common/NodeWebSocketTransport.js';
|
||||||
export * from 'puppeteer-core/internal/common/Page.js';
|
export * from 'puppeteer-core/internal/common/Page.js';
|
||||||
export * from 'puppeteer-core/internal/common/PDFOptions.js';
|
export * from 'puppeteer-core/internal/common/PDFOptions.js';
|
||||||
|
export * from 'puppeteer-core/internal/common/PredefinedNetworkConditions.js';
|
||||||
export * from 'puppeteer-core/internal/common/Product.js';
|
export * from 'puppeteer-core/internal/common/Product.js';
|
||||||
export * from 'puppeteer-core/internal/common/Puppeteer.js';
|
export * from 'puppeteer-core/internal/common/Puppeteer.js';
|
||||||
export * from 'puppeteer-core/internal/common/PuppeteerViewport.js';
|
export * from 'puppeteer-core/internal/common/PuppeteerViewport.js';
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import expect from 'expect';
|
import expect from 'expect';
|
||||||
|
import {PredefinedNetworkConditions} from 'puppeteer';
|
||||||
import {Device} from 'puppeteer-core/internal/common/DeviceDescriptors.js';
|
import {Device} from 'puppeteer-core/internal/common/DeviceDescriptors.js';
|
||||||
import {
|
import {
|
||||||
getTestState,
|
getTestState,
|
||||||
@ -478,7 +479,7 @@ describe('Emulation', () => {
|
|||||||
|
|
||||||
let error!: Error;
|
let error!: Error;
|
||||||
await page
|
await page
|
||||||
// @ts-expect-error deliberately passign invalid deficiency
|
// @ts-expect-error deliberately passing invalid deficiency
|
||||||
.emulateVisionDeficiency('invalid')
|
.emulateVisionDeficiency('invalid')
|
||||||
.catch(error_ => {
|
.catch(error_ => {
|
||||||
return (error = error_);
|
return (error = error_);
|
||||||
@ -489,10 +490,10 @@ describe('Emulation', () => {
|
|||||||
|
|
||||||
describe('Page.emulateNetworkConditions', function () {
|
describe('Page.emulateNetworkConditions', function () {
|
||||||
it('should change navigator.connection.effectiveType', async () => {
|
it('should change navigator.connection.effectiveType', async () => {
|
||||||
const {page, puppeteer} = getTestState();
|
const {page} = getTestState();
|
||||||
|
|
||||||
const slow3G = puppeteer.networkConditions['Slow 3G']!;
|
const slow3G = PredefinedNetworkConditions['Slow 3G']!;
|
||||||
const fast3G = puppeteer.networkConditions['Fast 3G']!;
|
const fast3G = PredefinedNetworkConditions['Fast 3G']!;
|
||||||
|
|
||||||
expect(
|
expect(
|
||||||
await page.evaluate('window.navigator.connection.effectiveType')
|
await page.evaluate('window.navigator.connection.effectiveType')
|
||||||
|
Loading…
Reference in New Issue
Block a user