[INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 285) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 821) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (539, 459) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,407][90,439], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=407, width=32, height=32)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (74, 423) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (894, 1092) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" COMPLETED [INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 285) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 821) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (539, 459) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,407][90,439], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=407, width=32, height=32)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (74, 423) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (894, 1092) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" COMPLETED [INFO ] MAESTRO - ---- System Info ---- [INFO ] MAESTRO - Maestro Version: 1.38.1 [INFO ] MAESTRO - CI: Undefined [INFO ] MAESTRO - OS Name: Mac OS X [INFO ] MAESTRO - OS Version: 15.5 [INFO ] MAESTRO - Architecture: aarch64 [INFO ] MAESTRO - Java Version: 17 [INFO ] MAESTRO - Xcode Version: 16.0 [INFO ] MAESTRO - Flutter Version: Undefined [INFO ] MAESTRO - Flutter Channel: Undefined [INFO ] MAESTRO - --------------------- [INFO ] maestro.Maestro - Getting device info [INFO ] m.cli.runner.MaestroCommandRunner - Define variables RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=}, label=null), runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Define variables COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null), openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Apply configuration COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null), applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Launching app com.stripe.react.native [INFO ] m.cli.runner.MaestroCommandRunner - Launch app "${APP_ID}" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 285) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Accept a payment" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 821) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (multi-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Choose payment method" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (539, 459) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Choose payment method" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "TEST" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,410][90,442], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=410, width=32, height=32)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (74, 426) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Close" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=null, tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null), assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*anceled.*" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, optional=false, traits=null, index=null, enabled=null, selected=null, checked=null, focused=null, childOf=null), retryIfNoChange=true, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null), tapOnPoint=null, tapOnPointV2Command=null, scrollCommand=null, swipeCommand=null, backPressCommand=null, assertCommand=null, assertConditionCommand=null, assertNoDefectsWithAICommand=null, assertWithAICommand=null, inputTextCommand=null, inputRandomTextCommand=null, launchAppCommand=null, applyConfigurationCommand=null, openLinkCommand=null, pressKeyCommand=null, eraseTextCommand=null, hideKeyboardCommand=null, takeScreenshotCommand=null, stopAppCommand=null, killAppCommand=null, clearStateCommand=null, clearKeychainCommand=null, runFlowCommand=null, setLocationCommand=null, repeatCommand=null, copyTextCommand=null, pasteTextCommand=null, defineVariablesCommand=null, runScriptCommand=null, waitForAnimationToEndCommand=null, evalScriptCommand=null, scrollUntilVisible=null, travelCommand=null, startRecordingCommand=null, stopRecordingCommand=null, addMediaCommand=null, setAirplaneModeCommand=null, toggleAirplaneModeCommand=null), logMessages=[], insight=Insight(message=, level=NONE)) [INFO ] maestro.Maestro - Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (894, 1092) using hierarchy based logic for wait [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to byte array [INFO ] maestro.utils.ScreenshotUtils - Taking screenshot to output sink [INFO ] maestro.Maestro - Something have changed in the UI judging by view hierarchy. Proceed. [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "OK" COMPLETED 17:07:08.762 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 17:07:08.763 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 17:07:08.764 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 17:07:08.764 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 17:07:08.764 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 17:07:08.764 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 17:07:08.764 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 17:07:08.867 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 17:07:08.872 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 17:07:08.876 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 17:07:08.876 [ INFO] MAESTRO.logSystemInfo: --------------------- 17:07:09.374 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 17:07:11.096 [ INFO] maestro.Maestro.invoke: Getting device info 17:07:11.279 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 17:07:11.328 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 17:07:11.331 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:11.334 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 17:07:11.335 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 17:07:11.339 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:11.340 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 17:07:11.341 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 17:07:11.342 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:12.110 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 17:07:12.209 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 17:07:12.210 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 17:07:12.211 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:14.032 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,194][1080,251], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=194, width=1080, height=57)) 17:07:15.110 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:07:15.111 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 17:07:15.112 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:07:15.112 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:07:16.470 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:07:16.470 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 17:07:16.472 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 17:07:16.474 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:16.538 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 17:07:17.375 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:07:17.375 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 17:07:17.375 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:07:17.375 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:07:18.484 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:07:18.485 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 17:07:18.486 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 17:07:18.487 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:19.965 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 17:07:19.967 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 17:07:19.969 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:20.000 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 17:07:20.768 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:07:20.768 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 17:07:20.768 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:07:20.768 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:07:22.771 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:07:22.771 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 17:07:22.772 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 17:07:22.774 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:22.858 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 17:07:22.859 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 17:07:22.859 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:22.942 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,410][90,442], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=410, width=32, height=32)) 17:07:23.753 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:07:23.753 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 426) using hierarchy based logic for wait 17:07:23.753 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:07:23.753 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:07:25.257 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:07:25.258 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 17:07:25.258 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 17:07:25.259 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:25.320 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 17:07:25.321 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 17:07:25.321 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:07:25.339 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 17:07:26.177 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:07:26.178 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 17:07:26.178 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:07:26.178 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:07:27.049 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:07:27.049 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 17:07:27.419 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 17:07:32.426 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 17:07:32.426 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 17:07:32.427 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 17:07:32.427 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 17:07:32.427 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 17:07:32.427 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 17:07:32.694 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 17:07:32.694 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 17:07:32.694 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 17:07:32.694 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 17:07:32.697 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 20:09:13.318 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 20:09:13.319 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 20:09:13.320 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 20:09:13.320 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 20:09:13.320 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 20:09:13.320 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 20:09:13.320 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 20:09:13.489 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 20:09:13.495 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 20:09:13.499 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 20:09:13.500 [ INFO] MAESTRO.logSystemInfo: --------------------- 20:09:13.949 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 20:09:15.416 [ INFO] maestro.Maestro.invoke: Getting device info 20:09:15.574 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 20:09:15.620 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 20:09:15.622 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:15.624 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 20:09:15.625 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 20:09:15.629 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:15.629 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 20:09:15.630 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 20:09:15.632 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:16.362 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 20:09:16.435 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 20:09:16.435 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 20:09:16.436 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:18.205 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 20:09:18.993 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:09:18.995 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 20:09:18.995 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:09:18.995 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:09:19.927 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:09:19.927 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 20:09:19.930 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 20:09:19.931 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:20.017 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 20:09:20.874 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:09:20.875 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 20:09:20.875 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:09:20.875 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:09:22.169 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:09:22.170 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 20:09:22.173 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 20:09:22.175 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:23.322 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 20:09:23.324 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 20:09:23.325 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:23.357 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 20:09:24.165 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:09:24.166 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 20:09:24.166 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:09:24.166 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:09:26.045 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:09:26.048 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 20:09:26.050 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 20:09:26.051 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:26.153 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 20:09:26.155 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 20:09:26.156 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:26.209 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,121][90,153], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=121, width=32, height=32)) 20:09:27.024 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:09:27.024 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 137) using hierarchy based logic for wait 20:09:27.024 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:09:27.024 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:09:28.239 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:09:28.240 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 20:09:28.242 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 20:09:28.243 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:28.281 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 20:09:28.282 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 20:09:28.283 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:09:28.350 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 20:09:29.696 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:09:29.696 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 20:09:29.697 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:09:29.697 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:09:30.548 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:09:30.549 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 20:09:30.861 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 20:09:35.867 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 20:09:35.868 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 20:09:35.868 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 20:09:35.868 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 20:09:35.868 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 20:09:35.868 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 20:09:36.029 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 20:09:36.030 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 20:09:36.030 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 20:09:36.030 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 20:09:36.033 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 21:55:10.230 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 21:55:10.231 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 21:55:10.341 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 21:55:10.345 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 21:55:10.349 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 21:55:10.349 [ INFO] MAESTRO.logSystemInfo: --------------------- 21:55:10.754 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 21:55:12.278 [ INFO] maestro.Maestro.invoke: Getting device info 21:55:12.431 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 21:55:12.478 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 21:55:12.480 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:12.482 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 21:55:12.483 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 21:55:12.486 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:12.487 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 21:55:12.488 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 21:55:12.489 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:13.298 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 21:55:13.364 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 21:55:13.365 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 21:55:13.366 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:14.644 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 21:55:15.748 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 21:55:15.752 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 21:55:15.752 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 21:55:15.752 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 21:55:17.116 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 21:55:17.116 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 21:55:17.118 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 21:55:17.120 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:17.174 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 21:55:17.958 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 21:55:17.959 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 21:55:17.960 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 21:55:17.960 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 21:55:19.250 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 21:55:19.250 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 21:55:19.251 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 21:55:19.254 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:19.900 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 21:55:19.901 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 21:55:19.903 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:20.505 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 21:55:21.269 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 21:55:21.269 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 21:55:21.270 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 21:55:21.270 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 21:55:23.206 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 21:55:23.206 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 21:55:23.208 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 21:55:23.210 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:23.297 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 21:55:23.298 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 21:55:23.299 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:23.342 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,121][90,153], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=121, width=32, height=32)) 21:55:24.153 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 21:55:24.153 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 137) using hierarchy based logic for wait 21:55:24.153 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 21:55:24.153 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 21:55:25.360 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 21:55:25.361 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 21:55:25.362 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 21:55:25.363 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:25.422 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 21:55:25.423 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 21:55:25.424 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 21:55:25.490 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 21:55:26.256 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 21:55:26.256 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 21:55:26.256 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 21:55:26.256 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 21:55:27.109 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 21:55:27.109 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 21:55:27.406 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 21:55:32.412 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 21:55:32.574 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 21:55:32.575 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 21:55:32.575 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 21:55:32.575 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 21:55:32.578 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 22:38:23.518 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 22:38:23.519 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 22:38:23.611 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 22:38:23.615 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 22:38:23.619 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 22:38:23.619 [ INFO] MAESTRO.logSystemInfo: --------------------- 22:38:24.039 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 22:38:28.389 [ INFO] maestro.Maestro.invoke: Getting device info 22:38:28.594 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 22:38:28.653 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 22:38:28.656 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:28.658 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 22:38:28.659 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 22:38:28.663 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:28.663 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 22:38:28.664 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 22:38:28.665 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:30.392 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 22:38:30.759 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 22:38:30.760 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 22:38:30.762 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:37.131 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 22:38:38.196 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:38:38.198 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 22:38:38.198 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:38:38.198 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:38:40.048 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:38:40.049 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 22:38:40.050 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 22:38:40.052 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:40.249 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 22:38:41.169 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:38:41.169 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 22:38:41.170 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:38:41.170 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:38:43.273 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:38:43.273 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 22:38:43.279 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 22:38:43.281 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:44.616 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 22:38:44.617 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 22:38:44.619 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:44.686 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 22:38:45.586 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:38:45.586 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 22:38:45.586 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:38:45.587 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:38:48.530 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:38:48.531 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 22:38:48.532 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 22:38:48.534 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:48.690 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 22:38:48.691 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 22:38:48.692 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:48.863 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,121][90,153], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=121, width=32, height=32)) 22:38:49.690 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:38:49.690 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 137) using hierarchy based logic for wait 22:38:49.691 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:38:49.691 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:38:51.884 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:38:51.885 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 22:38:51.886 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 22:38:51.887 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:51.964 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 22:38:51.966 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 22:38:51.968 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:38:52.031 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 22:38:52.965 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:38:52.966 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 22:38:52.966 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:38:52.966 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:38:54.009 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:38:54.010 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 22:38:54.372 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 22:38:54.372 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 22:38:59.382 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 22:38:59.382 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 22:38:59.382 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 22:38:59.382 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 22:38:59.383 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 22:38:59.383 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 22:38:59.751 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 22:38:59.751 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 22:38:59.752 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 22:38:59.752 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 22:38:59.756 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 11:14:49.318 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 11:14:49.319 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 11:14:49.509 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 11:14:49.514 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 11:14:49.518 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 11:14:49.518 [ INFO] MAESTRO.logSystemInfo: --------------------- 11:14:50.030 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 11:14:54.591 [ INFO] maestro.Maestro.invoke: Getting device info 11:14:54.786 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 11:14:54.830 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 11:14:54.832 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:14:54.834 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 11:14:54.835 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 11:14:54.838 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:14:54.839 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 11:14:54.840 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 11:14:54.841 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:14:56.747 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 11:14:57.034 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 11:14:57.035 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 11:14:57.036 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:02.494 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 11:15:03.446 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:15:03.448 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 11:15:03.448 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:15:03.448 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:15:05.426 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:15:05.426 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 11:15:05.427 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 11:15:05.428 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:05.601 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 11:15:06.499 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:15:06.500 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 11:15:06.500 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:15:06.500 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:15:08.735 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:15:08.736 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 11:15:08.737 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 11:15:08.739 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:09.630 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 11:15:09.631 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 11:15:09.632 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:09.716 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 11:15:10.546 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:15:10.546 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 11:15:10.546 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:15:10.547 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:15:13.961 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:15:13.961 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 11:15:13.962 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 11:15:13.963 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:14.183 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 11:15:14.185 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 11:15:14.186 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:14.534 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,217][90,249], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=217, width=32, height=32)) 11:15:15.513 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:15:15.513 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 233) using hierarchy based logic for wait 11:15:15.514 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:15:15.514 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:15:17.682 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:15:17.683 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 11:15:17.685 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 11:15:17.686 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:17.747 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 11:15:17.749 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 11:15:17.750 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:15:17.805 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 11:15:18.655 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:15:18.655 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 11:15:18.655 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:15:18.656 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:15:20.114 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:15:20.114 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 11:15:20.383 [ERROR] maestro.cli.session.MaestroSessionManager.newSession$lambda$0: Failed to record heartbeat java.lang.InterruptedException: sleep interrupted at java.base/java.lang.Thread.sleep(Native Method) at maestro.cli.session.MaestroSessionManager.newSession$lambda$0(MaestroSessionManager.kt:93) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 11:15:20.383 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 11:15:25.394 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 11:15:25.395 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 11:15:25.395 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 11:15:25.395 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 11:15:25.395 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 11:15:25.395 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 11:15:25.924 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 11:15:25.924 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 11:15:25.924 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 11:15:25.924 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 11:15:25.927 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 16:41:43.277 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 16:41:43.277 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 16:41:43.278 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 16:41:43.278 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 16:41:43.278 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 16:41:43.278 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 16:41:43.278 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 16:41:43.387 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 16:41:43.392 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 16:41:43.399 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 16:41:43.404 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 16:41:43.404 [ INFO] MAESTRO.logSystemInfo: --------------------- 16:41:43.965 [ INFO] maestro.cli.command.TestCommand.runShardSuite: [shard 1] Selected device emulator-5554 using port 7001 with execution plan ExecutionPlan(flowsToRun=[/Users/tianzhao/stripe/stripe-react-native/./e2e-tests/android-only/paymentsheet-customFlow-canceled.yml], sequence=FlowSequence(flows=[], continueOnFailure=true), workspaceConfig=WorkspaceConfig(flows=null, includeTags=null, excludeTags=null, local=null, executionOrder=null, baselineBranch=null, notifications=null, disableRetries=false, platform=PlatformConfiguration(android=AndroidConfiguration(disableAnimations=false), ios=IOSConfiguration(disableAnimations=false, snapshotKeyHonorModalViews=null)))) 16:41:45.705 [ INFO] maestro.Maestro.invoke: Getting device info 16:41:45.869 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 16:41:45.933 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 16:41:45.936 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(defineVariablesCommand=DefineVariablesCommand(env={APP_ID=com.stripe.react.native, NEW_ARCH=, MAESTRO_FILENAME=paymentsheet-customFlow-canceled}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:45.940 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 16:41:45.941 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 16:41:45.947 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(applyConfigurationCommand=ApplyConfigurationCommand(config=MaestroConfig(appId=com.stripe.react.native, name=null, tags=[], ext={}, onFlowStart=null, onFlowComplete=null), label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:45.948 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 16:41:45.949 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 16:41:45.951 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(launchAppCommand=LaunchAppCommand(appId=com.stripe.react.native, clearState=null, clearKeychain=null, stopApp=null, permissions=null, launchArguments=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:46.791 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 16:41:46.896 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 16:41:46.897 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 16:41:46.899 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Accept a payment, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:49.004 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Accept a payment, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[0,257][1080,314], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=0, y=257, width=1080, height=57)) 16:41:49.873 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:41:49.876 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 16:41:49.876 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:41:49.876 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:41:51.018 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:41:51.019 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 16:41:51.021 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" RUNNING 16:41:51.024 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (multi-step), idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:51.115 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (multi-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,793][1038,850], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=84, y=793, width=954, height=57)) 16:41:51.960 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:41:51.960 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 821) using hierarchy based logic for wait 16:41:51.961 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:41:51.961 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:41:53.203 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:41:53.204 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (multi-step)" COMPLETED 16:41:53.205 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible RUNNING 16:41:53.206 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:53.866 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Choose payment method" is visible COMPLETED 16:41:53.869 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" RUNNING 16:41:53.870 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Choose payment method, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:53.945 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Choose payment method, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[304,431][775,488], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.TextView}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=304, y=431, width=471, height=57)) 16:41:54.726 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:41:54.727 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (539, 459) using hierarchy based logic for wait 16:41:54.727 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:41:54.727 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:41:56.813 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:41:56.814 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Choose payment method" COMPLETED 16:41:56.814 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible RUNNING 16:41:56.815 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=TEST, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=150000, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:56.892 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "TEST" is visible COMPLETED 16:41:56.893 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" RUNNING 16:41:56.893 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Close, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:56.936 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=, accessibilityText=Close, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[58,217][90,249], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.view.View}, children=[], clickable=false, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=58, y=217, width=32, height=32)) 16:41:57.713 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 16:41:57.713 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (74, 233) using hierarchy based logic for wait 16:41:57.714 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:41:57.714 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:41:59.201 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 16:41:59.201 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Close" COMPLETED 16:41:59.202 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible RUNNING 16:41:59.204 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*anceled.*, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), notVisible=null, scriptCondition=null, label=null), timeout=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:59.265 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*anceled.*" is visible COMPLETED 16:41:59.267 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 16:41:59.269 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=OK, idRegex=null, size=null, below=null, above=null, leftOf=null, rightOf=null, containsChild=null, containsDescendants=null, traits=null, index=null, enabled=null, optional=false, selected=null, checked=null, focused=null, childOf=null, css=null), retryIfNoChange=false, waitUntilVisible=false, longPress=false, repeat=null, waitToSettleTimeoutMs=null, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 16:41:59.284 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=OK, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=android:id/button1, clickable=true, bounds=[810,1029][978,1155], enabled=true, focused=false, checked=false, scrollable=false, selected=false, class=android.widget.Button}, children=[], clickable=true, enabled=true, focused=false, checked=false, selected=false), bounds=Bounds(x=810, y=1029, width=168, height=126)) 16:42:01.063 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 16:42:01.063 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:42:01.063 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:42:01.381 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 16:42:01.381 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 16:42:01.572 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Screenshots are not different enough (d=0.0) 16:42:01.572 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Nothing changed in the UI. 16:42:01.572 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 16:42:01.876 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 16:42:06.878 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 16:42:06.878 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 16:42:06.878 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 16:42:06.878 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 16:42:06.878 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 16:42:06.879 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 16:42:07.027 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 16:42:07.027 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 16:42:07.027 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 16:42:07.027 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 16:42:07.029 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel