appium-xcuitest-driver 10.14.13 → 10.15.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.
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.RealDevice = exports.IO_TIMEOUT_MS = void 0;
39
+ exports.RealDevice = exports.MAX_IO_CHUNK_SIZE = exports.IO_TIMEOUT_MS = void 0;
40
40
  exports.pullFile = pullFile;
41
41
  exports.pullFolder = pullFolder;
42
42
  exports.pushFile = pushFile;
@@ -58,7 +58,7 @@ const DEFAULT_APP_INSTALLATION_TIMEOUT_MS = 8 * 60 * 1000;
58
58
  exports.IO_TIMEOUT_MS = 4 * 60 * 1000;
59
59
  // Mobile devices use NAND memory modules for the storage,
60
60
  // and the parallelism there is not as performant as on regular SSDs
61
- const MAX_IO_CHUNK_SIZE = 8;
61
+ exports.MAX_IO_CHUNK_SIZE = 8;
62
62
  const APPLICATION_INSTALLED_NOTIFICATION = 'com.apple.mobile.application_installed';
63
63
  const APPLICATION_NOTIFICATION_TIMEOUT_MS = 30 * 1000;
64
64
  const INSTALLATION_STAGING_DIR = 'PublicStaging';
@@ -66,85 +66,42 @@ const INSTALLATION_STAGING_DIR = 'PublicStaging';
66
66
  /**
67
67
  * Retrieve a file from a real device
68
68
  *
69
- * @param afcService Apple File Client service instance from
70
- * 'appium-ios-device' module
69
+ * @param client AFC client instance
71
70
  * @param remotePath Relative path to the file on the device
72
71
  * @returns The file content as a buffer
73
72
  */
