/** * @license * Copyright 2023 Google Inc. * SPDX-License-Identifier: Apache-2.0 */ import path from 'path'; import {BrowserPlatform} from './types.js'; function folder(platform: BrowserPlatform): string { switch (platform) { case BrowserPlatform.LINUX: return 'linux64'; case BrowserPlatform.MAC_ARM: return 'mac-arm64'; case BrowserPlatform.MAC: return 'mac-x64'; case BrowserPlatform.WIN32: return 'win32'; case BrowserPlatform.WIN64: return 'win64'; } } export function resolveDownloadUrl( platform: BrowserPlatform, buildId: string, baseUrl = 'https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing' ): string { return `${baseUrl}/${resolveDownloadPath(platform, buildId).join('/')}`; } export function resolveDownloadPath( platform: BrowserPlatform, buildId: string ): string[] { return [buildId, folder(platform), `chromedriver-${folder(platform)}.zip`]; } export function relativeExecutablePath( platform: BrowserPlatform, _buildId: string ): string { switch (platform) { case BrowserPlatform.MAC: case BrowserPlatform.MAC_ARM: return path.join('chromedriver-' + folder(platform), 'chromedriver'); case BrowserPlatform.LINUX: return path.join('chromedriver-linux64', 'chromedriver'); case BrowserPlatform.WIN32: case BrowserPlatform.WIN64: return path.join('chromedriver-' + folder(platform), 'chromedriver.exe'); } } export {resolveBuildId} from './chrome.js';