react-native-ai-devtools 1.4.10 → 1.4.12
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.
- package/build/__tests__/helpers/tap-test-helpers.d.ts.map +1 -1
- package/build/__tests__/helpers/tap-test-helpers.js +9 -4
- package/build/__tests__/helpers/tap-test-helpers.js.map +1 -1
- package/build/__tests__/integration/tap-strategies.test.js +64 -0
- package/build/__tests__/integration/tap-strategies.test.js.map +1 -1
- package/build/__tests__/unit/tap.test.js +122 -6
- package/build/__tests__/unit/tap.test.js.map +1 -1
- package/build/core/connection.d.ts.map +1 -1
- package/build/core/connection.js +9 -0
- package/build/core/connection.js.map +1 -1
- package/build/core/ios.d.ts.map +1 -1
- package/build/core/ios.js +21 -9
- package/build/core/ios.js.map +1 -1
- package/build/core/types.d.ts +1 -0
- package/build/core/types.d.ts.map +1 -1
- package/build/pro/screenshot-diff.d.ts.map +1 -1
- package/build/pro/screenshot-diff.js +2 -1
- package/build/pro/screenshot-diff.js.map +1 -1
- package/build/pro/tap.d.ts +3 -0
- package/build/pro/tap.d.ts.map +1 -1
- package/build/pro/tap.js +78 -40
- package/build/pro/tap.js.map +1 -1
- package/package.json +1 -1
package/build/pro/tap.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { connectedApps, imageBuffer } from "../core/state.js";
|
|
2
2
|
import { executeInApp } from "../core/executor.js";
|
|
3
3
|
import { pressElement } from "../core/executor.js";
|
|
4
|
-
import { iosTap, iosFindElement, iosScreenshot, getActiveOrBootedSimulatorUdid } from "../core/ios.js";
|
|
4
|
+
import { iosTap, iosFindElement, iosScreenshot, getActiveOrBootedSimulatorUdid, findSimulatorByName } from "../core/ios.js";
|
|
5
5
|
import { androidTap, androidFindElement, getDefaultAndroidDevice, androidScreenshot } from "../core/android.js";
|
|
6
6
|
import { compareScreenshots } from "./screenshot-diff.js";
|
|
7
7
|
import { scanMetroPorts, fetchDevices, selectMainDevice } from "../core/metro.js";
|
|
@@ -227,14 +227,17 @@ export function formatTapFailure(data) {
|
|
|
227
227
|
const warning = data.verification && !data.verification.meaningful
|
|
228
228
|
? "Tap executed but no visual change detected. The element may not exist at these coordinates. Examine the screenshot to verify and retry with adjusted coordinates."
|
|
229
229
|
: undefined;
|
|
230
|
+
const lastStrategy = data.attempted.length > 0 ? data.attempted[data.attempted.length - 1].strategy : undefined;
|
|
230
231
|
return {
|
|
231
232
|
success: false,
|
|
233
|
+
method: lastStrategy,
|
|
232
234
|
query: data.query,
|
|
233
235
|
screen: data.screen,
|
|
234
236
|
error: errorMsg,
|
|
235
237
|
attempted: data.attempted,
|
|
236
238
|
suggestion: data.suggestion,
|
|
237
239
|
matches: data.matches,
|
|
240
|
+
...(data.device && { device: data.device }),
|
|
238
241
|
...(data.verification && { verification: data.verification }),
|
|
239
242
|
...(data.screenshot && { screenshot: data.screenshot }),
|
|
240
243
|
...(warning && { warning }),
|
|
@@ -334,7 +337,7 @@ async function tryFiberAtDepth(query, index, maxTraversalDepth) {
|
|
|
334
337
|
};
|
|
335
338
|
}
|
|
336
339
|
}
|
|
337
|
-
async function tryAccessibilityStrategy(query, index, platform) {
|
|
340
|
+
async function tryAccessibilityStrategy(query, index, platform, udid) {
|
|
338
341
|
try {
|
|
339
342
|
const hasTestID = !!query.testID;
|
|
340
343
|
const hasText = !!query.text;
|
|
@@ -350,20 +353,20 @@ async function tryAccessibilityStrategy(query, index, platform) {
|
|
|
350
353
|
result = await iosFindElement({
|
|
351
354
|
identifier: query.testID,
|
|
352
355
|
index,
|
|
353
|
-
});
|
|
356
|
+
}, udid);
|
|
354
357
|
// Fall back to identifierContains if exact match fails
|
|
355
358
|
if (!result.success || !result.allMatches || result.allMatches.length === 0) {
|
|
356
359
|
result = await iosFindElement({
|
|
357
360
|
identifierContains: query.testID,
|
|
358
361
|
index,
|
|
359
|
-
});
|
|
362
|
+
}, udid);
|
|
360
363
|
}
|
|
361
364
|
// Last resort: try labelContains in case testID is reflected in label
|
|
362
365
|
if (!result.success || !result.allMatches || result.allMatches.length === 0) {
|
|
363
366
|
result = await iosFindElement({
|
|
364
367
|
labelContains: query.testID,
|
|
365
368
|
index,
|
|
366
|
-
});
|
|
369
|
+
}, udid);
|
|
367
370
|
}
|
|
368
371
|
}
|
|
369
372
|
else {
|
|
@@ -371,7 +374,7 @@ async function tryAccessibilityStrategy(query, index, platform) {
|
|
|
371
374
|
result = await iosFindElement({
|
|
372
375
|
labelContains: searchText,
|
|
373
376
|
index,
|
|
374
|
-
});
|
|
377
|
+
}, udid);
|
|
375
378
|
}
|
|
376
379
|
if (!result.success || !result.allMatches || result.allMatches.length === 0) {
|
|
377
380
|
return { success: false, reason: result.error ?? "No iOS accessibility match" };
|
|
@@ -380,7 +383,7 @@ async function tryAccessibilityStrategy(query, index, platform) {
|
|
|
380
383
|
if (!match) {
|
|
381
384
|
return { success: false, reason: `Index ${index} out of bounds (${result.allMatches.length} matches)` };
|
|
382
385
|
}
|
|
383
|
-
await iosTap(match.center.x, match.center.y);
|
|
386
|
+
await iosTap(match.center.x, match.center.y, { udid });
|
|
384
387
|
return {
|
|
385
388
|
success: true,
|
|
386
389
|
reason: "Tapped via iOS accessibility",
|
|
@@ -434,7 +437,7 @@ async function tryAccessibilityStrategy(query, index, platform) {
|
|
|
434
437
|
};
|
|
435
438
|
}
|
|
436
439
|
}
|
|
437
|
-
async function tryOcrStrategy(query, platform) {
|
|
440
|
+
async function tryOcrStrategy(query, platform, udid) {
|
|
438
441
|
try {
|
|
439
442
|
const searchText = query.text;
|
|
440
443
|
if (!searchText) {
|
|
@@ -443,7 +446,7 @@ async function tryOcrStrategy(query, platform) {
|
|
|
443
446
|
let imageBuffer;
|
|
444
447
|
let scaleFactor = 1;
|
|
445
448
|
if (platform === "ios") {
|
|
446
|
-
const screenshot = await iosScreenshot();
|
|
449
|
+
const screenshot = await iosScreenshot(undefined, udid);
|
|
447
450
|
if (!screenshot.success || !screenshot.data) {
|
|
448
451
|
return { success: false, reason: "Failed to capture iOS screenshot for OCR" };
|
|
449
452
|
}
|
|
@@ -472,8 +475,11 @@ async function tryOcrStrategy(query, platform) {
|
|
|
472
475
|
if (platform === "ios") {
|
|
473
476
|
// tapCenter is in image-pixel space (downscaled) — convert to points
|
|
474
477
|
const { getDevicePixelRatio } = await import("../core/ios.js");
|
|
475
|
-
const dpr = await getDevicePixelRatio();
|
|
476
|
-
await iosTap(Math.round((matchingWord.tapCenter.x * scaleFactor) / dpr), Math.round((matchingWord.tapCenter.y * scaleFactor) / dpr));
|
|
478
|
+
const dpr = await getDevicePixelRatio(udid);
|
|
479
|
+
const tapResult = await iosTap(Math.round((matchingWord.tapCenter.x * scaleFactor) / dpr), Math.round((matchingWord.tapCenter.y * scaleFactor) / dpr), { udid });
|
|
480
|
+
if (!tapResult.success) {
|
|
481
|
+
return { success: false, reason: `OCR found "${matchingWord.text}" but tap failed: ${tapResult.error}` };
|
|
482
|
+
}
|
|
477
483
|
}
|
|
478
484
|
else {
|
|
479
485
|
// Android: image-pixel → device-pixel (undo downscale), ADB accepts pixels
|
|
@@ -497,14 +503,17 @@ async function tryOcrStrategy(query, platform) {
|
|
|
497
503
|
};
|
|
498
504
|
}
|
|
499
505
|
}
|
|
500
|
-
async function tryCoordinateStrategy(pixelX, pixelY, platform, lastScreenshot) {
|
|
506
|
+
async function tryCoordinateStrategy(pixelX, pixelY, platform, lastScreenshot, udid) {
|
|
501
507
|
try {
|
|
502
508
|
if (platform === "ios") {
|
|
503
509
|
const scaleFactor = lastScreenshot?.scaleFactor ?? 1;
|
|
504
510
|
const { getDevicePixelRatio } = await import("../core/ios.js");
|
|
505
|
-
const devicePixelRatio = await getDevicePixelRatio();
|
|
511
|
+
const devicePixelRatio = await getDevicePixelRatio(udid);
|
|
506
512
|
const converted = convertScreenshotToTapCoords(pixelX, pixelY, "ios", devicePixelRatio, scaleFactor);
|
|
507
|
-
await iosTap(converted.x, converted.y);
|
|
513
|
+
const tapResult = await iosTap(converted.x, converted.y, { udid });
|
|
514
|
+
if (!tapResult.success) {
|
|
515
|
+
return { success: false, reason: `Coordinate tap failed: ${tapResult.error}` };
|
|
516
|
+
}
|
|
508
517
|
// Best-effort: identify what was tapped via fiber tree
|
|
509
518
|
let screen = null;
|
|
510
519
|
try {
|
|
@@ -562,9 +571,9 @@ function withTimeout(promise, ms, label) {
|
|
|
562
571
|
promise.then((val) => { clearTimeout(timer); resolve(val); }, (err) => { clearTimeout(timer); reject(err); });
|
|
563
572
|
});
|
|
564
573
|
}
|
|
565
|
-
async function captureScreenshot(platform) {
|
|
574
|
+
async function captureScreenshot(platform, udid) {
|
|
566
575
|
try {
|
|
567
|
-
const result = platform === "ios" ? await iosScreenshot() : await androidScreenshot();
|
|
576
|
+
const result = platform === "ios" ? await iosScreenshot(undefined, udid) : await androidScreenshot();
|
|
568
577
|
if (!result.success || !result.data)
|
|
569
578
|
return null;
|
|
570
579
|
return {
|
|
@@ -581,11 +590,11 @@ async function captureScreenshot(platform) {
|
|
|
581
590
|
function screenshotToBase64(buffer) {
|
|
582
591
|
return buffer.toString("base64");
|
|
583
592
|
}
|
|
584
|
-
async function verifyAndCapture(platform, shouldVerify, shouldScreenshot, beforeBuffer) {
|
|
593
|
+
async function verifyAndCapture(platform, shouldVerify, shouldScreenshot, beforeBuffer, udid, beforeScaleFactor) {
|
|
585
594
|
if (!shouldScreenshot)
|
|
586
595
|
return {};
|
|
587
596
|
await new Promise((resolve) => setTimeout(resolve, SETTLE_DELAY_MS));
|
|
588
|
-
const after = await captureScreenshot(platform);
|
|
597
|
+
const after = await captureScreenshot(platform, udid);
|
|
589
598
|
if (!after)
|
|
590
599
|
return {};
|
|
591
600
|
const screenshot = {
|
|
@@ -597,7 +606,9 @@ async function verifyAndCapture(platform, shouldVerify, shouldScreenshot, before
|
|
|
597
606
|
let verification;
|
|
598
607
|
if (shouldVerify && beforeBuffer) {
|
|
599
608
|
try {
|
|
600
|
-
const
|
|
609
|
+
const rawStatusBar = platform === "ios" ? 177 : 142; // pixels in original screenshot space
|
|
610
|
+
const scale = beforeScaleFactor || after.scaleFactor || 1;
|
|
611
|
+
const statusBarHeight = Math.round(rawStatusBar / scale);
|
|
601
612
|
const diff = await compareScreenshots(beforeBuffer, after.buffer, { statusBarHeight });
|
|
602
613
|
verification = {
|
|
603
614
|
meaningful: diff.changed,
|
|
@@ -640,20 +651,24 @@ async function verifyAndCapture(platform, shouldVerify, shouldScreenshot, before
|
|
|
640
651
|
// --- Burst Capture ---
|
|
641
652
|
const BURST_FRAME_COUNT = 4;
|
|
642
653
|
const BURST_FRAME_INTERVAL_MS = 150;
|
|
643
|
-
async function burstCaptureAndVerify(platform, beforeBuffer) {
|
|
654
|
+
async function burstCaptureAndVerify(platform, beforeBuffer, udid, beforeScaleFactor) {
|
|
644
655
|
if (!beforeBuffer)
|
|
645
656
|
return {};
|
|
646
657
|
const frames = [beforeBuffer];
|
|
658
|
+
let capturedScaleFactor = beforeScaleFactor || 1;
|
|
647
659
|
for (let i = 0; i < BURST_FRAME_COUNT; i++) {
|
|
648
660
|
await new Promise((resolve) => setTimeout(resolve, BURST_FRAME_INTERVAL_MS));
|
|
649
|
-
const capture = await captureScreenshot(platform);
|
|
661
|
+
const capture = await captureScreenshot(platform, udid);
|
|
650
662
|
if (capture) {
|
|
651
663
|
frames.push(capture.buffer);
|
|
664
|
+
if (i === 0)
|
|
665
|
+
capturedScaleFactor = capture.scaleFactor || capturedScaleFactor;
|
|
652
666
|
}
|
|
653
667
|
}
|
|
654
668
|
if (frames.length < 2)
|
|
655
669
|
return {};
|
|
656
|
-
const
|
|
670
|
+
const rawStatusBar = platform === "ios" ? 177 : 142; // pixels in original screenshot space
|
|
671
|
+
const statusBarHeight = Math.round(rawStatusBar / capturedScaleFactor);
|
|
657
672
|
const analysis = await analyzeBurstFrames(frames, { statusBarHeight });
|
|
658
673
|
const groupId = `burst-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
659
674
|
for (let i = 0; i < frames.length; i++) {
|
|
@@ -743,6 +758,7 @@ export async function tap(options) {
|
|
|
743
758
|
if (options.native && hasCoordinates) {
|
|
744
759
|
let platform = options.platform;
|
|
745
760
|
// Auto-detect platform if not specified
|
|
761
|
+
let nativeUdid;
|
|
746
762
|
if (!platform) {
|
|
747
763
|
const [androidDevice, iosSimulator] = await Promise.all([
|
|
748
764
|
getDefaultAndroidDevice().catch(() => null),
|
|
@@ -760,6 +776,7 @@ export async function tap(options) {
|
|
|
760
776
|
}
|
|
761
777
|
else if (iosSimulator) {
|
|
762
778
|
platform = "ios";
|
|
779
|
+
nativeUdid = iosSimulator;
|
|
763
780
|
}
|
|
764
781
|
else {
|
|
765
782
|
return {
|
|
@@ -769,12 +786,15 @@ export async function tap(options) {
|
|
|
769
786
|
};
|
|
770
787
|
}
|
|
771
788
|
}
|
|
789
|
+
else if (platform === "ios") {
|
|
790
|
+
nativeUdid = (await getActiveOrBootedSimulatorUdid()) ?? undefined;
|
|
791
|
+
}
|
|
772
792
|
const nativeShouldScreenshot = options.screenshot !== false;
|
|
773
793
|
const nativeShouldVerify = nativeShouldScreenshot && options.verify !== false;
|
|
774
794
|
let nativeBeforeBuffer = null;
|
|
775
795
|
let nativeScreenshotMeta;
|
|
776
796
|
if (nativeShouldVerify) {
|
|
777
|
-
const before = await captureScreenshot(platform);
|
|
797
|
+
const before = await captureScreenshot(platform, nativeUdid);
|
|
778
798
|
nativeBeforeBuffer = before?.buffer || null;
|
|
779
799
|
if (before) {
|
|
780
800
|
nativeScreenshotMeta = {
|
|
@@ -786,7 +806,7 @@ export async function tap(options) {
|
|
|
786
806
|
}
|
|
787
807
|
// If no screenshot was taken for verification, take one just for scaleFactor
|
|
788
808
|
if (!nativeScreenshotMeta) {
|
|
789
|
-
const ref = await captureScreenshot(platform);
|
|
809
|
+
const ref = await captureScreenshot(platform, nativeUdid);
|
|
790
810
|
if (ref) {
|
|
791
811
|
nativeScreenshotMeta = {
|
|
792
812
|
originalWidth: ref.width,
|
|
@@ -801,7 +821,7 @@ export async function tap(options) {
|
|
|
801
821
|
}
|
|
802
822
|
let result;
|
|
803
823
|
try {
|
|
804
|
-
result = await withTimeout(tryCoordinateStrategy(query.x, query.y, platform, nativeScreenshotMeta), remainingMs(), "native-coordinate");
|
|
824
|
+
result = await withTimeout(tryCoordinateStrategy(query.x, query.y, platform, nativeScreenshotMeta, nativeUdid), remainingMs(), "native-coordinate");
|
|
805
825
|
}
|
|
806
826
|
catch (err) {
|
|
807
827
|
return formatTapFailure({
|
|
@@ -814,10 +834,10 @@ export async function tap(options) {
|
|
|
814
834
|
let screenshot;
|
|
815
835
|
let verification;
|
|
816
836
|
if (options.burst && nativeShouldVerify && nativeBeforeBuffer) {
|
|
817
|
-
({ screenshot, verification } = await burstCaptureAndVerify(platform, nativeBeforeBuffer));
|
|
837
|
+
({ screenshot, verification } = await burstCaptureAndVerify(platform, nativeBeforeBuffer, nativeUdid, nativeScreenshotMeta?.scaleFactor));
|
|
818
838
|
}
|
|
819
839
|
else {
|
|
820
|
-
({ screenshot, verification } = await verifyAndCapture(platform, nativeShouldVerify, nativeShouldScreenshot, nativeBeforeBuffer));
|
|
840
|
+
({ screenshot, verification } = await verifyAndCapture(platform, nativeShouldVerify, nativeShouldScreenshot, nativeBeforeBuffer, nativeUdid, nativeScreenshotMeta?.scaleFactor));
|
|
821
841
|
}
|
|
822
842
|
return formatTapSuccess({
|
|
823
843
|
method: "native-coordinate",
|
|
@@ -836,8 +856,12 @@ export async function tap(options) {
|
|
|
836
856
|
});
|
|
837
857
|
}
|
|
838
858
|
// Detect available capabilities
|
|
839
|
-
|
|
840
|
-
let
|
|
859
|
+
const allApps = Array.from(connectedApps.values());
|
|
860
|
+
let hasMetro = allApps.length > 0;
|
|
861
|
+
// If platform is specified, prefer an app matching that platform
|
|
862
|
+
let app = options.platform
|
|
863
|
+
? allApps.find((a) => a.platform === options.platform) ?? allApps[0]
|
|
864
|
+
: allApps[0];
|
|
841
865
|
// Try to auto-connect to Metro (for fiber strategy), but don't fail if it doesn't work
|
|
842
866
|
if (!hasMetro) {
|
|
843
867
|
try {
|
|
@@ -893,6 +917,14 @@ export async function tap(options) {
|
|
|
893
917
|
error: "No devices found. Boot a simulator or connect an Android device.",
|
|
894
918
|
};
|
|
895
919
|
}
|
|
920
|
+
// Resolve target iOS simulator UDID from the connected app
|
|
921
|
+
// This ensures taps go to the correct device when multiple simulators are booted
|
|
922
|
+
let targetUdid;
|
|
923
|
+
if (platform === "ios") {
|
|
924
|
+
targetUdid = app?.simulatorUdid
|
|
925
|
+
?? ((app?.deviceInfo?.deviceName ? (await findSimulatorByName(app.deviceInfo.deviceName)) : null) ?? undefined);
|
|
926
|
+
}
|
|
927
|
+
const deviceName = app?.deviceInfo?.deviceName;
|
|
896
928
|
// Determine strategies
|
|
897
929
|
const strategies = getAvailableStrategies(query, strategy);
|
|
898
930
|
const attempted = [];
|
|
@@ -919,9 +951,11 @@ export async function tap(options) {
|
|
|
919
951
|
const canVerify = shouldScreenshot && options.verify !== false;
|
|
920
952
|
// Capture "before" screenshot for verification
|
|
921
953
|
let beforeBuffer = null;
|
|
954
|
+
let beforeScaleFactor;
|
|
922
955
|
if (canVerify) {
|
|
923
|
-
const before = await captureScreenshot(platform);
|
|
956
|
+
const before = await captureScreenshot(platform, targetUdid);
|
|
924
957
|
beforeBuffer = before?.buffer || null;
|
|
958
|
+
beforeScaleFactor = before?.scaleFactor;
|
|
925
959
|
}
|
|
926
960
|
// Execute strategies in order with per-strategy caps and overall budget
|
|
927
961
|
for (const strat of filteredStrategies) {
|
|
@@ -939,13 +973,13 @@ export async function tap(options) {
|
|
|
939
973
|
result = await withTimeout(tryFiberStrategy(query, index, maxTraversalDepth), budget, `fiber`);
|
|
940
974
|
break;
|
|
941
975
|
case "accessibility":
|
|
942
|
-
result = await withTimeout(tryAccessibilityStrategy(query, index, platform), budget, `accessibility`);
|
|
976
|
+
result = await withTimeout(tryAccessibilityStrategy(query, index, platform, targetUdid), budget, `accessibility`);
|
|
943
977
|
break;
|
|
944
978
|
case "ocr":
|
|
945
|
-
result = await withTimeout(tryOcrStrategy(query, platform), budget, `ocr`);
|
|
979
|
+
result = await withTimeout(tryOcrStrategy(query, platform, targetUdid), budget, `ocr`);
|
|
946
980
|
break;
|
|
947
981
|
case "coordinate":
|
|
948
|
-
result = await withTimeout(tryCoordinateStrategy(query.x, query.y, platform, app?.lastScreenshot), budget, `coordinate`);
|
|
982
|
+
result = await withTimeout(tryCoordinateStrategy(query.x, query.y, platform, app?.lastScreenshot, targetUdid), budget, `coordinate`);
|
|
949
983
|
break;
|
|
950
984
|
default:
|
|
951
985
|
result = { success: false, reason: `Unknown strategy: ${strat}` };
|
|
@@ -959,10 +993,10 @@ export async function tap(options) {
|
|
|
959
993
|
let screenshot;
|
|
960
994
|
let verification;
|
|
961
995
|
if (options.burst && canVerify && beforeBuffer) {
|
|
962
|
-
({ screenshot, verification } = await burstCaptureAndVerify(platform, beforeBuffer));
|
|
996
|
+
({ screenshot, verification } = await burstCaptureAndVerify(platform, beforeBuffer, targetUdid, beforeScaleFactor));
|
|
963
997
|
}
|
|
964
998
|
else {
|
|
965
|
-
({ screenshot, verification } = await verifyAndCapture(platform, canVerify, shouldScreenshot, beforeBuffer));
|
|
999
|
+
({ screenshot, verification } = await verifyAndCapture(platform, canVerify, shouldScreenshot, beforeBuffer, targetUdid, beforeScaleFactor));
|
|
966
1000
|
}
|
|
967
1001
|
if (screenshot && app) {
|
|
968
1002
|
app.lastScreenshot = {
|
|
@@ -981,6 +1015,7 @@ export async function tap(options) {
|
|
|
981
1015
|
component: result.component,
|
|
982
1016
|
convertedTo: result.convertedTo,
|
|
983
1017
|
platform,
|
|
1018
|
+
device: deviceName,
|
|
984
1019
|
screenshot,
|
|
985
1020
|
verification,
|
|
986
1021
|
});
|
|
@@ -992,7 +1027,7 @@ export async function tap(options) {
|
|
|
992
1027
|
const coords = result.convertedTo;
|
|
993
1028
|
if (platform === "ios") {
|
|
994
1029
|
// Fabric returns points — iosTap expects points
|
|
995
|
-
await iosTap(coords.x, coords.y);
|
|
1030
|
+
await iosTap(coords.x, coords.y, { udid: targetUdid });
|
|
996
1031
|
}
|
|
997
1032
|
else {
|
|
998
1033
|
// Fabric returns dp — androidTap expects pixels
|
|
@@ -1006,10 +1041,10 @@ export async function tap(options) {
|
|
|
1006
1041
|
let screenshot;
|
|
1007
1042
|
let verification;
|
|
1008
1043
|
if (options.burst && canVerify && beforeBuffer) {
|
|
1009
|
-
({ screenshot, verification } = await burstCaptureAndVerify(platform, beforeBuffer));
|
|
1044
|
+
({ screenshot, verification } = await burstCaptureAndVerify(platform, beforeBuffer, targetUdid, beforeScaleFactor));
|
|
1010
1045
|
}
|
|
1011
1046
|
else {
|
|
1012
|
-
({ screenshot, verification } = await verifyAndCapture(platform, canVerify, shouldScreenshot, beforeBuffer));
|
|
1047
|
+
({ screenshot, verification } = await verifyAndCapture(platform, canVerify, shouldScreenshot, beforeBuffer, targetUdid, beforeScaleFactor));
|
|
1013
1048
|
}
|
|
1014
1049
|
if (screenshot && app) {
|
|
1015
1050
|
app.lastScreenshot = {
|
|
@@ -1027,6 +1062,7 @@ export async function tap(options) {
|
|
|
1027
1062
|
component: result.component,
|
|
1028
1063
|
convertedTo: coords,
|
|
1029
1064
|
platform,
|
|
1065
|
+
device: deviceName,
|
|
1030
1066
|
screenshot,
|
|
1031
1067
|
verification,
|
|
1032
1068
|
});
|
|
@@ -1038,7 +1074,7 @@ export async function tap(options) {
|
|
|
1038
1074
|
// If we got match suggestions from fiber, carry them forward
|
|
1039
1075
|
if (result.matches) {
|
|
1040
1076
|
const { screenshot: matchScreenshot } = shouldScreenshot
|
|
1041
|
-
? await verifyAndCapture(platform, false, true, null)
|
|
1077
|
+
? await verifyAndCapture(platform, false, true, null, targetUdid)
|
|
1042
1078
|
: { screenshot: undefined };
|
|
1043
1079
|
if (matchScreenshot && app) {
|
|
1044
1080
|
app.lastScreenshot = {
|
|
@@ -1051,6 +1087,7 @@ export async function tap(options) {
|
|
|
1051
1087
|
query,
|
|
1052
1088
|
attempted,
|
|
1053
1089
|
suggestion: `Found ${result.matches.length} match(es) — specify index to select one`,
|
|
1090
|
+
device: deviceName,
|
|
1054
1091
|
matches: result.matches,
|
|
1055
1092
|
screenshot: matchScreenshot,
|
|
1056
1093
|
});
|
|
@@ -1063,7 +1100,7 @@ export async function tap(options) {
|
|
|
1063
1100
|
const elapsed = TAP_TIMEOUT_MS - remainingMs();
|
|
1064
1101
|
const suggestion = buildSuggestion(query, strategies, platform);
|
|
1065
1102
|
const { screenshot: failScreenshot } = shouldScreenshot
|
|
1066
|
-
? await verifyAndCapture(platform, false, true, null)
|
|
1103
|
+
? await verifyAndCapture(platform, false, true, null, targetUdid)
|
|
1067
1104
|
: { screenshot: undefined };
|
|
1068
1105
|
if (failScreenshot && app) {
|
|
1069
1106
|
app.lastScreenshot = {
|
|
@@ -1079,6 +1116,7 @@ export async function tap(options) {
|
|
|
1079
1116
|
? `Tap timed out after ${elapsed}ms (budget ${TAP_TIMEOUT_MS}ms)`
|
|
1080
1117
|
: undefined,
|
|
1081
1118
|
suggestion,
|
|
1119
|
+
device: deviceName,
|
|
1082
1120
|
screenshot: failScreenshot,
|
|
1083
1121
|
});
|
|
1084
1122
|
}
|
package/build/pro/tap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tap.js","sourceRoot":"","sources":["../../src/pro/tap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tap.js","sourceRoot":"","sources":["../../src/pro/tap.ts"],"names":[],"mappings":"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"}
|