74
- async function pullFile(afcService, remotePath) {
75
- const stream = await afcService.createReadStream(remotePath, { autoDestroy: true });
76
- const pullPromise = new bluebird_1.default((resolve, reject) => {
77
- stream.on('close', resolve);
78
- stream.on('error', reject);
79
- }).timeout(exports.IO_TIMEOUT_MS);
80
- const buffers = [];
81
- stream.on('data', (data) => buffers.push(data));
82
- await pullPromise;
83
- return Buffer.concat(buffers);
73
+ async function pullFile(client, remotePath) {
74
+ return await bluebird_1.default.resolve(client.getFileContents(remotePath)).timeout(exports.IO_TIMEOUT_MS, `Timed out after ${exports.IO_TIMEOUT_MS}ms while pulling file from '${remotePath}'`);
84
75
  }
85
76
  /**
86
77
  * Retrieve a folder from a real device
87
78
  *
88
- * @param afcService Apple File Client service instance from
89
- * 'appium-ios-device' module
79
+ * @param client AFC client instance
90
80
  * @param remoteRootPath Relative path to the folder on the device
91
81
  * @returns The folder content as a zipped base64-encoded buffer
92
82
  */
93
- async function pullFolder(afcService, remoteRootPath) {
83
+ async function pullFolder(client, remoteRootPath) {
94
84
  const tmpFolder = await support_1.tempDir.openDir();
95
85
  try {
96
86
  let localTopItem = null;
97
87
  let countFilesSuccess = 0;
98
- let countFilesFail = 0;
99
88
  let countFolders = 0;
100
- const pullPromises = [];
101
- await afcService.walkDir(remoteRootPath, true, async (remotePath, isDir) => {
102
- const localPath = path_1.default.join(tmpFolder, remotePath);
103
- const dirname = isDir ? localPath : path_1.default.dirname(localPath);
104
- if (!(await folderExists(dirname))) {
105
- await (0, support_1.mkdirp)(dirname);
106
- }
107
- if (!localTopItem || localPath.split(path_1.default.sep).length < localTopItem.split(path_1.default.sep).length) {
108
- localTopItem = localPath;
109
- }
110
- if (isDir) {
111
- ++countFolders;
112
- return;
113
- }
114
- const readStream = await afcService.createReadStream(remotePath, { autoDestroy: true });
115
- const writeStream = support_1.fs.createWriteStream(localPath, { autoClose: true });
116
- pullPromises.push(new bluebird_1.default((resolve) => {
117
- writeStream.on('close', () => {
89
+ await client.pull(remoteRootPath, tmpFolder, {
90
+ recursive: true,
91
+ overwrite: true,
92
+ onEntry: async (remotePath, localPath, isDirectory) => {
93
+ if (!localTopItem || localPath.split(path_1.default.sep).length < localTopItem.split(path_1.default.sep).length) {
94
+ localTopItem = localPath;
95
+ }
96
+ if (isDirectory) {
97
+ ++countFolders;
98
+ }
99
+ else {
118
100
  ++countFilesSuccess;
119
- resolve();
120
- });
121
- const onStreamingError = (e) => {
122
- readStream.unpipe(writeStream);
123
- logger_1.log.warn(`Cannot pull '${remotePath}' to '${localPath}'. ` +
124
- `The file will be skipped. Original error: ${e.message}`);
125
- ++countFilesFail;
126
- resolve();
127
- };
128
- writeStream.on('error', onStreamingError);
129
- readStream.on('error', onStreamingError);
130
- }).timeout(exports.IO_TIMEOUT_MS));
131
- readStream.pipe(writeStream);
132
- if (pullPromises.length >= MAX_IO_CHUNK_SIZE) {
133
- await bluebird_1.default.any(pullPromises);
134
- for (let i = pullPromises.length - 1; i >= 0; i--) {
135
- if (pullPromises[i].isFulfilled()) {
136
- pullPromises.splice(i, 1);
137
- }
138
101
  }
139
- }
102
+ },
140
103
  });
141
- // Wait for the rest of files to be pulled
142
- if (!lodash_1.default.isEmpty(pullPromises)) {
143
- await bluebird_1.default.all(pullPromises);
144
- }
145
- logger_1.log.info(`Pulled ${support_1.util.pluralize('file', countFilesSuccess, true)} out of ` +
146
- `${countFilesSuccess + countFilesFail} and ${support_1.util.pluralize('folder', countFolders, true)} ` +
147
- `from '${remoteRootPath}'`);
104
+ logger_1.log.info(`Pulled ${support_1.util.pluralize('file', countFilesSuccess, true)} and ${support_1.util.pluralize('folder', countFolders, true)} from '${remoteRootPath}'`);
148
105
  return await support_1.zip.toInMemoryZip(localTopItem ? path_1.default.dirname(localTopItem) : tmpFolder, {
149
106
  encodeToBase64: true,
150
107
  });
@@ -156,55 +113,24 @@ async function pullFolder(afcService, remoteRootPath) {
156
113
  /**
157
114
  * Pushes a file to a real device
158
115
  *
159
- * @param afcService afcService Apple File Client service instance from
160
- * 'appium-ios-device' module
116
+ * @param client AFC client instance
161
117
  * @param localPathOrPayload Either full path to the source file
162
118
  * or a buffer payload to be written into the remote destination
163
119
  * @param remotePath Relative path to the file on the device. The remote
164
120
  * folder structure is created automatically if necessary.
165
121
  * @param opts Push file options
166
122
  */
167
- async function pushFile(afcService, localPathOrPayload, remotePath, opts = {}) {
123
+ async function pushFile(client, localPathOrPayload, remotePath, opts = {}) {
168
124
  const { timeoutMs = exports.IO_TIMEOUT_MS } = opts;
169
125
  const timer = new support_1.timing.Timer().start();
170
- await remoteMkdirp(afcService, path_1.default.dirname(remotePath));
171
- const source = Buffer.isBuffer(localPathOrPayload)
172
- ? localPathOrPayload
173
- : support_1.fs.createReadStream(localPathOrPayload, { autoClose: true });
174
- const writeStream = await afcService.createWriteStream(remotePath, {
175
- autoDestroy: true,
176
- });
177
- writeStream.on('finish', writeStream.destroy);
178
- let pushError = null;
179
- const filePushPromise = new bluebird_1.default((resolve, reject) => {
180
- writeStream.on('close', () => {
181
- if (pushError) {
182
- reject(pushError);
183
- }
184
- else {
185
- resolve();
186
- }
187
- });
188
- const onStreamError = (e) => {
189
- if (!Buffer.isBuffer(source)) {
190
- source.unpipe(writeStream);
191
- }
192
- logger_1.log.debug(e);
193
- pushError = e;
194
- };
195
- writeStream.on('error', onStreamError);
196
- if (!Buffer.isBuffer(source)) {
197
- source.on('error', onStreamError);
198
- }
199
- });
200
- if (Buffer.isBuffer(source)) {
201
- writeStream.write(source);
202
- writeStream.end();
203
- }
204
- else {
205
- source.pipe(writeStream);
206
- }
207
- await filePushPromise.timeout(Math.max(timeoutMs, 60000));
126
+ await remoteMkdirp(client, path_1.default.dirname(remotePath));
127
+ // AfcClient handles the branching internally
128
+ const pushPromise = Buffer.isBuffer(localPathOrPayload)
129
+ ? client.setFileContents(remotePath, localPathOrPayload)
130
+ : client.writeFromStream(remotePath, support_1.fs.createReadStream(localPathOrPayload, { autoClose: true }));
131
+ // Wrap with timeout
132
+ const actualTimeout = Math.max(timeoutMs, 60000);
133
+ await bluebird_1.default.resolve(pushPromise).timeout(actualTimeout, `Timed out after ${actualTimeout}ms while pushing file to '${remotePath}'`);
208
134
  const fileSize = Buffer.isBuffer(localPathOrPayload)
209
135
  ? localPathOrPayload.length
210
136
  : (await support_1.fs.stat(localPathOrPayload)).size;
@@ -214,14 +140,13 @@ async function pushFile(afcService, localPathOrPayload, remotePath, opts = {}) {
214
140
  /**
215
141
  * Pushes a folder to a real device
216
142
  *
217
- * @param afcService Apple File Client service instance from
218
- * 'appium-ios-device' module
143
+ * @param client AFC client instance
219
144
  * @param srcRootPath The full path to the source folder
220
145
  * @param dstRootPath The relative path to the destination folder. The folder
221
146
  * will be deleted if already exists.
222
147
  * @param opts Push folder options
223
148
  */
224
- async function pushFolder(afcService, srcRootPath, dstRootPath, opts = {}) {
149
+ async function pushFolder(client, srcRootPath, dstRootPath, opts = {}) {
225
150
  const { timeoutMs = exports.IO_TIMEOUT_MS, enableParallelPush = false } = opts;
226
151
  const timer = new support_1.timing.Timer().start();
227
152
  const allItems = /** @type {import('path-scurry').Path[]} */ (
@@ -242,17 +167,16 @@ async function pushFolder(afcService, srcRootPath, dstRootPath, opts = {}) {
242
167
  .map((x) => x.relative());
243
168
  logger_1.log.debug(`Got ${support_1.util.pluralize('folder', foldersToPush.length, true)} and ` +
244
169
  `${support_1.util.pluralize('file', filesToPush.length, true)} to push`);
245
- // create the folder structure first
170
+ // Create the folder structure
246
171
  try {
247
- await afcService.deleteDirectory(dstRootPath);
172
+ await client.deleteDirectory(dstRootPath);
248
173
  }
249
174
  catch { }
250
- await afcService.createDirectory(dstRootPath);
175
+ await client.createDirectory(dstRootPath);
251
176
  for (const relativeFolderPath of foldersToPush) {
252
- // createDirectory does not accept folder names ending with a path separator
253
177
  const absoluteFolderPath = lodash_1.default.trimEnd(path_1.default.join(dstRootPath, relativeFolderPath), path_1.default.sep);
254
178
  if (absoluteFolderPath) {
255
- await afcService.createDirectory(absoluteFolderPath);
179
+ await client.createDirectory(absoluteFolderPath);
256
180
  }
257
181
  }
258
182
  // do not forget about the root folder
@@ -262,38 +186,17 @@ async function pushFolder(afcService, srcRootPath, dstRootPath, opts = {}) {
262
186
  const absoluteSourcePath = path_1.default.join(srcRootPath, relativePath);
263
187
  const readStream = support_1.fs.createReadStream(absoluteSourcePath, { autoClose: true });
264
188
  const absoluteDestinationPath = path_1.default.join(dstRootPath, relativePath);
265
- const writeStream = await afcService.createWriteStream(absoluteDestinationPath, {
266
- autoDestroy: true,
267
- });
268
- writeStream.on('finish', writeStream.destroy);
269
- let pushError = null;
270
- const filePushPromise = new bluebird_1.default((resolve, reject) => {
271
- writeStream.on('close', () => {
272
- if (pushError) {
273
- reject(pushError);
274
- }
275
- else {
276
- resolve();
277
- }
278
- });
279
- const onStreamError = (e) => {
280
- readStream.unpipe(writeStream);
281
- logger_1.log.debug(e);
282
- pushError = e;
283
- };
284
- writeStream.on('error', onStreamError);
285
- readStream.on('error', onStreamError);
286
- });
287
- readStream.pipe(writeStream);
288
- await filePushPromise.timeout(Math.max(timeoutMs - timer.getDuration().asMilliSeconds, 60000));
189
+ const pushPromise = client.writeFromStream(absoluteDestinationPath, readStream);
190
+ const actualTimeout = Math.max(timeoutMs - timer.getDuration().asMilliSeconds, 60000);
191
+ await bluebird_1.default.resolve(pushPromise).timeout(actualTimeout, `Timed out after ${actualTimeout}ms while pushing '${relativePath}' to '${absoluteDestinationPath}'`);
289
192
  };
290
193
  if (enableParallelPush) {
291
- logger_1.log.debug(`Proceeding to parallel files push (max ${MAX_IO_CHUNK_SIZE} writers)`);
194
+ logger_1.log.debug(`Proceeding to parallel files push (max ${exports.MAX_IO_CHUNK_SIZE} writers)`);
292
195
  const pushPromises = [];
293
196
  for (const relativeFilePath of filesToPush) {
294
197
  pushPromises.push(bluebird_1.default.resolve(_pushFile(relativeFilePath)));
295
198
  // keep the push queue filled
296
- if (pushPromises.length >= MAX_IO_CHUNK_SIZE) {
199
+ if (pushPromises.length >= exports.MAX_IO_CHUNK_SIZE) {
297
200
  await bluebird_1.default.any(pushPromises);
298
201
  const elapsedMs = timer.getDuration().asMilliSeconds;
299
202
  if (elapsedMs > timeoutMs) {
@@ -699,43 +602,27 @@ function isPreferDevicectlEnabled() {
699
602
  return ['yes', 'true', '1'].includes(lodash_1.default.toLower(process.env.APPIUM_XCUITEST_PREFER_DEVICECTL));
700
603
  }
701
604
  ;
702
- /**
703
- * Checks a presence of a local folder.
704
- *
705
- * @param folderPath Full path to the local folder
706
- * @returns True if the folder exists and is actually a folder
707
- */
708
- async function folderExists(folderPath) {
709
- try {
710
- return (await support_1.fs.stat(folderPath)).isDirectory();
711
- }
712
- catch {
713
- return false;
714
- }
715
- }
716
605
  /**
717
606
  * Creates remote folder path recursively. Noop if the given path
718
607
  * already exists
719
608
  *
720
- * @param afcService Apple File Client service instance from
721
- * 'appium-ios-device' module
609
+ * @param client AFC client instance
722
610
  * @param remoteRoot The relative path to the remote folder structure
723
611
  * to be created
724
612
  */
725
- async function remoteMkdirp(afcService, remoteRoot) {
613
+ async function remoteMkdirp(client, remoteRoot) {
726
614
  if (remoteRoot === '.' || remoteRoot === '/') {
727
615
  return;
728
616
  }
729
617
  try {
730
- await afcService.listDirectory(remoteRoot);
618
+ await client.listDirectory(remoteRoot);
731
619
  return;
732
620
  }
733
621
  catch {
734
- // This means that the directory is missing and we got an object not found error.
735
- // Therefore, we are going to the parent
736
- await remoteMkdirp(afcService, path_1.default.dirname(remoteRoot));
622
+ // Directory is missing, create parent first
623
+ await remoteMkdirp(client, path_1.default.dirname(remoteRoot));
737
624
  }
738
- await afcService.createDirectory(remoteRoot);
625
+ await client.createDirectory(remoteRoot);
739
626
  }
740
627
  //#endregion
741
628
  //# sourceMappingURL=real-device-management.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"real-device-management.js","sourceRoot":"","sources":["../../../lib/device/real-device-management.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"real-device-management.js","sourceRoot":"","sources":["../../../lib/device/real-device-management.ts"],"names":[],"mappings":"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"}