mirror of
https://github.com/cypress-io/cypress.git
synced 2026-02-20 06:01:12 -06:00
fix: everyNthFrame should only be applied for Chrome 89+ (#18392)
Co-authored-by: Zach Bloomquist <github@chary.us>
This commit is contained in:
@@ -19,9 +19,11 @@ export type CyCookie = Pick<chrome.cookies.Cookie, 'name' | 'value' | 'expiratio
|
||||
// https://developer.chrome.com/extensions/cookies#method-getAll
|
||||
type CyCookieFilter = chrome.cookies.GetAllDetails
|
||||
|
||||
export const screencastOpts: Protocol.Page.StartScreencastRequest = {
|
||||
format: 'jpeg',
|
||||
everyNthFrame: Number(process.env.CYPRESS_EVERY_NTH_FRAME || 5),
|
||||
export function screencastOpts (everyNthFrame = Number(process.env.CYPRESS_EVERY_NTH_FRAME || 5)): Protocol.Page.StartScreencastRequest {
|
||||
return {
|
||||
format: 'jpeg',
|
||||
everyNthFrame,
|
||||
}
|
||||
}
|
||||
|
||||
function convertSameSiteExtensionToCdp (str: CyCookie['sameSite']): Protocol.Network.CookieSameSite | undefined {
|
||||
|
||||
@@ -25,6 +25,7 @@ const debug = debugModule('cypress:server:browsers:chrome')
|
||||
const LOAD_EXTENSION = '--load-extension='
|
||||
const CHROME_VERSIONS_WITH_BUGGY_ROOT_LAYER_SCROLLING = '66 67'.split(' ')
|
||||
const CHROME_VERSION_INTRODUCING_PROXY_BYPASS_ON_LOOPBACK = 72
|
||||
const CHROME_VERSION_WITH_FPS_INCREASE = 89
|
||||
|
||||
const CHROME_PREFERENCE_PATHS = {
|
||||
default: path.join('Default', 'Preferences'),
|
||||
@@ -260,7 +261,7 @@ const _connectToChromeRemoteInterface = function (port, onError, browserDisplayN
|
||||
})
|
||||
}
|
||||
|
||||
const _maybeRecordVideo = async function (client, options) {
|
||||
const _maybeRecordVideo = async function (client, options, browserMajorVersion) {
|
||||
if (!options.onScreencastFrame) {
|
||||
debug('options.onScreencastFrame is false')
|
||||
|
||||
@@ -273,7 +274,7 @@ const _maybeRecordVideo = async function (client, options) {
|
||||
client.send('Page.screencastFrameAck', { sessionId: meta.sessionId })
|
||||
})
|
||||
|
||||
await client.send('Page.startScreencast', screencastOpts)
|
||||
await client.send('Page.startScreencast', browserMajorVersion >= CHROME_VERSION_WITH_FPS_INCREASE ? screencastOpts() : screencastOpts(1))
|
||||
|
||||
return client
|
||||
}
|
||||
@@ -528,7 +529,7 @@ export = {
|
||||
await originalBrowserKill.apply(launchedBrowser, args)
|
||||
}
|
||||
|
||||
await this._maybeRecordVideo(criClient, options)
|
||||
await this._maybeRecordVideo(criClient, options, browser.majorVersion)
|
||||
await this._navigateUsingCRI(criClient, url)
|
||||
await this._handleDownloads(criClient, options.downloadsFolder, automation)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user