chromedriver.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /**
  2. * @license
  3. * Copyright 2023 Google Inc.
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. import path from 'path';
  7. import { BrowserPlatform } from './types.js';
  8. function folder(platform) {
  9. switch (platform) {
  10. case BrowserPlatform.LINUX:
  11. return 'linux64';
  12. case BrowserPlatform.MAC_ARM:
  13. return 'mac-arm64';
  14. case BrowserPlatform.MAC:
  15. return 'mac-x64';
  16. case BrowserPlatform.WIN32:
  17. return 'win32';
  18. case BrowserPlatform.WIN64:
  19. return 'win64';
  20. }
  21. }
  22. export function resolveDownloadUrl(platform, buildId, baseUrl = 'https://storage.googleapis.com/chrome-for-testing-public') {
  23. return `${baseUrl}/${resolveDownloadPath(platform, buildId).join('/')}`;
  24. }
  25. export function resolveDownloadPath(platform, buildId) {
  26. return [buildId, folder(platform), `chromedriver-${folder(platform)}.zip`];
  27. }
  28. export function relativeExecutablePath(platform, _buildId) {
  29. switch (platform) {
  30. case BrowserPlatform.MAC:
  31. case BrowserPlatform.MAC_ARM:
  32. return path.join('chromedriver-' + folder(platform), 'chromedriver');
  33. case BrowserPlatform.LINUX:
  34. return path.join('chromedriver-linux64', 'chromedriver');
  35. case BrowserPlatform.WIN32:
  36. case BrowserPlatform.WIN64:
  37. return path.join('chromedriver-' + folder(platform), 'chromedriver.exe');
  38. }
  39. }
  40. export { resolveBuildId, compareVersions } from './chrome.js';
  41. //# sourceMappingURL=chromedriver.js.map