testplane 8.22.5 → 8.23.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.
Files changed (84) hide show
  1. package/build/package.json +6 -2
  2. package/build/src/browser/new-browser.js +33 -3
  3. package/build/src/browser/new-browser.js.map +1 -1
  4. package/build/src/browser-installer/chrome/browser.d.ts +3 -1
  5. package/build/src/browser-installer/chrome/browser.js +18 -5
  6. package/build/src/browser-installer/chrome/browser.js.map +1 -1
  7. package/build/src/browser-installer/chrome/driver.js +7 -4
  8. package/build/src/browser-installer/chrome/driver.js.map +1 -1
  9. package/build/src/browser-installer/chrome/index.js +10 -4
  10. package/build/src/browser-installer/chrome/index.js.map +1 -1
  11. package/build/src/browser-installer/chromium/browser.js +7 -4
  12. package/build/src/browser-installer/chromium/browser.js.map +1 -1
  13. package/build/src/browser-installer/chromium/driver.js +2 -2
  14. package/build/src/browser-installer/chromium/driver.js.map +1 -1
  15. package/build/src/browser-installer/chromium/revisions/autogenerated/linux.json +41 -0
  16. package/build/src/browser-installer/chromium/revisions/autogenerated/mac.json +41 -0
  17. package/build/src/browser-installer/chromium/revisions/autogenerated/mac_arm.json +22 -0
  18. package/build/src/browser-installer/chromium/revisions/autogenerated/win32.json +41 -0
  19. package/build/src/browser-installer/chromium/revisions/autogenerated/win64.json +41 -0
  20. package/build/src/browser-installer/chromium/utils.js +2 -24
  21. package/build/src/browser-installer/chromium/utils.js.map +1 -1
  22. package/build/src/browser-installer/constants.d.ts +4 -2
  23. package/build/src/browser-installer/constants.js +5 -3
  24. package/build/src/browser-installer/constants.js.map +1 -1
  25. package/build/src/browser-installer/edge/driver.js +7 -4
  26. package/build/src/browser-installer/edge/driver.js.map +1 -1
  27. package/build/src/browser-installer/edge/index.js +1 -2
  28. package/build/src/browser-installer/edge/index.js.map +1 -1
  29. package/build/src/browser-installer/firefox/browser.d.ts +3 -1
  30. package/build/src/browser-installer/firefox/browser.js +18 -5
  31. package/build/src/browser-installer/firefox/browser.js.map +1 -1
  32. package/build/src/browser-installer/firefox/driver.js +7 -4
  33. package/build/src/browser-installer/firefox/driver.js.map +1 -1
  34. package/build/src/browser-installer/firefox/index.js +7 -3
  35. package/build/src/browser-installer/firefox/index.js.map +1 -1
  36. package/build/src/browser-installer/index.d.ts +1 -1
  37. package/build/src/browser-installer/index.js +2 -2
  38. package/build/src/browser-installer/index.js.map +1 -1
  39. package/build/src/browser-installer/install.d.ts +5 -3
  40. package/build/src/browser-installer/install.js +39 -37
  41. package/build/src/browser-installer/install.js.map +1 -1
  42. package/build/src/browser-installer/registry/cli-progress-bar.d.ts +1 -0
  43. package/build/src/browser-installer/registry/cli-progress-bar.js +11 -8
  44. package/build/src/browser-installer/registry/cli-progress-bar.js.map +1 -1
  45. package/build/src/browser-installer/registry/index.d.ts +31 -5
  46. package/build/src/browser-installer/registry/index.js +174 -111
  47. package/build/src/browser-installer/registry/index.js.map +1 -1
  48. package/build/src/browser-installer/run.d.ts +2 -2
  49. package/build/src/browser-installer/run.js +12 -8
  50. package/build/src/browser-installer/run.js.map +1 -1
  51. package/build/src/browser-installer/ubuntu-packages/apt.d.ts +4 -0
  52. package/build/src/browser-installer/ubuntu-packages/apt.js +132 -0
  53. package/build/src/browser-installer/ubuntu-packages/apt.js.map +1 -0
  54. package/build/src/browser-installer/ubuntu-packages/autogenerated/ubuntu-20-dependencies.json +42 -0
  55. package/build/src/browser-installer/ubuntu-packages/autogenerated/ubuntu-22-dependencies.json +42 -0
  56. package/build/src/browser-installer/ubuntu-packages/autogenerated/ubuntu-24-dependencies.json +42 -0
  57. package/build/src/browser-installer/ubuntu-packages/index.d.ts +4 -0
  58. package/build/src/browser-installer/ubuntu-packages/index.js +85 -0
  59. package/build/src/browser-installer/ubuntu-packages/index.js.map +1 -0
  60. package/build/src/browser-installer/ubuntu-packages/utils.d.ts +4 -0
  61. package/build/src/browser-installer/ubuntu-packages/utils.js +59 -0
  62. package/build/src/browser-installer/ubuntu-packages/utils.js.map +1 -0
  63. package/build/src/browser-installer/utils.d.ts +3 -2
  64. package/build/src/browser-installer/utils.js +18 -13
  65. package/build/src/browser-installer/utils.js.map +1 -1
  66. package/build/src/browser-pool/webdriver-pool.d.ts +1 -2
  67. package/build/src/browser-pool/webdriver-pool.js +15 -15
  68. package/build/src/browser-pool/webdriver-pool.js.map +1 -1
  69. package/package.json +6 -2
  70. package/build/src/browser-installer/chromium/revisions/linux.d.ts +0 -2
  71. package/build/src/browser-installer/chromium/revisions/linux.js +0 -45
  72. package/build/src/browser-installer/chromium/revisions/linux.js.map +0 -1
  73. package/build/src/browser-installer/chromium/revisions/mac.d.ts +0 -2
  74. package/build/src/browser-installer/chromium/revisions/mac.js +0 -45
  75. package/build/src/browser-installer/chromium/revisions/mac.js.map +0 -1
  76. package/build/src/browser-installer/chromium/revisions/mac_arm.d.ts +0 -2
  77. package/build/src/browser-installer/chromium/revisions/mac_arm.js +0 -25
  78. package/build/src/browser-installer/chromium/revisions/mac_arm.js.map +0 -1
  79. package/build/src/browser-installer/chromium/revisions/win32.d.ts +0 -2
  80. package/build/src/browser-installer/chromium/revisions/win32.js +0 -45
  81. package/build/src/browser-installer/chromium/revisions/win32.js.map +0 -1
  82. package/build/src/browser-installer/chromium/revisions/win64.d.ts +0 -2
  83. package/build/src/browser-installer/chromium/revisions/win64.js +0 -45
  84. package/build/src/browser-installer/chromium/revisions/win64.js.map +0 -1
