<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.1 (Python 3.14.2 on darwin)" generated="2026-01-07T23:44:06.605418" rpa="false" schemaversion="5">
<suite id="s1" name="LoginChase" source="/Users/agalyaramadoss/repo/ledger/tests/LoginChase.robot">
<kw name="Suite Setup Tasks" type="SETUP">
<kw name="Log Debug Variables">
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-01-07T23:44:06.674820" level="INFO">${debug_pause} = 0</msg>
<var>${debug_pause}</var>
<arg>DEBUG_PAUSE</arg>
<arg>0</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-01-07T23:44:06.674721" elapsed="0.000116"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.675055" level="INFO">${DEBUG_PAUSE} = 0</msg>
<arg>${DEBUG_PAUSE}</arg>
<arg>${debug_pause}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:06.674907" elapsed="0.000169"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-01-07T23:44:06.675181" level="INFO">${username} = durai145</msg>
<var>${username}</var>
<arg>CHASE_USER</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-01-07T23:44:06.675125" elapsed="0.000067"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-01-07T23:44:06.675279" level="INFO">${password} = @Agalya145</msg>
<var>${password}</var>
<arg>CHASE_PASS</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-01-07T23:44:06.675232" elapsed="0.000057"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.675443" level="INFO">${USERNAME} = durai145</msg>
<arg>${USERNAME}</arg>
<arg>${username}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:06.675331" elapsed="0.000130"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.675594" level="INFO">${pw_list} = ['@Agalya145']</msg>
<var>${pw_list}</var>
<arg>${password}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-01-07T23:44:06.675500" elapsed="0.000104"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.675943" level="INFO">${PASSWORD_LIST} = ['@Agalya145']</msg>
<arg>${PASSWORD_LIST}</arg>
<arg>${pw_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:06.675645" elapsed="0.000316"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${USERNAME}' == ''</arg>
<arg>Fail</arg>
<arg>Environment variable CHASE_USER is not set</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676005" elapsed="0.000134"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${PASSWORD}' == ''</arg>
<arg>Fail</arg>
<arg>Environment variable CHASE_PASS is not set</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676184" elapsed="0.000101"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>DEBUG_PAUSE=${DEBUG_PAUSE}</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676325" elapsed="0.000109"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.676602" level="INFO">DEBUG_PAUSE=0</msg>
<arg>DEBUG_PAUSE=${DEBUG_PAUSE}</arg>
<arg>INFO</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676487" elapsed="0.000132"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>USERNAME=${USERNAME}</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676657" elapsed="0.000102"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${PASSWORD}' == ''</arg>
<arg>Log To Console</arg>
<arg>PASSWORD is empty</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:06.676816" elapsed="0.000094"/>
</kw>
<kw name="Run Keyword Unless" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.676961" level="WARN">Keyword 'BuiltIn.Run Keyword Unless' is deprecated. </msg>
<kw name="Log To Console" owner="BuiltIn">
<arg>PASSWORD is set</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:06.677121" elapsed="0.000075"/>
</kw>
<arg>'${PASSWORD}' == ''</arg>
<arg>Log To Console</arg>
<arg>PASSWORD is set</arg>
<doc>*DEPRECATED since RF 5.0. Use native IF/ELSE or `Run Keyword If` instead.*</doc>
<status status="PASS" start="2026-01-07T23:44:06.676949" elapsed="0.000278"/>
</kw>
<kw name="Get Environment Variable" owner="OperatingSystem">
<msg time="2026-01-07T23:44:06.677349" level="INFO">${profile_dir} = /Users/agalyaramadoss/repo/ledger/results/chrome-profile</msg>
<var>${profile_dir}</var>
<arg>CHROME_USER_DATA_DIR</arg>
<arg>${EXECDIR}/${OUTPUTDIR}/chrome-profile</arg>
<doc>Returns the value of an environment variable with the given name.</doc>
<status status="PASS" start="2026-01-07T23:44:06.677270" elapsed="0.000090"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:06.677658" level="INFO">${CHROME_USER_DATA_DIR} = /Users/agalyaramadoss/repo/ledger/results/chrome-profile</msg>
<arg>${CHROME_USER_DATA_DIR}</arg>
<arg>${profile_dir}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:06.677400" elapsed="0.000275"/>
</kw>
<kw name="Create Directory" owner="OperatingSystem">
<msg time="2026-01-07T23:44:06.677773" level="INFO" html="true">Directory '<a href="file:///Users/agalyaramadoss/repo/ledger/results/chrome-profile">/Users/agalyaramadoss/repo/ledger/results/chrome-profile</a>' already exists.</msg>
<arg>${CHROME_USER_DATA_DIR}</arg>
<doc>Creates the specified directory.</doc>
<status status="PASS" start="2026-01-07T23:44:06.677716" elapsed="0.000077"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:06.674407" elapsed="0.003411"/>
</kw>
<kw name="Open Browser To Chase">
<kw name="Open Browser" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:06.678030" level="INFO">Opening browser 'chrome' to base url 'https://www.chase.com'.</msg>
<arg>${URL}</arg>
<arg>chrome</arg>
<arg>options=add_argument("--user-data-dir=${CHROME_USER_DATA_DIR}")</arg>
<doc>Opens a new browser instance to the optional ``url``.</doc>
<status status="PASS" start="2026-01-07T23:44:06.677935" elapsed="0.961456"/>
</kw>
<kw name="Maximize Browser Window" owner="SeleniumLibrary">
<doc>Maximizes current browser window.</doc>
<status status="PASS" start="2026-01-07T23:44:07.639720" elapsed="0.007694"/>
</kw>
<kw name="Wait Until Page Contains Element" owner="SeleniumLibrary">
<arg>id=signin-button</arg>
<arg>timeout=20s</arg>
<doc>Waits until the element ``locator`` appears on the current page.</doc>
<status status="PASS" start="2026-01-07T23:44:07.647518" elapsed="0.005338"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:06.677867" elapsed="0.975054"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:06.674262" elapsed="0.978687"/>
</kw>
<test id="s1-t1" name="Login To Chase" line="16">
<kw name="Click Sign In">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Click Element" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:07.653775" level="INFO">Clicking element 'id=signin-button'.</msg>
<msg time="2026-01-07T23:44:07.749204" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="selenium-screenshot-36.png"><img src="selenium-screenshot-36.png" width="800px"></a></msg>
<msg time="2026-01-07T23:44:07.749350" level="FAIL">ElementNotInteractableException: Message: element not interactable
(Session info: chrome=143.0.7499.170); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#elementnotinteractableexception
Stacktrace:
0 chromedriver 0x0000000104d0fdfc cxxbridge1$str$ptr + 3031016
1 chromedriver 0x0000000104d07cb8 cxxbridge1$str$ptr + 2997924
2 chromedriver 0x00000001048029f4 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 73780
3 chromedriver 0x000000010484aaa4 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 368868
4 chromedriver 0x000000010483fd64 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 324516
5 chromedriver 0x000000010483f808 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 323144
6 chromedriver 0x000000010488aa28 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 630888
7 chromedriver 0x000000010483e22c _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 317548
8 chromedriver 0x0000000104cd4194 cxxbridge1$str$ptr + 2786176
9 chromedriver 0x0000000104cd7900 cxxbridge1$str$ptr + 2800364
10 chromedriver 0x0000000104cb442c cxxbridge1$str$ptr + 2655768
11 chromedriver 0x0000000104cd8170 cxxbridge1$str$ptr + 2802524
12 chromedriver 0x0000000104ca4e10 cxxbridge1$str$ptr + 2592764
13 chromedriver 0x0000000104cf714c cxxbridge1$str$ptr + 2929464
14 chromedriver 0x0000000104cf72cc cxxbridge1$str$ptr + 2929848
15 chromedriver 0x0000000104d07910 cxxbridge1$str$ptr + 2996988
16 libsystem_pthread.dylib 0x0000000197856f94 _pthread_start + 136
17 libsystem_pthread.dylib 0x0000000197851d34 thread_start + 8
</msg>
<arg>id=signin-button</arg>
<doc>Click the element identified by ``locator``.</doc>
<status status="FAIL" start="2026-01-07T23:44:07.653690" elapsed="0.096836">ElementNotInteractableException: Message: element not interactable
(Session info: chrome=143.0.7499.170); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#elementnotinteractableexception
Stacktrace:
0 chromedriver 0x0000000104d0fdfc cxxbridge1$str$ptr + 3031016
1 chromedriver 0x0000000104d07cb8 cxxbridge1$str$ptr + 2997924
2 chromedriver 0x00000001048029f4 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 73780
3 chromedriver 0x000000010484aaa4 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 368868
4 chromedriver 0x000000010483fd64 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 324516
5 chromedriver 0x000000010483f808 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 323144
6 chromedriver 0x000000010488aa28 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 630888
7 chromedriver 0x000000010483e22c _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 317548
8 chromedriver 0x0000000104cd4194 cxxbridge1$str$ptr + 2786176
9 chromedriver 0x0000000104cd7900 cxxbridge1$str$ptr + 2800364
10 chromedriver 0x0000000104cb442c cxxbridge1$str$ptr + 2655768
11 chromedriver 0x0000000104cd8170 cxxbridge1$str$ptr + 2802524
12 chromedriver 0x0000000104ca4e10 cxxbridge1$str$ptr + 2592764
13 chromedriver 0x0000000104cf714c cxxbridge1$str$ptr + 2929464
14 chromedriver 0x0000000104cf72cc cxxbridge1$str$ptr + 2929848
15 chromedriver 0x0000000104d07910 cxxbridge1$str$ptr + 2996988
16 libsystem_pthread.dylib 0x0000000197856f94 _pthread_start + 136
17 libsystem_pthread.dylib 0x0000000197851d34 thread_start + 8
</status>
</kw>
<msg time="2026-01-07T23:44:07.750621" level="INFO">${clicked} = False</msg>
<var>${clicked}</var>
<arg>Click Element</arg>
<arg>id=signin-button</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-01-07T23:44:07.653474" elapsed="0.097160"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:07.751151" level="INFO">Executing JavaScript:
var el=document.getElementById('signin-button'); if(el){el.click();}
Without any arguments.</msg>
<arg>var el=document.getElementById('signin-button'); if(el){el.click();}</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-01-07T23:44:07.750959" elapsed="0.426118"/>
</kw>
<arg>'${clicked}' == 'False'</arg>
<arg>Execute JavaScript</arg>
<arg>var el=document.getElementById('signin-button'); if(el){el.click();}</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:07.750723" elapsed="0.426541"/>
</kw>
<kw name="Wait Until Element Is Visible" owner="SeleniumLibrary">
<arg>xpath=//input[contains(@id,'user') or contains(@name,'user') or contains(@placeholder,'Username')]</arg>
<arg>timeout=20s</arg>
<doc>Waits until the element ``locator`` is visible.</doc>
<status status="PASS" start="2026-01-07T23:44:08.177466" elapsed="0.782589"/>
</kw>
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:08.960349" elapsed="0.000207"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:08.960194" elapsed="0.000402"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:07.653350" elapsed="1.307268"/>
</kw>
<kw name="Input Username">
<kw name="Get Value" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:08.966587" level="INFO">${existing} = durai145</msg>
<var>${existing}</var>
<arg>xpath=//input[contains(@id,'user') or contains(@name,'user') or contains(@placeholder,'Username')]</arg>
<doc>Returns the value attribute of the element identified by ``locator``.</doc>
<status status="PASS" start="2026-01-07T23:44:08.960837" elapsed="0.005770"/>
</kw>
<kw name="Strip String" owner="String">
<msg time="2026-01-07T23:44:08.966786" level="INFO">${existing} = durai145</msg>
<var>${existing}</var>
<arg>${existing}</arg>
<doc>Remove leading and/or trailing whitespaces from the given string.</doc>
<status status="PASS" start="2026-01-07T23:44:08.966683" elapsed="0.000116"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${existing}' == ''</arg>
<arg>Input Text</arg>
<arg>xpath=//input[contains(@id,'user') or contains(@name,'user') or contains(@placeholder,'Username')]</arg>
<arg>${USERNAME}</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:08.966851" elapsed="0.000168"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${existing}' == ''</arg>
<arg>Capture Page Screenshot</arg>
<arg>${OUTPUTDIR}/after_username.png</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:08.967074" elapsed="0.000207"/>
</kw>
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:08.967444" elapsed="0.000116"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:08.967347" elapsed="0.000245"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:08.960727" elapsed="0.006886"/>
</kw>
<kw name="Input Password">
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:08.968008" level="INFO">${pw_to_use} = @Agalya145</msg>
<var>${pw_to_use}</var>
<arg>${PASSWORD_LIST}[0]</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-01-07T23:44:08.967857" elapsed="0.000166"/>
</kw>
<kw name="Input Text" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:08.968178" level="INFO">Typing text '@Agalya145' into text field 'xpath=//input[contains(@id,'pass') or contains(@name,'pass') or contains(@placeholder,'Password')]'.</msg>
<arg>xpath=//input[contains(@id,'pass') or contains(@name,'pass') or contains(@placeholder,'Password')]</arg>
<arg>${pw_to_use}</arg>
<doc>Types the given ``text`` into the text field identified by ``locator``.</doc>
<status status="PASS" start="2026-01-07T23:44:08.968077" elapsed="0.170608"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:09.795029" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="results/after_password.png"><img src="results/after_password.png" width="800px"></a></msg>
<arg>${OUTPUTDIR}/after_password.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-01-07T23:44:09.139009" elapsed="0.656086"/>
</kw>
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:09.795337" elapsed="0.000181"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:09.795207" elapsed="0.000343"/>
</kw>
<kw name="Click Remember Me">
<kw name="Run Keyword And Return Status" owner="BuiltIn">
<kw name="Click Element" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:09.795966" level="INFO">Clicking element 'xpath=//input[@type='checkbox' and (contains(@id,'remember') or contains(@name,'remember') or contains(@aria-label,'Remember') or contains(@placeholder,'Remember') or contains(@data-testid,'remember'))]'.</msg>
<msg time="2026-01-07T23:44:11.497293" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="selenium-screenshot-37.png"><img src="selenium-screenshot-37.png" width="800px"></a></msg>
<msg time="2026-01-07T23:44:11.497433" level="FAIL">ElementClickInterceptedException: Message: element click intercepted: Element <input type="checkbox" class="fej7qqje8jyqzn" aria-invalid="false" aria-disabled="false" data-testid="remember-me" id="rememberMe" readonly="" checked=""> is not clickable at point (475, 421). Other element would receive the click: <rect x="2" y="2" width="20" height="20" rx="3" fill="inherit"></rect>
(Session info: chrome=143.0.7499.170); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#elementclickinterceptedexception
Stacktrace:
0 chromedriver 0x0000000104d0fdfc cxxbridge1$str$ptr + 3031016
1 chromedriver 0x0000000104d07cb8 cxxbridge1$str$ptr + 2997924
2 chromedriver 0x0000000104802b90 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 74192
3 chromedriver 0x000000010484f500 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 387904
4 chromedriver 0x000000010484dae0 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 381216
5 chromedriver 0x000000010484b950 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 372624
6 chromedriver 0x000000010484ad60 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 369568
7 chromedriver 0x000000010483fd64 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 324516
8 chromedriver 0x000000010483f808 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 323144
9 chromedriver 0x000000010488aa28 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 630888
10 chromedriver 0x000000010483e22c _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 317548
11 chromedriver 0x0000000104cd4194 cxxbridge1$str$ptr + 2786176
12 chromedriver 0x0000000104cd7900 cxxbridge1$str$ptr + 2800364
13 chromedriver 0x0000000104cb442c cxxbridge1$str$ptr + 2655768
14 chromedriver 0x0000000104cd8170 cxxbridge1$str$ptr + 2802524
15 chromedriver 0x0000000104ca4e10 cxxbridge1$str$ptr + 2592764
16 chromedriver 0x0000000104cf714c cxxbridge1$str$ptr + 2929464
17 chromedriver 0x0000000104cf72cc cxxbridge1$str$ptr + 2929848
18 chromedriver 0x0000000104d07910 cxxbridge1$str$ptr + 2996988
19 libsystem_pthread.dylib 0x0000000197856f94 _pthread_start + 136
20 libsystem_pthread.dylib 0x0000000197851d34 thread_start + 8
</msg>
<arg>xpath=//input[@type='checkbox' and (contains(@id,'remember') or contains(@name,'remember') or contains(@aria-label,'Remember') or contains(@placeholder,'Remember') or contains(@data-testid,'remember'))]</arg>
<doc>Click the element identified by ``locator``.</doc>
<status status="FAIL" start="2026-01-07T23:44:09.795821" elapsed="1.702157">ElementClickInterceptedException: Message: element click intercepted: Element <input type="checkbox" class="fej7qqje8jyqzn" aria-invalid="false" aria-disabled="false" data-testid="remember-me" id="rememberMe" readonly="" checked=""> is not clickable at point (475, 421). Other element would receive the click: <rect x="2" y="2" width="20" height="20" rx="3" fill="inherit"></rect>
(Session info: chrome=143.0.7499.170); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#elementclickinterceptedexception
Stacktrace:
0 chromedriver 0x0000000104d0fdfc cxxbridge1$str$ptr + 3031016
1 chromedriver 0x0000000104d07cb8 cxxbridge1$str$ptr + 2997924
2 chromedriver 0x0000000104802b90 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 74192
3 chromedriver 0x000000010484f500 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 387904
4 chromedriver 0x000000010484dae0 _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 381216
5 chromedriver 0x000000010484b950 _RNvCsgXDX2mvAJA...
[ Message content over the limit has been removed. ]
... _RNvCsgXDX2mvAJAg_7___rustc35___rust_no_alloc_shim_is_unstable_v2 + 317548
11 chromedriver 0x0000000104cd4194 cxxbridge1$str$ptr + 2786176
12 chromedriver 0x0000000104cd7900 cxxbridge1$str$ptr + 2800364
13 chromedriver 0x0000000104cb442c cxxbridge1$str$ptr + 2655768
14 chromedriver 0x0000000104cd8170 cxxbridge1$str$ptr + 2802524
15 chromedriver 0x0000000104ca4e10 cxxbridge1$str$ptr + 2592764
16 chromedriver 0x0000000104cf714c cxxbridge1$str$ptr + 2929464
17 chromedriver 0x0000000104cf72cc cxxbridge1$str$ptr + 2929848
18 chromedriver 0x0000000104d07910 cxxbridge1$str$ptr + 2996988
19 libsystem_pthread.dylib 0x0000000197856f94 _pthread_start + 136
20 libsystem_pthread.dylib 0x0000000197851d34 thread_start + 8</status>
</kw>
<msg time="2026-01-07T23:44:11.498061" level="INFO">${clicked} = False</msg>
<var>${clicked}</var>
<arg>Click Element</arg>
<arg>xpath=//input[@type='checkbox' and (contains(@id,'remember') or contains(@name,'remember') or contains(@aria-label,'Remember') or contains(@placeholder,'Remember') or contains(@data-testid,'remember'))]</arg>
<doc>Runs the specified keyword and returns the status as a Boolean value.</doc>
<status status="PASS" start="2026-01-07T23:44:09.795681" elapsed="1.702392"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<kw name="Click Element" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:11.498444" level="INFO">Clicking element 'xpath=//label[contains(., 'Remember') or contains(., 'Remember me')]'.</msg>
<arg>xpath=//label[contains(., 'Remember') or contains(., 'Remember me')]</arg>
<doc>Click the element identified by ``locator``.</doc>
<status status="PASS" start="2026-01-07T23:44:11.498362" elapsed="0.030572"/>
</kw>
<arg>'${clicked}' == 'False'</arg>
<arg>Click Element</arg>
<arg>xpath=//label[contains(., 'Remember') or contains(., 'Remember me')]</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:11.498152" elapsed="0.030861"/>
</kw>
<kw name="Run Keyword If" owner="BuiltIn">
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:11.534209" level="INFO">Executing JavaScript:
var el=document.querySelector("input[type='checkbox']"); if(el && (el.id.indexOf('remember')>-1 || el.name.indexOf('remember')>-1)){el.click();}
Without any arguments.</msg>
<arg>var el=document.querySelector("input[type='checkbox']"); if(el && (el.id.indexOf('remember')>-1 || el.name.indexOf('remember')>-1)){el.click();}</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-01-07T23:44:11.533768" elapsed="0.023887"/>
</kw>
<arg>'${clicked}' == 'False'</arg>
<arg>Execute JavaScript</arg>
<arg>var el=document.querySelector("input[type='checkbox']"); if(el && (el.id.indexOf('remember')>-1 || el.name.indexOf('remember')>-1)){el.click();}</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:11.530823" elapsed="0.026901"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:09.795602" elapsed="1.762169"/>
</kw>
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:11.558026" elapsed="0.000204"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:11.557869" elapsed="0.000395"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:08.967728" elapsed="2.590557"/>
</kw>
<kw name="Submit Login">
<kw name="Click Button" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:11.558629" level="INFO">Clicking button 'xpath=//button[contains(., 'Sign in') or contains(., 'Sign In')]'.</msg>
<arg>xpath=//button[contains(., 'Sign in') or contains(., 'Sign In')]</arg>
<doc>Clicks the button identified by ``locator``.</doc>
<status status="PASS" start="2026-01-07T23:44:11.558508" elapsed="0.049554"/>
</kw>
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:11.608356" elapsed="0.000206"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:11.608203" elapsed="0.000398"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:11.558388" elapsed="0.050237"/>
</kw>
<kw name="Wait For Account Dashboard">
<kw name="Wait Until Page Contains Element" owner="SeleniumLibrary">
<arg>xpath=//div[@role='heading' and @aria-level='2' and text()='Bank accounts']</arg>
<arg>timeout=15s</arg>
<doc>Waits until the element ``locator`` appears on the current page.</doc>
<status status="PASS" start="2026-01-07T23:44:11.608826" elapsed="1.084801"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:12.828325" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="results/Dashboard.png"><img src="results/Dashboard.png" width="800px"></a></msg>
<arg>${OUTPUTDIR}/Dashboard.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-01-07T23:44:12.693801" elapsed="0.134588"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:11.608720" elapsed="1.219730"/>
</kw>
<kw name="Get Checking Account Info">
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:12.828841" elapsed="0.000208"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:12.828738" elapsed="0.000500"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:12.829959" level="INFO">Executing JavaScript:
return (function() { var accounts = []; var tiles = document.querySelectorAll('[data-testid="accountTile"]'); tiles.forEach(function(tile) { var btn = tile.querySelector('[data-testid="accounts-name-link"] mds-button'); var accountName = btn ? btn.getAttribute('text') || btn.textContent : 'N/A'; var dataItems = tile.querySelectorAll('[id*="dataItem"] [data-testid="dataItem-value"]'); var currentBalance = 'N/A'; var deposits = 'N/A'; var withdrawals = 'N/A'; dataItems.forEach(function(item) { var parent = item.closest('[id*="dataItem"]'); if (parent && parent.id.includes('availableBalance')) { currentBalance = item.textContent.trim(); } else if (parent && parent.id.includes('totalDeposits')) { deposits = item.textContent.trim(); } else if (parent && parent.id.includes('totalWithdrawals')) { withdrawals = item.textContent.trim(); } }); accounts.push({name: accountName, currentBalance: currentBalance, deposits: deposits, withdrawals: withdrawals}); }); return JSON.stringify(accounts); })();
Without any arguments.</msg>
<msg time="2026-01-07T23:44:12.866698" level="INFO">${all_accounts} = [{"name":"DURAISA (...3000)","currentBalance":"$81.19","deposits":"Not available","withdrawals":"Not available"},{"name":"DURAISB (...1220)","currentBalance":"$75.00","deposits":"N/A","withdrawals":"N...</msg>
<var>${all_accounts}</var>
<arg>return (function() { var accounts = []; var tiles = document.querySelectorAll('[data-testid="accountTile"]'); tiles.forEach(function(tile) { var btn = tile.querySelector('[data-testid="accounts-name-link"] mds-button'); var accountName = btn ? btn.getAttribute('text') || btn.textContent : 'N/A'; var dataItems = tile.querySelectorAll('[id*="dataItem"] [data-testid="dataItem-value"]'); var currentBalance = 'N/A'; var deposits = 'N/A'; var withdrawals = 'N/A'; dataItems.forEach(function(item) { var parent = item.closest('[id*="dataItem"]'); if (parent && parent.id.includes('availableBalance')) { currentBalance = item.textContent.trim(); } else if (parent && parent.id.includes('totalDeposits')) { deposits = item.textContent.trim(); } else if (parent && parent.id.includes('totalWithdrawals')) { withdrawals = item.textContent.trim(); } }); accounts.push({name: accountName, currentBalance: currentBalance, deposits: deposits, withdrawals: withdrawals}); }); return JSON.stringify(accounts); })();</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-01-07T23:44:12.829492" elapsed="0.037235"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>All Bank Accounts: ${all_accounts}</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:12.866837" elapsed="0.000207"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:12.867491" level="INFO">${ALL_BANK_ACCOUNTS} = [{"name":"DURAISA (...3000)","currentBalance":"$81.19","deposits":"Not available","withdrawals":"Not available"},{"name":"DURAISB (...1220)","currentBalance":"$75.00","deposits":"N/A","withdrawals":"N...</msg>
<arg>${ALL_BANK_ACCOUNTS}</arg>
<arg>${all_accounts}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:12.867117" elapsed="0.000403"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:12.997938" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="results/bank_accounts.png"><img src="results/bank_accounts.png" width="800px"></a></msg>
<arg>${OUTPUTDIR}/bank_accounts.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-01-07T23:44:12.867581" elapsed="0.130448"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:12.828596" elapsed="0.169508"/>
</kw>
<kw name="Get Credit Card Info">
<kw name="Wait For Input">
<kw name="Run Keyword If" owner="BuiltIn">
<arg>'${DEBUG_PAUSE}' == '1'</arg>
<arg>Sleep</arg>
<arg>20s</arg>
<doc>Runs the given keyword with the given arguments, if ``condition`` is true.</doc>
<status status="PASS" start="2026-01-07T23:44:12.998977" elapsed="0.000217"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:12.998701" elapsed="0.000532"/>
</kw>
<kw name="Execute Javascript" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:12.999492" level="INFO">Executing JavaScript:
return (function() { var cards = []; var tiles = document.querySelectorAll('[class*="card"], [class*="credit-card"], [data-testid*="creditCard"]'); if (tiles.length === 0) { tiles = document.querySelectorAll('[class*="account-tile"]'); } tiles.forEach(function(tile) { var hasCurrentBalance = tile.querySelector('[id*="currentBalance-dataItem"]'); if (hasCurrentBalance) { var btn = tile.querySelector('[data-testid="accounts-name-link"] mds-button'); var cardName = btn ? btn.getAttribute('text') || btn.textContent : 'N/A'; var balanceEl = tile.querySelector('[id*="currentBalance-dataItem"] [data-testid="dataItem-value"]'); var currentBalance = balanceEl ? balanceEl.textContent.trim() : 'N/A'; var minPaymentEl = tile.querySelector('[id*="minimumPaymentAmount-dataItem"] [data-testid="dataItem-value"]'); var minimumPayment = minPaymentEl ? minPaymentEl.textContent.trim() : 'N/A'; var statementBalanceEl = tile.querySelector('[id*="statementBalance-dataItem"] [data-testid="dataItem-value"]'); var statementBalance = statementBalanceEl ? statementBalanceEl.textContent.trim() : 'N/A'; cards.push({name: cardName, currentBalance: currentBalance, minimumPayment: minimumPayment, statementBalance: statementBalance}); } }); return JSON.stringify(cards); })();
Without any arguments.</msg>
<msg time="2026-01-07T23:44:13.043944" level="INFO">${credit_cards} = []</msg>
<var>${credit_cards}</var>
<arg>return (function() { var cards = []; var tiles = document.querySelectorAll('[class*="card"], [class*="credit-card"], [data-testid*="creditCard"]'); if (tiles.length === 0) { tiles = document.querySelectorAll('[class*="account-tile"]'); } tiles.forEach(function(tile) { var hasCurrentBalance = tile.querySelector('[id*="currentBalance-dataItem"]'); if (hasCurrentBalance) { var btn = tile.querySelector('[data-testid="accounts-name-link"] mds-button'); var cardName = btn ? btn.getAttribute('text') || btn.textContent : 'N/A'; var balanceEl = tile.querySelector('[id*="currentBalance-dataItem"] [data-testid="dataItem-value"]'); var currentBalance = balanceEl ? balanceEl.textContent.trim() : 'N/A'; var minPaymentEl = tile.querySelector('[id*="minimumPaymentAmount-dataItem"] [data-testid="dataItem-value"]'); var minimumPayment = minPaymentEl ? minPaymentEl.textContent.trim() : 'N/A'; var statementBalanceEl = tile.querySelector('[id*="statementBalance-dataItem"] [data-testid="dataItem-value"]'); var statementBalance = statementBalanceEl ? statementBalanceEl.textContent.trim() : 'N/A'; cards.push({name: cardName, currentBalance: currentBalance, minimumPayment: minimumPayment, statementBalance: statementBalance}); } }); return JSON.stringify(cards); })();</arg>
<doc>Executes the given JavaScript code with possible arguments.</doc>
<status status="PASS" start="2026-01-07T23:44:12.999289" elapsed="0.044684"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>All Credit Cards: ${credit_cards}</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:13.044083" elapsed="0.000224"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.045175" level="INFO">${ALL_CREDIT_CARDS} = []</msg>
<arg>${ALL_CREDIT_CARDS}</arg>
<arg>${credit_cards}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-01-07T23:44:13.044476" elapsed="0.000782"/>
</kw>
<kw name="Capture Page Screenshot" owner="SeleniumLibrary">
<msg time="2026-01-07T23:44:13.204077" level="INFO" html="true"></td></tr><tr><td colspan="3"><a href="results/credit_cards.png"><img src="results/credit_cards.png" width="800px"></a></msg>
<arg>${OUTPUTDIR}/credit_cards.png</arg>
<doc>Takes a screenshot of the current page and embeds it into a log file.</doc>
<status status="PASS" start="2026-01-07T23:44:13.045428" elapsed="0.158715"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:12.998361" elapsed="0.205843"/>
</kw>
<kw name="Save Account Data">
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-01-07T23:44:13.204942" level="INFO">${timestamp} = 2026-01-07 23:44:13</msg>
<var>${timestamp}</var>
<arg>result_format=%Y-%m-%d %H:%M:%S</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="PASS" start="2026-01-07T23:44:13.204719" elapsed="0.000237"/>
</kw>
<kw name="Set Variable" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.205257" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
</msg>
<var>${file_content}</var>
<arg>Account Data (${timestamp})\n\n=== BANK ACCOUNTS ===\n</arg>
<doc>Returns the given values which can then be assigned to a variables.</doc>
<status status="PASS" start="2026-01-07T23:44:13.205026" elapsed="0.000250"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.205570" level="INFO">${bank_accounts} = [{'name': 'DURAISA (...3000)', 'currentBalance': '$81.19', 'deposits': 'Not available', 'withdrawals': 'Not available'}, {'name': 'DURAISB (...1220)', 'currentBalance': '$75.00', 'deposits': 'N/A', 'w...</msg>
<var>${bank_accounts}</var>
<arg>json.loads("""${ALL_BANK_ACCOUNTS}""")</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-01-07T23:44:13.205338" elapsed="0.000253"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.205980" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Account ---\nName: ${account}[name]\nCurrent Balance: ${account}[currentBalance]\nDeposits This Month: ${account}[deposits]\nWithdrawals This Month: ${account}[withdrawals]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.205801" elapsed="0.000193"/>
</kw>
<var name="${account}">{'name': 'DURAISA (...3000)', 'currentBalance': '$81.19', 'deposits': 'Not available', 'withdrawals': 'Not available'}</var>
<status status="PASS" start="2026-01-07T23:44:13.205749" elapsed="0.000270"/>
</iter>
<iter>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.206266" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
-...</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Account ---\nName: ${account}[name]\nCurrent Balance: ${account}[currentBalance]\nDeposits This Month: ${account}[deposits]\nWithdrawals This Month: ${account}[withdrawals]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.206116" elapsed="0.000163"/>
</kw>
<var name="${account}">{'name': 'DURAISB (...1220)', 'currentBalance': '$75.00', 'deposits': 'N/A', 'withdrawals': 'N/A'}</var>
<status status="PASS" start="2026-01-07T23:44:13.206077" elapsed="0.000224"/>
</iter>
<iter>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.206520" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
-...</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Account ---\nName: ${account}[name]\nCurrent Balance: ${account}[currentBalance]\nDeposits This Month: ${account}[deposits]\nWithdrawals This Month: ${account}[withdrawals]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.206375" elapsed="0.000158"/>
</kw>
<var name="${account}">{'name': 'Prime Visa (...5228)', 'currentBalance': 'N/A', 'deposits': 'N/A', 'withdrawals': 'N/A'}</var>
<status status="PASS" start="2026-01-07T23:44:13.206341" elapsed="0.000212"/>
</iter>
<iter>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.206801" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
-...</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Account ---\nName: ${account}[name]\nCurrent Balance: ${account}[currentBalance]\nDeposits This Month: ${account}[deposits]\nWithdrawals This Month: ${account}[withdrawals]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.206620" elapsed="0.000197"/>
</kw>
<var name="${account}">{'name': 'Freedom (...3135)', 'currentBalance': 'N/A', 'deposits': 'N/A', 'withdrawals': 'N/A'}</var>
<status status="PASS" start="2026-01-07T23:44:13.206590" elapsed="0.000250"/>
</iter>
<iter>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.207095" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
-...</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Account ---\nName: ${account}[name]\nCurrent Balance: ${account}[currentBalance]\nDeposits This Month: ${account}[deposits]\nWithdrawals This Month: ${account}[withdrawals]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.206928" elapsed="0.000189"/>
</kw>
<var name="${account}">{'name': 'Freedom Unlimited (...8616)', 'currentBalance': 'N/A', 'deposits': 'N/A', 'withdrawals': 'N/A'}</var>
<status status="PASS" start="2026-01-07T23:44:13.206887" elapsed="0.000253"/>
</iter>
<var>${account}</var>
<value>@{bank_accounts}</value>
<status status="PASS" start="2026-01-07T23:44:13.205646" elapsed="0.001514"/>
</for>
<kw name="Catenate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.207348" level="INFO">${file_content} = Account Data (2026-01-07 23:44:13)
=== BANK ACCOUNTS ===
--- Account ---
Name: DURAISA (...3000)
Current Balance: $81.19
Deposits This Month: Not available
Withdrawals This Month: Not available
-...</msg>
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n\n=== CREDIT CARDS ===\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="PASS" start="2026-01-07T23:44:13.207216" elapsed="0.000145"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.207577" level="INFO">${credit_cards} = []</msg>
<var>${credit_cards}</var>
<arg>json.loads("""${ALL_CREDIT_CARDS}""")</arg>
<arg>json</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="PASS" start="2026-01-07T23:44:13.207408" elapsed="0.000182"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Catenate" owner="BuiltIn">
<var>${file_content}</var>
<arg>${file_content}</arg>
<arg>\n--- Credit Card ---\nName: ${card}[name]\nCurrent Balance: ${card}[currentBalance]\nMinimum Payment: ${card}[minimumPayment]\nStatement Balance: ${card}[statementBalance]\n</arg>
<doc>Catenates the given items together and returns the resulted string.</doc>
<status status="NOT RUN" start="2026-01-07T23:44:13.207720" elapsed="0.000012"/>
</kw>
<var name="${card}"/>
<status status="NOT RUN" start="2026-01-07T23:44:13.207684" elapsed="0.000068"/>
</iter>
<var>${card}</var>
<value>@{credit_cards}</value>
<status status="NOT RUN" start="2026-01-07T23:44:13.207622" elapsed="0.000146"/>
</for>
<kw name="Create File" owner="OperatingSystem">
<msg time="2026-01-07T23:44:13.208097" level="INFO" html="true">Created file '<a href="file:///Users/agalyaramadoss/repo/ledger/results/account_data.txt">/Users/agalyaramadoss/repo/ledger/results/account_data.txt</a>'.</msg>
<arg>${OUTPUTDIR}/account_data.txt</arg>
<arg>${file_content}</arg>
<doc>Creates a file with the given content and encoding.</doc>
<status status="PASS" start="2026-01-07T23:44:13.207818" elapsed="0.000310"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>Account data saved to ${OUTPUTDIR}/account_data.txt</arg>
<doc>Logs the given message to the console.</doc>
<status status="PASS" start="2026-01-07T23:44:13.208173" elapsed="0.000172"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-01-07T23:44:13.208695" level="INFO">All accounts and credit cards extracted and saved</msg>
<arg>All accounts and credit cards extracted and saved</arg>
<arg>INFO</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-01-07T23:44:13.208475" elapsed="0.000239"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:13.204522" elapsed="0.004223"/>
</kw>
<doc>Log in to Chase using environment variables for credentials.</doc>
<status status="PASS" start="2026-01-07T23:44:07.653010" elapsed="5.555806"/>
</test>
<kw name="Close All Browsers" owner="SeleniumLibrary" type="TEARDOWN">
<doc>Closes all open browsers and resets the browser cache.</doc>
<status status="PASS" start="2026-01-07T23:44:13.209283" elapsed="0.211888"/>
</kw>
<status status="PASS" start="2026-01-07T23:44:06.606162" elapsed="6.815085"/>
</suite>
<statistics>
<total>
<stat pass="1" fail="0" skip="0">All Tests</stat>
</total>
<tag>
</tag>
<suite>
<stat name="LoginChase" id="s1" pass="1" fail="0" skip="0">LoginChase</stat>
</suite>
</statistics>
<errors>
<msg time="2026-01-07T23:44:06.676961" level="WARN">Keyword 'BuiltIn.Run Keyword Unless' is deprecated. </msg>
</errors>
</robot>