[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 (single-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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 (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 453) 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 (single-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Checkout" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Checkout" 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=Checkout, 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 "Checkout" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "trigger payment sheet timeout" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 741) 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 "trigger payment sheet timeout" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*Timeout.*" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*Timeout.*" 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=.*Timeout.*, 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 ".*Timeout.*" 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 (single-step)" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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 (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (561, 453) 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 (single-step)" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Checkout" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that "Checkout" 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=Checkout, 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 "Checkout" is visible COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "trigger payment sheet timeout" RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElement=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) [INFO ] maestro.Maestro - Refreshed element [INFO ] maestro.Maestro - Tapping at (540, 741) 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 "trigger payment sheet timeout" COMPLETED [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*Timeout.*" is visible RUNNING [INFO ] m.cli.runner.MaestroCommandRunner - Assert that ".*Timeout.*" 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=.*Timeout.*, 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 ".*Timeout.*" 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:25:57.304 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 17:25:57.305 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 17:25:57.450 [DEBUG] io.micrometer.common.util.internal.logging.InternalLoggerFactory.newDefaultFactory: Using SLF4J as the default logging framework 17:25:57.514 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 17:25:57.520 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 17:25:57.526 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 17:25:57.526 [ INFO] MAESTRO.logSystemInfo: --------------------- 17:25:58.517 [ 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/paymentsheet-timeout.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:26:00.597 [ INFO] maestro.Maestro.invoke: Getting device info 17:26:00.770 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 17:26:00.833 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 17:26:00.835 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:26:00.837 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 17:26:00.838 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 17:26:00.843 [ 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:26:00.844 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 17:26:00.845 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 17:26:00.846 [ 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:26:01.711 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 17:26:01.841 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 17:26:01.843 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 17:26:01.845 [ 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:26:04.174 [ 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)) 17:26:05.010 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:26:05.011 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 17:26:05.011 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:26:05.011 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:26:06.107 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:26:06.107 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 17:26:06.108 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 17:26:06.108 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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:26:06.202 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 17:26:07.008 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:26:07.008 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 17:26:07.008 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:26:07.009 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:26:08.864 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:26:08.864 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 17:26:08.865 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 17:26:08.866 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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:26:08.921 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 17:26:08.922 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 17:26:08.923 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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:26:08.946 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 17:26:09.763 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:26:09.763 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 17:26:09.763 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:26:09.763 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:26:12.747 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:26:12.749 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 17:26:12.752 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 17:26:12.753 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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:26:15.819 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 17:26:15.821 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 17:26:15.823 [ 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:26:15.927 [ 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:26:16.735 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:26:16.735 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 17:26:16.735 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:26:16.735 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:26:17.628 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:26:17.629 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 17:26:18.090 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 17:26:23.096 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 17:26:23.096 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 17:26:23.096 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 17:26:23.096 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 17:26:23.097 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 17:26:23.097 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 17:26:23.401 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 17:26:23.401 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 17:26:23.401 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 17:26:23.401 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 17:26:23.404 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 20:41:12.832 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 20:41:12.833 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 20:41:12.834 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 20:41:12.834 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 20:41:12.834 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 20:41:12.834 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 20:41:12.834 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 20:41:13.101 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 20:41:13.105 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 20:41:13.110 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 20:41:13.110 [ INFO] MAESTRO.logSystemInfo: --------------------- 20:41:13.935 [ 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/paymentsheet-timeout.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:41:18.948 [ INFO] maestro.Maestro.invoke: Getting device info 20:41:19.167 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 20:41:19.230 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 20:41:19.233 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 20:41:19.236 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 20:41:19.237 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 20:41:19.239 [ 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:41:19.240 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 20:41:19.240 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 20:41:19.241 [ 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:41:21.798 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 20:41:23.102 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 20:41:23.104 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 20:41:23.106 [ 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:41:31.714 [ 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:41:32.659 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:41:32.661 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 20:41:32.662 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:41:32.662 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:41:34.873 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:41:34.873 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 20:41:34.875 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 20:41:34.876 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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:41:35.093 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 20:41:36.134 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:41:36.134 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 20:41:36.134 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:41:36.134 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:41:39.130 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:41:39.132 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 20:41:39.133 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 20:41:39.135 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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:41:39.201 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 20:41:39.202 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 20:41:39.202 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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:41:39.273 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 20:41:40.199 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:41:40.200 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 20:41:40.200 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:41:40.200 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:41:44.345 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:41:44.345 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 20:41:44.346 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 20:41:44.347 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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:41:47.019 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 20:41:47.021 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 20:41:47.023 [ 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:41:47.070 [ 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:41:47.996 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 20:41:47.997 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 20:41:47.997 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 20:41:47.997 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 20:41:49.202 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 20:41:49.203 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 20:41:49.552 [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) 20:41:49.552 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 20:41:54.564 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 20:41:54.564 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 20:41:54.564 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 20:41:54.564 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 20:41:54.565 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 20:41:54.565 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 20:41:55.085 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 20:41:55.086 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 20:41:55.086 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 20:41:55.087 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 20:41:55.091 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 22:18:53.604 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 22:18:53.605 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 22:18:53.696 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 22:18:53.700 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 22:18:53.704 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 22:18:53.704 [ INFO] MAESTRO.logSystemInfo: --------------------- 22:18:54.151 [ 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/paymentsheet-timeout.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:18:55.637 [ INFO] maestro.Maestro.invoke: Getting device info 22:18:55.784 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 22:18:55.829 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 22:18:55.831 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 22:18:55.833 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 22:18:55.834 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 22:18:55.837 [ 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:18:55.838 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 22:18:55.838 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 22:18:55.840 [ 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:18:56.532 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 22:18:56.637 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 22:18:56.638 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 22:18:56.638 [ 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:18:58.470 [ 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:18:59.300 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:18:59.303 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 22:18:59.303 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:18:59.303 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:19:00.630 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:19:00.631 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 22:19:00.632 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 22:19:00.634 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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:19:00.675 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 22:19:01.502 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:19:01.503 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 22:19:01.503 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:19:01.503 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:19:02.689 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:19:02.690 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 22:19:02.692 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 22:19:02.693 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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:19:04.521 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 22:19:04.523 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 22:19:04.524 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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:19:04.559 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 22:19:05.344 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:19:05.344 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 22:19:05.344 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:19:05.345 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:19:07.483 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:19:07.484 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 22:19:07.485 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 22:19:07.486 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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:19:11.313 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 22:19:11.315 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 22:19:11.316 [ 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:19:11.392 [ 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:19:12.160 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 22:19:12.161 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 22:19:12.161 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 22:19:12.161 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 22:19:13.086 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 22:19:13.087 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 22:19:13.385 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 22:19:18.391 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 22:19:18.392 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 22:19:18.392 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 22:19:18.392 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 22:19:18.393 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 22:19:18.393 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 22:19:18.536 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 22:19:18.537 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 22:19:18.537 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 22:19:18.537 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 22:19:18.540 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 23:00:32.213 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 23:00:32.214 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 23:00:32.394 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 23:00:32.400 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 23:00:32.405 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 23:00:32.405 [ INFO] MAESTRO.logSystemInfo: --------------------- 23:00:32.980 [ 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/paymentsheet-timeout.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)))) 23:00:34.682 [ INFO] maestro.Maestro.invoke: Getting device info 23:00:34.832 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 23:00:34.882 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 23:00:34.884 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 23:00:34.886 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 23:00:34.887 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 23:00:34.891 [ 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) 23:00:34.892 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 23:00:34.892 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 23:00:34.894 [ 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) 23:00:35.651 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 23:00:35.729 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 23:00:35.730 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 23:00:35.731 [ 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) 23:00:37.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)) 23:00:38.039 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 23:00:38.040 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 23:00:38.040 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 23:00:38.041 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 23:00:39.381 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 23:00:39.382 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 23:00:39.383 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 23:00:39.384 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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) 23:00:39.443 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 23:00:40.321 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 23:00:40.321 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 23:00:40.322 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 23:00:40.322 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 23:00:42.357 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 23:00:42.357 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 23:00:42.358 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 23:00:42.360 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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) 23:00:42.386 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 23:00:42.387 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 23:00:42.388 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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) 23:00:42.475 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 23:00:43.284 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 23:00:43.285 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 23:00:43.285 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 23:00:43.285 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 23:00:43.651 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 23:00:43.651 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 23:00:44.103 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by screenshot (d=3.7078032). Proceed. 23:00:44.103 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 23:00:44.103 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 23:00:44.104 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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) 23:00:49.203 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 23:00:49.204 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 23:00:49.205 [ 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) 23:00:49.268 [ 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)) 23:00:50.076 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 23:00:50.076 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 23:00:50.076 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 23:00:50.077 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 23:00:50.885 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 23:00:50.888 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 23:00:51.225 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 23:00:56.227 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 23:00:56.394 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 23:00:56.394 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 23:00:56.394 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 23:00:56.395 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 23:00:56.396 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 11:44:14.314 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 11:44:14.315 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 11:44:14.316 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 11:44:14.316 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 11:44:14.316 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 11:44:14.316 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 11:44:14.316 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 11:44:14.536 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 11:44:14.542 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 11:44:14.546 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 11:44:14.546 [ INFO] MAESTRO.logSystemInfo: --------------------- 11:44:15.169 [ 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/paymentsheet-timeout.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:44:18.818 [ INFO] maestro.Maestro.invoke: Getting device info 11:44:18.991 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 11:44:19.040 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 11:44:19.041 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 11:44:19.044 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 11:44:19.044 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 11:44:19.047 [ 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:44:19.048 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 11:44:19.049 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 11:44:19.050 [ 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:44:20.553 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 11:44:20.807 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 11:44:20.807 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 11:44:20.808 [ 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:44:27.028 [ 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:44:28.037 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:44:28.039 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 11:44:28.040 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:44:28.040 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:44:29.823 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:44:29.824 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 11:44:29.825 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 11:44:29.827 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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:44:30.053 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 11:44:31.020 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:44:31.021 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 11:44:31.021 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:44:31.021 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:44:33.052 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:44:33.053 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 11:44:33.054 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 11:44:33.055 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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:44:33.113 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 11:44:33.114 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 11:44:33.115 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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:44:33.194 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 11:44:34.054 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:44:34.056 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 11:44:34.057 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:44:34.057 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:44:37.567 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:44:37.567 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 11:44:37.568 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 11:44:37.569 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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:44:40.360 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 11:44:40.362 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 11:44:40.363 [ 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:44:40.421 [ 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:44:41.336 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 11:44:41.337 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 11:44:41.337 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 11:44:41.337 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 11:44:42.500 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 11:44:42.500 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 11:44:43.096 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 11:44:48.102 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 11:44:49.015 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 11:44:49.016 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 11:44:49.016 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 11:44:49.016 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 11:44:49.020 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel 17:08:24.777 [ INFO] MAESTRO.logSystemInfo: ---- System Info ---- 17:08:24.778 [ INFO] MAESTRO.logSystemInfo: Maestro Version: 1.41.0 17:08:24.779 [ INFO] MAESTRO.logSystemInfo: CI: Undefined 17:08:24.779 [ INFO] MAESTRO.logSystemInfo: OS Name: Mac OS X 17:08:24.779 [ INFO] MAESTRO.logSystemInfo: OS Version: 15.5 17:08:24.779 [ INFO] MAESTRO.logSystemInfo: Architecture: aarch64 17:08:24.779 [ INFO] MAESTRO.logSystemInfo: Java Version: 17 17:08:24.905 [ INFO] MAESTRO.logSystemInfo: Xcode Version: 16.0 17:08:24.910 [ INFO] MAESTRO.logSystemInfo: Flutter Version: Undefined 17:08:24.913 [ INFO] MAESTRO.logSystemInfo: Flutter Channel: Undefined 17:08:24.913 [ INFO] MAESTRO.logSystemInfo: --------------------- 17:08:25.398 [ 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/paymentsheet-timeout.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:08:27.023 [ INFO] maestro.Maestro.invoke: Getting device info 17:08:27.174 [ INFO] maestro.Maestro.invoke: Got device info: DeviceInfo(platform=ANDROID, widthPixels=1080, heightPixels=1920, widthGrid=1080, heightGrid=1920) 17:08:27.219 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables RUNNING 17:08:27.221 [ 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-timeout}, label=null, optional=false)), logMessages=[], insight=Insight(message=, level=NONE), aiReasoning=null, labeledCommand=null) 17:08:27.223 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Define variables COMPLETED 17:08:27.224 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration RUNNING 17:08:27.227 [ 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:08:27.228 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Apply configuration COMPLETED 17:08:27.228 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" RUNNING 17:08:27.230 [ 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:08:27.974 [ INFO] maestro.Maestro.launchApp: Launching app com.stripe.react.native 17:08:28.086 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Launch app "${APP_ID}" COMPLETED 17:08:28.087 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" RUNNING 17:08:28.088 [ 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:08:29.981 [ 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)) 17:08:31.212 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:08:31.214 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 285) using hierarchy based logic for wait 17:08:31.214 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:08:31.214 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:08:32.535 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:08:32.535 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Accept a payment" COMPLETED 17:08:32.537 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" RUNNING 17:08:32.538 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=Prebuilt UI (single-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:08:32.622 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=Prebuilt UI (single-step), accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[84,425][1038,482], 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=425, width=954, height=57)) 17:08:33.444 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:08:33.444 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (561, 453) using hierarchy based logic for wait 17:08:33.444 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:08:33.444 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:08:34.870 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:08:34.871 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "Prebuilt UI (single-step)" COMPLETED 17:08:34.873 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible RUNNING 17:08:34.874 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=Checkout, 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:08:34.951 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that "Checkout" is visible COMPLETED 17:08:34.952 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" RUNNING 17:08:34.953 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(tapOnElementCommand=TapOnElementCommand(selector=ElementSelector(textRegex=trigger payment sheet timeout, 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:08:35.025 [ INFO] maestro.Maestro.tap-BUbHBYE: Tapping on element: UiElement(treeNode=TreeNode(attributes={text=trigger payment sheet timeout, accessibilityText=, hintText=, ignoreBoundsFiltering=false, resource-id=, clickable=false, bounds=[255,713][825,770], 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=255, y=713, width=570, height=57)) 17:08:35.807 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:08:35.808 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (540, 741) using hierarchy based logic for wait 17:08:35.808 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:08:35.808 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:08:38.320 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:08:38.321 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "trigger payment sheet timeout" COMPLETED 17:08:38.323 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible RUNNING 17:08:38.324 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible metadata CommandMetadata(numberOfRuns=null, evaluatedCommand=MaestroCommand(assertConditionCommand=AssertConditionCommand(condition=Condition(platform=null, visible=ElementSelector(textRegex=.*Timeout.*, 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:08:41.790 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Assert that ".*Timeout.*" is visible COMPLETED 17:08:41.792 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" RUNNING 17:08:41.794 [ 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:08:41.823 [ 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:08:42.648 [ INFO] maestro.Maestro.tap-BUbHBYE: Refreshed element 17:08:42.648 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Tapping at (894, 1092) using hierarchy based logic for wait 17:08:42.648 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to byte array 17:08:42.648 [TRACE] maestro.utils.ScreenshotUtils.takeScreenshot: Taking screenshot to output sink 17:08:43.529 [ INFO] maestro.Maestro.hierarchyBasedTap-hbl3e4M: Something have changed in the UI judging by view hierarchy. Proceed. 17:08:43.529 [ INFO] maestro.cli.runner.MaestroCommandRunner.invoke: Tap on "OK" COMPLETED 17:08:43.828 [ INFO] maestro.drivers.AndroidDriver.close: [Start] close port forwarder 17:08:48.834 [ INFO] maestro.drivers.AndroidDriver.close: [Done] close port forwarder 17:08:48.835 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port forwarder map 17:08:48.836 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port forwarder map 17:08:48.836 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Remove host port from port to allocation map 17:08:48.836 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Remove host port from port to allocation map 17:08:48.836 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Uninstall driver from device 17:08:48.994 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Uninstall driver from device 17:08:48.995 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Close instrumentation session 17:08:48.995 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Close instrumentation session 17:08:48.995 [ INFO] maestro.drivers.AndroidDriver.close: [Start] Shutdown GRPC channel 17:08:48.999 [ INFO] maestro.drivers.AndroidDriver.close: [Done] Shutdown GRPC channel