@@ -26,136 +26,199 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.installBinary = exports.getMatchedBrowserVersion = exports.getMatchedDriverVersion = exports.getBinaryPath = void 0;
30
- const fs_extra_1 = require("fs-extra");
29
+ const lodash_1 = __importDefault(require("lodash"));
30
+ const fs_extra_1 = __importDefault(require("fs-extra"));
31
31
  const path_1 = __importDefault(require("path"));
32
32
  const utils_1 = require("../utils");
33
33
  const utils_2 = require("../firefox/utils");
34
34
  const logger_1 = __importDefault(require("../../utils/logger"));
35
- const registryPath = (0, utils_1.getRegistryPath)();
36
- const registry = (0, fs_extra_1.existsSync)(registryPath) ? (0, fs_extra_1.readJsonSync)(registryPath) : {};
37
- let cliProgressBar = null;
38
- let warnedFirstTimeInstall = false;
39
- const getRegistryKey = (name, platform) => `${name}_${platform}`;
40
- const getBinaryPath = async (name, platform, version) => {
41
- const registryKey = getRegistryKey(name, platform);
42
- if (!registry[registryKey]) {
43
- throw new Error(`Binary '${name}' on '${platform}' is not installed`);
35
+ const getRegistryBinaryKey = (name, platform) => `${name}_${platform}`;
36
+ const getRegistryOsPackagesKey = (name, version) => `${name}_${version}`;
37
+ const getCliProgressBar = lodash_1.default.once(async () => {
38
+ const { createBrowserDownloadProgressBar } = await Promise.resolve().then(() => __importStar(require("./cli-progress-bar")));
39
+ return createBrowserDownloadProgressBar();
40
+ });
41
+ const logDownloadingOsPackagesWarningOnce = lodash_1.default.once((osName) => {
42
+ logger_1.default.warn(`Downloading extra ${osName} packages`);
43
+ });
44
+ const logDownloadingBrowsersWarningOnce = lodash_1.default.once(() => {
45
+ logger_1.default.warn("Downloading Testplane browsers");
46
+ logger_1.default.warn("Note: this is one-time action. It may take a while...");
47
+ });
48
+ class Registry {
49
+ constructor() {
50
+ this.registryPath = (0, utils_1.getRegistryPath)();
51
+ this.registry = this.readRegistry();
44
52
  }
45
- if (!registry[registryKey][version]) {
46
- throw new Error(`Version '${version}' of driver '${name}' on '${platform}' is not installed`);
53
+ async getBinaryPath(name, platform, version) {
54
+ const registryKey = getRegistryBinaryKey(name, platform);
55
+ if (!this.registry.binaries[registryKey]) {
56
+ throw new Error(`Binary '${name}' on '${platform}' is not installed`);
57
+ }
58
+ if (!this.registry.binaries[registryKey][version]) {
59
+ throw new Error(`Version '${version}' of driver '${name}' on '${platform}' is not installed`);
60
+ }
61
+ const binaryRelativePath = await this.registry.binaries[registryKey][version];
62
+ (0, utils_1.browserInstallerDebug)(`resolved '${name}@${version}' on ${platform} to ${binaryRelativePath}`);
63
+ return path_1.default.resolve(this.registryPath, binaryRelativePath);
47
64
  }
48
- const binaryRelativePath = await registry[registryKey][version];
49
- (0, utils_1.browserInstallerDebug)(`resolved '${name}@${version}' on ${platform} to ${binaryRelativePath}`);
50
- return path_1.default.resolve(registryPath, binaryRelativePath);
51
- };
52
- exports.getBinaryPath = getBinaryPath;
53
- const addBinaryToRegistry = (name, platform, version, absoluteBinaryPath) => {
54
- const registryKey = getRegistryKey(name, platform);
55
- const relativePath = path_1.default.relative(registryPath, absoluteBinaryPath);
56
- registry[registryKey] ||= {};
57
- registry[registryKey][version] = relativePath;
58
- const replacer = (_, value) => {
59
- if (value.then) {
60
- return;
65
+ async getOsPackagesPath(name, version) {
66
+ const registryKey = getRegistryOsPackagesKey(name, version);
67
+ if (!this.registry.osPackages[registryKey]) {
68
+ throw new Error(`Packages for ${name}@${version} are not installed`);
61
69
  }
62
- return value;
63
- };
64
- (0, utils_1.browserInstallerDebug)(`adding '${name}@${version}' on '${platform}' to registry at ${relativePath}`);
65
- (0, fs_extra_1.outputJSONSync)(registryPath, registry, { replacer });
66
- };
67
- const getBinaryVersions = (name, platform) => {
68
- const registryKey = getRegistryKey(name, platform);
69
- if (!registry[registryKey]) {
70
- return [];
70
+ const osPackagesRelativePath = await this.registry.osPackages[registryKey];
71
+ (0, utils_1.browserInstallerDebug)(`resolved os packages for '${name}@${version}' to ${osPackagesRelativePath}`);
72
+ return path_1.default.resolve(this.registryPath, osPackagesRelativePath);
71
73
  }
72
- return Object.keys(registry[registryKey]);
73
- };
74
- const hasBinaryVersion = (name, platform, version) => getBinaryVersions(name, platform).includes(version);
75
- const getMatchedDriverVersion = (driverName, platform, browserVersion) => {
76
- const registryKey = getRegistryKey(driverName, platform);
77
- if (!registry[registryKey]) {
74
+ hasOsPackages(name, version) {
75
+ return Boolean(this.registry.osPackages[getRegistryOsPackagesKey(name, version)]);
76
+ }
77
+ getMatchedDriverVersion(driverName, platform, browserVersion) {
78
+ const registryKey = getRegistryBinaryKey(driverName, platform);
79
+ if (!this.registry.binaries[registryKey]) {
80
+ return null;
81
+ }
82
+ if (driverName === utils_1.Driver.CHROMEDRIVER || driverName === utils_1.Driver.EDGEDRIVER) {
83
+ const milestone = (0, utils_1.getMilestone)(browserVersion);
84
+ const buildIds = this.getBinaryVersions(driverName, platform);
85
+ const suitableBuildIds = buildIds.filter(buildId => buildId.startsWith(milestone));
86
+ if (!suitableBuildIds.length) {
87
+ return null;
88
+ }
89
+ return suitableBuildIds.sort(utils_1.semverVersionsComparator).pop();
90
+ }
91
+ if (driverName === utils_1.Driver.GECKODRIVER) {
92
+ const buildIds = Object.keys(this.registry.binaries[registryKey]);
93
+ const buildIdsSorted = buildIds.sort(utils_1.semverVersionsComparator);
94
+ return buildIdsSorted.length ? buildIdsSorted[buildIdsSorted.length - 1] : null;
95
+ }
78
96
  return null;
79
97
  }
80
- if (driverName === utils_1.Driver.CHROMEDRIVER || driverName === utils_1.Driver.EDGEDRIVER) {
81
- const milestone = (0, utils_1.getMilestone)(browserVersion);
82
- const buildIds = getBinaryVersions(driverName, platform);
83
- const suitableBuildIds = buildIds.filter(buildId => buildId.startsWith(milestone));
98
+ getMatchedBrowserVersion(browserName, platform, browserVersion) {
99
+ const registryKey = getRegistryBinaryKey(browserName, platform);
100
+ if (!this.registry.binaries[registryKey]) {
101
+ return null;
102
+ }
103
+ let buildPrefix;
104
+ switch (browserName) {
105
+ case utils_1.Browser.CHROME:
106
+ buildPrefix = (0, utils_1.normalizeChromeVersion)(browserVersion);
107
+ break;
108
+ case utils_1.Browser.CHROMIUM:
109
+ buildPrefix = (0, utils_1.getMilestone)(browserVersion);
110
+ break;
111
+ case utils_1.Browser.FIREFOX:
112
+ buildPrefix = (0, utils_2.getFirefoxBuildId)(browserVersion);
113
+ break;
114
+ default:
115
+ return null;
116
+ }
117
+ const buildIds = this.getBinaryVersions(browserName, platform);
118
+ const suitableBuildIds = buildIds.filter(buildId => buildId.startsWith(buildPrefix));
84
119
  if (!suitableBuildIds.length) {
85
120
  return null;
86
121
  }
87
- return suitableBuildIds.sort(utils_1.semverVersionsComparator).pop();
122
+ const firefoxVersionComparator = (a, b) => {
123
+ a = a.slice(a.indexOf("_") + 1);
124
+ b = b.slice(b.indexOf("_") + 1);
125
+ // Firefox has versions like "stable_131.0a1" and "stable_129.0b9"
126
+ // Parsing raw numbers as hex values is needed in order to distinguish "129.0b9" and "129.0b7" for example
127
+ return parseInt(a.replace(".", ""), 16) - parseInt(b.replace(".", ""), 16);
128
+ };
129
+ const comparator = browserName === utils_1.Browser.FIREFOX ? firefoxVersionComparator : utils_1.semverVersionsComparator;
130
+ const suitableBuildIdsSorted = suitableBuildIds.sort(comparator);
131
+ return suitableBuildIdsSorted[suitableBuildIdsSorted.length - 1];
88
132
  }
89
- if (driverName === utils_1.Driver.GECKODRIVER) {
90
- const buildIds = Object.keys(registry[registryKey]);
91
- const buildIdsSorted = buildIds.sort(utils_1.semverVersionsComparator);
92
- return buildIdsSorted.length ? buildIdsSorted[buildIdsSorted.length - 1] : null;
133
+ async installBinary(name, platform, version, installFn) {
134
+ const registryKey = getRegistryBinaryKey(name, platform);
135
+ if (this.hasBinaryVersion(name, platform, version)) {
136
+ return this.getBinaryPath(name, platform, version);
137
+ }
138
+ (0, utils_1.browserInstallerDebug)(`installing '${name}@${version}' on '${platform}'`);
139
+ const progressBar = await getCliProgressBar();
140
+ const originalDownloadProgressCallback = progressBar.register(name, version);
141
+ const downloadProgressCallback = (...args) => {
142
+ logDownloadingBrowsersWarningOnce();
143
+ return originalDownloadProgressCallback(...args);
144
+ };
145
+ const installPromise = installFn(downloadProgressCallback)
146
+ .then(executablePath => {
147
+ this.addBinaryToRegistry(name, platform, version, executablePath);
148
+ return executablePath;
149
+ })
150
+ .catch(err => {
151
+ progressBar?.stop();
152
+ throw err;
153
+ });
154
+ this.registry.binaries[registryKey] ||= {};
155
+ this.registry.binaries[registryKey][version] = installPromise;
156
+ return installPromise;
93
157
  }
94
- return null;
95
- };
96
- exports.getMatchedDriverVersion = getMatchedDriverVersion;
97
- const getMatchedBrowserVersion = (browserName, platform, browserVersion) => {
98
- const registryKey = getRegistryKey(browserName, platform);
99
- if (!registry[registryKey]) {
100
- return null;
158
+ async installOsPackages(osName, version, installFn) {
159
+ const registryKey = getRegistryOsPackagesKey(osName, version);
160
+ if (this.hasOsPackages(osName, version)) {
161
+ return this.getOsPackagesPath(osName, version);
162
+ }
163
+ (0, utils_1.browserInstallerDebug)(`installing os packages for '${osName}@${version}'`);
164
+ logDownloadingOsPackagesWarningOnce(osName);
165
+ const progressBar = await getCliProgressBar();
166
+ const downloadProgressCallback = progressBar.register(`extra packages for ${osName}`, version);
167
+ const installPromise = installFn(downloadProgressCallback)
168
+ .then(packagesPath => {
169
+ this.addOsPackageToRegistry(osName, version, packagesPath);
170
+ return packagesPath;
171
+ })
172
+ .catch(err => {
173
+ progressBar.stop();
174
+ throw err;
175
+ });
176
+ this.registry.osPackages[registryKey] = installPromise;
177
+ return installPromise;
101
178
  }
102
- let buildPrefix;
103
- switch (browserName) {
104
- case utils_1.Browser.CHROME:
105
- buildPrefix = (0, utils_1.normalizeChromeVersion)(browserVersion);
106
- break;
107
- case utils_1.Browser.CHROMIUM:
108
- buildPrefix = (0, utils_1.getMilestone)(browserVersion);
109
- break;
110
- case utils_1.Browser.FIREFOX:
111
- buildPrefix = (0, utils_2.getFirefoxBuildId)(browserVersion);
112
- break;
113
- default:
114
- return null;
179
+ readRegistry() {
180
+ const registry = fs_extra_1.default.existsSync(this.registryPath)
181
+ ? fs_extra_1.default.readJSONSync(this.registryPath)
182
+ : {};
183
+ registry.binaries ||= {};
184
+ registry.osPackages ||= {};
185
+ registry.meta ||= { version: 1 };
186
+ return registry;
115
187
  }
116
- const buildIds = getBinaryVersions(browserName, platform);
117
- const suitableBuildIds = buildIds.filter(buildId => buildId.startsWith(buildPrefix));
118
- if (!suitableBuildIds.length) {
119
- return null;
188
+ writeRegistry() {
189
+ const replacer = (_, value) => {
190
+ if (value.then) {
191
+ return;
192
+ }
193
+ return value;
194
+ };
195
+ fs_extra_1.default.outputJSONSync(this.registryPath, this.registry, { replacer });
120
196
  }
121
- const firefoxVersionComparator = (a, b) => {
122
- a = a.slice(a.indexOf("_") + 1);
123
- b = b.slice(b.indexOf("_") + 1);
124
- // Firefox has versions like "stable_131.0a1" and "stable_129.0b9"
125
- // Parsing raw numbers as hex values is needed in order to distinguish "129.0b9" and "129.0b7" for example
126
- return parseInt(a.replace(".", ""), 16) - parseInt(b.replace(".", ""), 16);
127
- };
128
- const comparator = browserName === utils_1.Browser.FIREFOX ? firefoxVersionComparator : utils_1.semverVersionsComparator;
129
- const suitableBuildIdsSorted = suitableBuildIds.sort(comparator);
130
- return suitableBuildIdsSorted[suitableBuildIdsSorted.length - 1];
131
- };
132
- exports.getMatchedBrowserVersion = getMatchedBrowserVersion;
133
- const installBinary = async (name, platform, version, installFn) => {
134
- const registryKey = getRegistryKey(name, platform);
135
- if (hasBinaryVersion(name, platform, version)) {
136
- return (0, exports.getBinaryPath)(name, platform, version);
197
+ addBinaryToRegistry(name, platform, version, absoluteBinaryPath) {
198
+ const registryKey = getRegistryBinaryKey(name, platform);
199
+ const relativePath = path_1.default.relative(this.registryPath, absoluteBinaryPath);
200
+ this.registry.binaries[registryKey] ||= {};
201
+ this.registry.binaries[registryKey][version] = relativePath;
202
+ (0, utils_1.browserInstallerDebug)(`adding '${name}@${version}' on '${platform}' to registry at ${relativePath}`);
203
+ this.writeRegistry();
137
204
  }
138
- (0, utils_1.browserInstallerDebug)(`installing '${name}@${version}' on '${platform}'`);
139
- if (!cliProgressBar) {
140
- const { createBrowserDownloadProgressBar } = await Promise.resolve().then(() => __importStar(require("./cli-progress-bar")));
141
- cliProgressBar = createBrowserDownloadProgressBar();
205
+ addOsPackageToRegistry(name, version, absolutePackagesDirPath) {
206
+ const registryKey = getRegistryOsPackagesKey(name, version);
207
+ const relativePath = path_1.default.relative(this.registryPath, absolutePackagesDirPath);
208
+ this.registry.osPackages[registryKey] = relativePath;
209
+ (0, utils_1.browserInstallerDebug)(`adding os packages for '${name}@${version}' to registry at ${relativePath}`);
210
+ this.writeRegistry();
142
211
  }
143
- const originalDownloadProgressCallback = cliProgressBar.register(name, version);
144
- const downloadProgressCallback = (...args) => {
145
- if (!warnedFirstTimeInstall) {
146
- logger_1.default.warn("Downloading Testplane browsers");
147
- logger_1.default.warn("Note: this is one-time action. It may take a while...");
148
- warnedFirstTimeInstall = true;
212
+ getBinaryVersions(name, platform) {
213
+ const registryKey = getRegistryBinaryKey(name, platform);
214
+ if (!this.registry.binaries[registryKey]) {
215
+ return [];
149
216
  }
150
- return originalDownloadProgressCallback(...args);
151
- };
152
- const installPromise = installFn(downloadProgressCallback).then(executablePath => {
153
- addBinaryToRegistry(name, platform, version, executablePath);
154
- return executablePath;
155
- });
156
- registry[registryKey] ||= {};
157
- registry[registryKey][version] = installPromise;
158
- return installPromise;
159
- };
160
- exports.installBinary = installBinary;
217
+ return Object.keys(this.registry.binaries[registryKey]);
218
+ }
219
+ hasBinaryVersion(name, platform, version) {
220
+ return this.getBinaryVersions(name, platform).includes(version);
221
+ }
222
+ }
223
+ exports.default = new Registry();
161
224
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser-installer/registry/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/browser-installer/registry/index.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  /// <reference types="node" />
3
3
  /// <reference types="node" />
4
4
  import type { ChildProcess } from "child_process";
5
- import { type SupportedDriver } from "./utils";
6
- export declare const runBrowserDriver: (driverName: SupportedDriver, browserVersion: string, { debug }?: {
5
+ import { type SupportedBrowser } from "./utils";
6
+ export declare const runBrowserDriver: (browserName: SupportedBrowser, browserVersion: string, { debug }?: {
7
7
  debug?: boolean | undefined;
8
8
  }) => Promise<{
9
9
  gridUrl: string;
@@ -24,19 +24,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.runBrowserDriver = void 0;
27
+ const install_1 = require("./install");
27
28
  const utils_1 = require("./utils");
28
- const runBrowserDriver = async (driverName, browserVersion, { debug = false } = {}) => {
29
- switch (driverName) {
30
- case utils_1.Driver.CHROMEDRIVER:
29
+ const runBrowserDriver = async (browserName, browserVersion, { debug = false } = {}) => {
30
+ const installBrowserOpts = { shouldInstallWebDriver: true, shouldInstallUbuntuPackages: true };
31
+ await (0, install_1.installBrowser)(browserName, browserVersion, installBrowserOpts);
32
+ switch (browserName) {
33
+ case utils_1.Browser.CHROME:
34
+ case utils_1.Browser.CHROMIUM:
31
35
  return Promise.resolve().then(() => __importStar(require("./chrome"))).then(module => module.runChromeDriver(browserVersion, { debug }));
32
- case utils_1.Driver.EDGEDRIVER:
33
- return Promise.resolve().then(() => __importStar(require("./edge"))).then(module => module.runEdgeDriver(browserVersion, { debug }));
34
- case utils_1.Driver.GECKODRIVER:
36
+ case utils_1.Browser.FIREFOX:
35
37
  return Promise.resolve().then(() => __importStar(require("./firefox"))).then(module => module.runGeckoDriver(browserVersion, { debug }));
36
- case utils_1.Driver.SAFARIDRIVER:
38
+ case utils_1.Browser.EDGE:
39
+ return Promise.resolve().then(() => __importStar(require("./edge"))).then(module => module.runEdgeDriver(browserVersion, { debug }));
40
+ case utils_1.Browser.SAFARI:
37
41
  return Promise.resolve().then(() => __importStar(require("./safari"))).then(module => module.runSafariDriver({ debug }));
38
42
  default:
39
- throw new Error(`Invalid driver name: ${driverName}. Expected one of: ${Object.values(utils_1.Driver).join(", ")}`);
43
+ throw new Error(`Invalid browser: ${browserName}. Expected one of: ${Object.values(utils_1.Browser).join(", ")}`);
40
44
  }
41
45
  };
42
46
  exports.runBrowserDriver = runBrowserDriver;
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/browser-installer/run.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,mCAAuD;AAEhD,MAAM,gBAAgB,GAAG,KAAK,EACjC,UAA2B,EAC3B,cAAsB,EACtB,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAC2C,EAAE;IACnE,QAAQ,UAAU,EAAE,CAAC;QACjB,KAAK,cAAM,CAAC,YAAY;YACpB,OAAO,kDAAO,UAAU,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChG,KAAK,cAAM,CAAC,UAAU;YAClB,OAAO,kDAAO,QAAQ,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5F,KAAK,cAAM,CAAC,WAAW;YACnB,OAAO,kDAAO,WAAW,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChG,KAAK,cAAM,CAAC,YAAY;YACpB,OAAO,kDAAO,UAAU,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChF;YACI,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,sBAAsB,MAAM,CAAC,MAAM,CAAC,cAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpH,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,gBAAgB,oBAiB3B"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/browser-installer/run.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAA2C;AAC3C,mCAAyD;AAElD,MAAM,gBAAgB,GAAG,KAAK,EACjC,WAA6B,EAC7B,cAAsB,EACtB,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,EAAE,EAC2C,EAAE;IACnE,MAAM,kBAAkB,GAAG,EAAE,sBAAsB,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,CAAC;IAE/F,MAAM,IAAA,wBAAc,EAAC,WAAW,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAEtE,QAAQ,WAAW,EAAE,CAAC;QAClB,KAAK,eAAO,CAAC,MAAM,CAAC;QACpB,KAAK,eAAO,CAAC,QAAQ;YACjB,OAAO,kDAAO,UAAU,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChG,KAAK,eAAO,CAAC,OAAO;YAChB,OAAO,kDAAO,WAAW,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChG,KAAK,eAAO,CAAC,IAAI;YACb,OAAO,kDAAO,QAAQ,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5F,KAAK,eAAO,CAAC,MAAM;YACf,OAAO,kDAAO,UAAU,IAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAChF;YACI,MAAM,IAAI,KAAK,CAAC,oBAAoB,WAAW,sBAAsB,MAAM,CAAC,MAAM,CAAC,eAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClH,CAAC;AACL,CAAC,CAAC;AAtBW,QAAA,gBAAgB,oBAsB3B"}
@@ -0,0 +1,4 @@
1
+ import { type DownloadProgressCallback } from "../utils";
2
+ export declare const installUbuntuPackages: (packages: string[], destination: string, { downloadProgressCallback }: {
3
+ downloadProgressCallback: DownloadProgressCallback;
4
+ }) => Promise<void>;
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.installUbuntuPackages = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const os_1 = __importDefault(require("os"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const fs_extra_1 = __importDefault(require("fs-extra"));
11
+ const child_process_1 = require("child_process");
12
+ const utils_1 = require("./utils");
13
+ const utils_2 = require("../utils");
14
+ const constants_1 = require("../constants");
15
+ /** @link https://manpages.org/apt-cache/8 */
16
+ const resolveTransitiveDependencies = async (directDependencies) => {
17
+ await Promise.all(["apt-cache", "grep", "sort"].map(utils_1.ensureUnixBinaryExists));
18
+ const aptDependsArgs = [
19
+ "recurse",
20
+ "no-recommends",
21
+ "no-suggests",
22
+ "no-conflicts",
23
+ "no-breaks",
24
+ "no-replaces",
25
+ "no-enhances",
26
+ ]
27
+ .map(arg => `--${arg}`)
28
+ .join(" ");
29
+ const listDependencies = (dependencyName) => new Promise((resolve, reject) => {
30
+ (0, child_process_1.exec)(`apt-cache depends ${aptDependsArgs} "${dependencyName}" | grep "^\\w" | sort -u`, (err, result) => {
31
+ if (err) {
32
+ reject(err);
33
+ }
34
+ else {
35
+ resolve(result.split(/\s+/).filter(Boolean));
36
+ }
37
+ });
38
+ });
39
+ const fullDependencies = await Promise.all(directDependencies.map(listDependencies));
40
+ const rawDependencies = lodash_1.default.flatten(fullDependencies);
41
+ return lodash_1.default.uniq(rawDependencies);
42
+ };
43
+ /** @link https://manpages.org/apt/8 */
44
+ const filterNotExistingDependencies = async (dependencies) => {
45
+ if (!dependencies.length) {
46
+ return [];
47
+ }
48
+ await (0, utils_1.ensureUnixBinaryExists)("apt");
49
+ const existingDependencies = await new Promise((resolve, reject) => {
50
+ (0, child_process_1.exec)(`apt list ${dependencies.join(" ")} --installed`, (err, result) => {
51
+ if (err) {
52
+ reject(err);
53
+ }
54
+ else {
55
+ const lines = result.split("\n");
56
+ const existingDependencies = lines
57
+ .map(line => {
58
+ const slashIndex = line.indexOf("/");
59
+ if (slashIndex === -1) {
60
+ return "";
61
+ }
62
+ return line.slice(0, slashIndex);
63
+ })
64
+ .filter(Boolean);
65
+ resolve(existingDependencies);
66
+ }
67
+ });
68
+ });
69
+ return lodash_1.default.difference(dependencies, existingDependencies);
70
+ };
71
+ /** @link https://manpages.org/apt-get/8 */
72
+ const downloadUbuntuPackages = async (dependencies, targetDir) => {
73
+ if (!dependencies.length) {
74
+ return;
75
+ }
76
+ await (0, utils_1.ensureUnixBinaryExists)("apt-get");
77
+ return new Promise((resolve, reject) => {
78
+ (0, child_process_1.exec)(`apt-get download ${dependencies.join(" ")}`, { cwd: targetDir }, err => {
79
+ if (err) {
80
+ reject(err);
81
+ }
82
+ else {
83
+ resolve();
84
+ }
85
+ });
86
+ });
87
+ };
88
+ /** @link https://manpages.org/dpkg */
89
+ const unpackUbuntuPackages = async (packagesDir, destination) => {
90
+ await Promise.all([(0, utils_1.ensureUnixBinaryExists)("dpkg"), fs_extra_1.default.ensureDir(destination)]);
91
+ return new Promise((resolve, reject) => {
92
+ (0, child_process_1.exec)(`for pkg in *.deb; do dpkg -x $pkg ${destination}; done`, { cwd: packagesDir }, err => {
93
+ if (err) {
94
+ reject(err);
95
+ }
96
+ else {
97
+ resolve();
98
+ }
99
+ });
100
+ });
101
+ };
102
+ const installUbuntuPackages = async (packages, destination, { downloadProgressCallback }) => {
103
+ if (!packages) {
104
+ (0, utils_2.browserInstallerDebug)(`There are no ubuntu packages to install`);
105
+ return;
106
+ }
107
+ const withRecursiveDependencies = await resolveTransitiveDependencies(packages);
108
+ downloadProgressCallback(40);
109
+ (0, utils_2.browserInstallerDebug)(`Resolved direct packages to ${withRecursiveDependencies.length} dependencies`);
110
+ const dependenciesToDownload = await filterNotExistingDependencies(withRecursiveDependencies);
111
+ downloadProgressCallback(70);
112
+ const missingPkgs = constants_1.MANDATORY_UBUNTU_PACKAGES_TO_BE_INSTALLED.filter(pkg => dependenciesToDownload.includes(pkg));
113
+ if (missingPkgs.length) {
114
+ throw new Error([
115
+ "Missing some packages, which needs to be installed manually",
116
+ `Use \`apt-get install ${missingPkgs.join(" ")}\` to install them`,
117
+ `Then run "testplane install-deps" again\n`,
118
+ ].join("\n"));
119
+ }
120
+ (0, utils_2.browserInstallerDebug)(`There are ${dependenciesToDownload.length} deb packages to download`);
121
+ if (!dependenciesToDownload.length) {
122
+ return;
123
+ }
124
+ const tmpPackagesDir = await fs_extra_1.default.mkdtemp(path_1.default.join(os_1.default.tmpdir(), "testplane-ubuntu-apt-packages"));
125
+ await downloadUbuntuPackages(dependenciesToDownload, tmpPackagesDir);
126
+ downloadProgressCallback(100);
127
+ (0, utils_2.browserInstallerDebug)(`Downloaded ${dependenciesToDownload.length} deb packages`);
128
+ await unpackUbuntuPackages(tmpPackagesDir, destination);
129
+ (0, utils_2.browserInstallerDebug)(`Unpacked ${dependenciesToDownload.length} deb packages`);
130
+ };
131
+ exports.installUbuntuPackages = installUbuntuPackages;
132
+ //# sourceMappingURL=apt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apt.js","sourceRoot":"","sources":["../../../../src/browser-installer/ubuntu-packages/apt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ [
2
+ "libasound2",
3
+ "libatk-bridge2.0-0",
4
+ "libatk1.0-0",
5
+ "libatspi2.0-0",
6
+ "libc6",
7
+ "libcairo2",
8
+ "libcups2",
9
+ "libdbus-1-3",
10
+ "libdbus-glib-1-2",
11
+ "libdrm2",
12
+ "libexpat1",
13
+ "libgbm1",
14
+ "libgcc-s1",
15
+ "libgdk-pixbuf2.0-0",
16
+ "libglib2.0-0",
17
+ "libgtk-3-0",
18
+ "libnspr4",
19
+ "libnss3",
20
+ "libpango-1.0-0",
21
+ "libpangocairo-1.0-0",
22
+ "libstdc++6",
23
+ "libudev1",
24
+ "libuuid1",
25
+ "libx11-6",
26
+ "libx11-xcb1",
27
+ "libxcb-dri3-0",
28
+ "libxcb1",
29
+ "libxcomposite1",
30
+ "libxcursor1",
31
+ "libxdamage1",
32
+ "libxext6",
33
+ "libxfixes3",
34
+ "libxi6",
35
+ "libxkbcommon0",
36
+ "libxrandr2",
37
+ "libxrender1",
38
+ "libxshmfence1",
39
+ "libxss1",
40
+ "libxt6",
41
+ "libxtst6"
42
+ ]