call_tool_sync, get_tool_json # --- auto-generated step --@given('I have launched the sample app') def step_impl(context): result = call_tool_sync(context, context.session.call_tool( name="app_launch", arguments={'arguments': None, 'caller': 'behave-automation', 'page_source_file': '', 'summary_only': True} )) result_json = get_tool_json(result) assert result_json.get("status") == "success", f"Expected status to be 'success', got '{result_json.get('status')}', error: '{result_json.get('error')}'" # --- auto-generated step --@when('I input "
[email protected]" in element "login_email_field"') def step_impl(context): result = call_tool_sync(context, context.session.call_tool( name="send_keys", arguments={'caller': 'behave-automation', 'locator_strategy': 'AppiumBy.XPATH', 'locator_value': '//*[@resource-id="login_email_field"]', 'page_source_file': '', 'summary_only': True, 'text': '
[email protected]'} )) result_json = get_tool_json(result) assert result_json.get("status") == "success", f"Expected status to be 'success', got '{result_json.get('status')}', error: '{result_json.get('error')}'" # --- auto-generated step --@step('I input "password" in element "login_password_field"') def step_impl(context): result = call_tool_sync(context, context.session.call_tool( name="send_keys", arguments={'caller': 'behave-automation', 'locator_strategy': 'AppiumBy.XPATH', 'locator_value': '//*[@resource-id="login_password_field"]', 'page_source_file': '', 'summary_only': True, 'text': 'password'} )) result_json = get_tool_json(result) assert result_json.get("status") == "success", f"Expected status to be 'success', got '{result_json.get('status')}', error: '{result_json.get('error')}'" # --- auto-generated step --@step('I tap element "login_submit_button"') def step_impl(context): result = call_tool_sync(context, context.session.call_tool( name="click_element", arguments={'caller': 'behave-automation', 'locator_strategy': 'AppiumBy.XPATH', 'locator_value': '//*[@resource-id="login_submit_button"]', 'page_source_file': '', 'summary_only': True} )) result_json = get_tool_json(result) assert result_json.get("status") == "success", f"Expected status to be 'success', got '{result_json.get('status')}', error: '{result_json.get('error')}'" # --- auto-generated step --@then('I should see element "item_list_screen"') def step_impl(context): result = call_tool_sync(context, context.session.call_tool( name="verify_element_exists", arguments={'caller': 'behave-automation', 'locator_strategy': 'AppiumBy.XPATH', 'locator_value': '//*[@resource-id="item_list_screen"]'} )) result_json = get_tool_json(result) assert result_json.get("status") == "success", f"Expected status to be 'success', got '{result_json.get('status')}', error: '{result_json.get('error')}'" 6