- Remove completed Task 1 from Docs/tasks.md - Fix download.robot: use Get JSON Value instead of deprecated Get Value From Json - Minor whitespace cleanup
2947 lines
170 KiB
XML
2947 lines
170 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<robot generator="Robot 7.4.2 (Python 3.13.5 on linux)" generated="2026-06-28T15:57:33.115633" rpa="false" schemaversion="5">
|
|
<suite id="s1" name="Config" source="/home/lukas/Volume/repo/Aniworld/tests/robot/api/config.robot">
|
|
<test id="s1-t1" name="Get Default Config" line="19">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:33.333666" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:33.333702" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:33.333483" elapsed="0.000367"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:33.333182" elapsed="0.000739"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:33.334895" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:33.334461" elapsed="0.000457"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:33.336557" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:33.336903" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:33.336975" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:33.337097" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:33.337284" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:33.537539" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:33.537815" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:33.538198" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:33.938417" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:33.938578" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:33.938904" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:33.943040" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:33.335016" elapsed="0.608189">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943537" elapsed="0.000052"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943672" elapsed="0.000056"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943362" elapsed="0.000410"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943331" elapsed="0.000474"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943935" elapsed="0.000039"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944045" elapsed="0.000036"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943847" elapsed="0.000265"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.943835" elapsed="0.000300"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944247" elapsed="0.000035"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944344" elapsed="0.000034"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944472" elapsed="0.000038"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944423" elapsed="0.000112"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944413" elapsed="0.000142"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944605" elapsed="0.000036"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944168" elapsed="0.000499"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944158" elapsed="0.000530"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944887" elapsed="0.000090"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.945011" elapsed="0.000035"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944738" elapsed="0.000330"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.944714" elapsed="0.000373"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:33.945136" elapsed="0.000035"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:33.334146" elapsed="0.611115">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:33.332615" elapsed="0.612700">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:33.945601" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:33.945476" elapsed="0.000176"/>
|
|
</kw>
|
|
<msg time="2026-06-28T15:57:33.949569" level="INFO">Starting Browser process /home/lukas/miniconda3/lib/python3.13/site-packages/Browser/wrapper/index.js using at 127.0.0.1:36123</msg>
|
|
<msg time="2026-06-28T15:57:33.950132" level="DEBUG">Waiting for Playwright server at 127.0.0.1:36123 to start...</msg>
|
|
<msg time="2026-06-28T15:57:33.954549" level="DEBUG"><_InactiveRpcError of RPC that terminated with:
|
|
status = StatusCode.UNAVAILABLE
|
|
details = "failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
debug_error_string = "UNAVAILABLE:failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
></msg>
|
|
<msg time="2026-06-28T15:57:34.054917" level="DEBUG">Waiting for Playwright server at 127.0.0.1:36123 to start...</msg>
|
|
<msg time="2026-06-28T15:57:34.056363" level="DEBUG"><_InactiveRpcError of RPC that terminated with:
|
|
status = StatusCode.UNAVAILABLE
|
|
details = "failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
debug_error_string = "UNAVAILABLE:failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
></msg>
|
|
<msg time="2026-06-28T15:57:34.156649" level="DEBUG">Waiting for Playwright server at 127.0.0.1:36123 to start...</msg>
|
|
<msg time="2026-06-28T15:57:34.157883" level="DEBUG"><_InactiveRpcError of RPC that terminated with:
|
|
status = StatusCode.UNAVAILABLE
|
|
details = "failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
debug_error_string = "UNAVAILABLE:failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
></msg>
|
|
<msg time="2026-06-28T15:57:34.258221" level="DEBUG">Waiting for Playwright server at 127.0.0.1:36123 to start...</msg>
|
|
<msg time="2026-06-28T15:57:34.259435" level="DEBUG"><_InactiveRpcError of RPC that terminated with:
|
|
status = StatusCode.UNAVAILABLE
|
|
details = "failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
debug_error_string = "UNAVAILABLE:failed to connect to all addresses; last error: UNKNOWN: ipv4:127.0.0.1:36123: Failed to connect to remote host: Connection refused"
|
|
></msg>
|
|
<msg time="2026-06-28T15:57:34.359846" level="DEBUG">Waiting for Playwright server at 127.0.0.1:36123 to start...</msg>
|
|
<doc>Retrieve the current configuration and verify its structure.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:33.331789" elapsed="0.613899">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t2" name="Update Config" line="25">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:34.380686" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:34.380719" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.380525" elapsed="0.000293"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.380289" elapsed="0.000594"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:34.381661" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.381331" elapsed="0.000352"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:34.382373" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:34.382621" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:34.382680" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.382786" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:34.382953" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:34.583148" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.583309" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:34.583544" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:34.983888" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.984054" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:34.984363" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:34.987366" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.381780" elapsed="0.605803">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.987917" elapsed="0.000071"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988067" elapsed="0.000043"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.987733" elapsed="0.000411"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.987708" elapsed="0.000467"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988305" elapsed="0.000040"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988413" elapsed="0.000037"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988213" elapsed="0.000269"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988202" elapsed="0.000311"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988655" elapsed="0.000039"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988776" elapsed="0.000035"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988898" elapsed="0.000033"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988853" elapsed="0.000101"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988844" elapsed="0.000129"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989023" elapsed="0.000034"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988556" elapsed="0.000526"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.988543" elapsed="0.000558"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989203" elapsed="0.000039"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989272" elapsed="0.000031"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989129" elapsed="0.000194"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989121" elapsed="0.000220"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:34.989386" elapsed="0.000033"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.381106" elapsed="0.608388">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.379832" elapsed="0.609718">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:34.989824" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.989695" elapsed="0.000180"/>
|
|
</kw>
|
|
<doc>Update configuration fields and verify they are persisted.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.376789" elapsed="0.613123">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t3" name="Validate Valid Config" line="43">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:34.999452" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:34.999479" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.999312" elapsed="0.000256"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:34.998990" elapsed="0.000637"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:35.000481" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:35.000100" elapsed="0.000403"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:35.001132" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.001360" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:35.001413" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.001746" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.001929" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:35.202115" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.202309" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.202580" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:35.602834" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.602994" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.603290" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:35.606202" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:35.000595" elapsed="0.605661">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.606752" elapsed="0.000056"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.606892" elapsed="0.000090"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.606533" elapsed="0.000484"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.606509" elapsed="0.000539"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607178" elapsed="0.000040"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607286" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607088" elapsed="0.000269"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607075" elapsed="0.000306"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607499" elapsed="0.000038"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607609" elapsed="0.000037"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607806" elapsed="0.000097"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607694" elapsed="0.000242"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607684" elapsed="0.000271"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608007" elapsed="0.000090"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607413" elapsed="0.000711"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.607403" elapsed="0.000744"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608259" elapsed="0.000038"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608330" elapsed="0.000034"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608178" elapsed="0.000209"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608168" elapsed="0.000238"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:35.608453" elapsed="0.000089"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.999854" elapsed="0.608767">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.998557" elapsed="0.610120">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:35.608963" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:35.608836" elapsed="0.000170"/>
|
|
</kw>
|
|
<doc>Validate a well-formed configuration.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:34.995729" elapsed="0.613311">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t4" name="Validate Invalid Config Missing Name" line="52">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:35.616951" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:35.616976" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:35.616810" elapsed="0.000253"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:35.616557" elapsed="0.000565"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:35.617870" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:35.617544" elapsed="0.000348"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:35.618534" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.618828" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:35.618896" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.618999" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.619162" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:35.819383" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.819780" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:35.820034" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:36.220252" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.220411" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.220764" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:36.223863" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:35.617982" elapsed="0.605962">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.224923" elapsed="0.000121"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225130" elapsed="0.000045"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.224272" elapsed="0.001042"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.224165" elapsed="0.001189"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225502" elapsed="0.000043"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225617" elapsed="0.000040"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225403" elapsed="0.000287"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225389" elapsed="0.000338"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225853" elapsed="0.000038"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225960" elapsed="0.000038"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226099" elapsed="0.000038"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226047" elapsed="0.000114"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226036" elapsed="0.000146"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226237" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225762" elapsed="0.000541"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.225751" elapsed="0.000575"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226437" elapsed="0.000038"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226508" elapsed="0.000034"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226356" elapsed="0.000209"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226347" elapsed="0.000238"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.226638" elapsed="0.000042"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:35.617330" elapsed="0.609465">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:35.616128" elapsed="0.610741">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:36.227175" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.227049" elapsed="0.000175"/>
|
|
</kw>
|
|
<doc>Validate a config missing the required 'name' field.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:35.613773" elapsed="0.613486">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t5" name="Validate Invalid Schedule Time" line="64">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:36.235157" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:36.235183" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.235018" elapsed="0.000253"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.234789" elapsed="0.000540"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:36.236153" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.235820" elapsed="0.000356"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:36.236837" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.237076" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:36.237132" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.237228" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.237387" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:36.437713" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.437877" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.438113" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:36.838522" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.838719" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.839055" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:36.842026" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.236270" elapsed="0.605835">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842460" elapsed="0.000057"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842602" elapsed="0.000042"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842228" elapsed="0.000452"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842205" elapsed="0.000513"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842992" elapsed="0.000086"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843150" elapsed="0.000040"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842874" elapsed="0.000349"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.842855" elapsed="0.000393"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843366" elapsed="0.000039"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843473" elapsed="0.000037"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843610" elapsed="0.000038"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843557" elapsed="0.000116"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843547" elapsed="0.000148"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843755" elapsed="0.000077"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843281" elapsed="0.000585"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843271" elapsed="0.000618"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.844007" elapsed="0.000039"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.844080" elapsed="0.000035"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843922" elapsed="0.000217"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.843911" elapsed="0.000250"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:36.844212" elapsed="0.000036"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.235571" elapsed="0.608764">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.234349" elapsed="0.610047">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:36.844716" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.844553" elapsed="0.000212"/>
|
|
</kw>
|
|
<doc>Validate a config with malformed schedule_time.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.231493" elapsed="0.613310">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t6" name="Validate Invalid Log Level" line="77">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:36.852557" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:36.852584" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.852409" elapsed="0.000267"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.852138" elapsed="0.000619"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:36.853537" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:36.853211" elapsed="0.000348"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:36.854213" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.854463" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:36.854522" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.854621" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:36.854794" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:37.054975" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.055140" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:37.055396" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:37.455637" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.456283" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:37.456628" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:37.459226" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.853652" elapsed="0.605627">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459532" elapsed="0.000053"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459660" elapsed="0.000049"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459378" elapsed="0.000365"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459359" elapsed="0.000412"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459894" elapsed="0.000042"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460119" elapsed="0.000053"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459806" elapsed="0.000406"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.459795" elapsed="0.000443"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460371" elapsed="0.000057"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460499" elapsed="0.000039"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461113" elapsed="0.000087"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460587" elapsed="0.000642"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460576" elapsed="0.000676"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461314" elapsed="0.000086"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460273" elapsed="0.001156"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.460263" elapsed="0.001188"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461569" elapsed="0.000038"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461642" elapsed="0.000033"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461483" elapsed="0.000220"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461474" elapsed="0.000254"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:37.461787" elapsed="0.000093"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.852992" elapsed="0.608962">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.851660" elapsed="0.610344">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:37.462324" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:37.462136" elapsed="0.000228"/>
|
|
</kw>
|
|
<doc>Validate a config with an invalid logging level.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:36.849120" elapsed="0.613277">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t7" name="Config Backup Create" line="86">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:37.469754" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:37.469781" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:37.469595" elapsed="0.000279"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:37.469343" elapsed="0.000588"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:37.470722" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:37.470413" elapsed="0.000343"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:37.471340" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:37.471574" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:37.471626" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.471742" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:37.471916" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:37.672167" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.672330" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:37.672574" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.072815" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.072991" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.073282" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:38.076454" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:37.470858" elapsed="0.605650">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.076859" elapsed="0.000047"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.076980" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.076611" elapsed="0.000438"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.076591" elapsed="0.000484"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077187" elapsed="0.000036"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077284" elapsed="0.000034"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077109" elapsed="0.000238"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077099" elapsed="0.000270"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077569" elapsed="0.000040"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077676" elapsed="0.000057"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077878" elapsed="0.000086"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077782" elapsed="0.000206"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077773" elapsed="0.000236"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078063" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077481" elapsed="0.000648"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.077456" elapsed="0.000695"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078262" elapsed="0.000039"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078334" elapsed="0.000034"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078182" elapsed="0.000209"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078173" elapsed="0.000237"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.078460" elapsed="0.000037"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:37.470122" elapsed="0.608453">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:37.468908" elapsed="0.609722">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:38.078961" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.078790" elapsed="0.000216"/>
|
|
</kw>
|
|
<doc>Create a configuration backup and verify it exists.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:37.466541" elapsed="0.612501">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t8" name="Config Backup List" line="91">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:38.086859" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:38.086891" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.086689" elapsed="0.000285"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.086473" elapsed="0.000558"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:38.087751" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.087428" elapsed="0.000346"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:38.088372" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.088599" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.088650" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.088765" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.088928" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.289198" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.289390" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.289658" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.690009" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.690419" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.691775" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:38.694731" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.087872" elapsed="0.607079">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695320" elapsed="0.000065"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695473" elapsed="0.000050"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695114" elapsed="0.000445"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695084" elapsed="0.000508"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695925" elapsed="0.000130"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696162" elapsed="0.000058"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695634" elapsed="0.000634"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.695622" elapsed="0.000683"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696499" elapsed="0.000054"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696658" elapsed="0.000089"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696921" elapsed="0.000070"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696829" elapsed="0.000204"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696812" elapsed="0.000256"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697167" elapsed="0.000096"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696370" elapsed="0.000940"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.696352" elapsed="0.001000"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697519" elapsed="0.000062"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697633" elapsed="0.000045"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697397" elapsed="0.000318"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697383" elapsed="0.000363"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:38.697825" elapsed="0.000049"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.087235" elapsed="0.610753">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.086079" elapsed="0.611986">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:38.698364" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.698225" elapsed="0.000187"/>
|
|
</kw>
|
|
<doc>List configuration backups and verify the response structure.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.083675" elapsed="0.614774">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t9" name="Config Backup Restore" line="98">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:38.705517" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:38.705545" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.705372" elapsed="0.000262"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.705124" elapsed="0.000571"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:38.706760" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:38.706166" elapsed="0.000632"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:38.708580" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.708923" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.708986" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.709249" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.709422" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:38.909762" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.909924" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:38.910162" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:39.310457" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.310648" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:39.310968" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:39.313599" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.706995" elapsed="0.606663">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314161" elapsed="0.000056"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314312" elapsed="0.000044"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.313912" elapsed="0.000480"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.313882" elapsed="0.000539"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314576" elapsed="0.000040"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314690" elapsed="0.000110"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314463" elapsed="0.000376"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314451" elapsed="0.000410"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315031" elapsed="0.000097"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315196" elapsed="0.000088"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315435" elapsed="0.000036"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315331" elapsed="0.000165"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315322" elapsed="0.000195"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315570" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314891" elapsed="0.000744"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.314882" elapsed="0.000774"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315781" elapsed="0.000088"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315901" elapsed="0.000031"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315687" elapsed="0.000266"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.315678" elapsed="0.000293"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.316016" elapsed="0.000033"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.705934" elapsed="0.610190">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.704721" elapsed="0.611457">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:39.316529" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:39.316316" elapsed="0.000256"/>
|
|
</kw>
|
|
<doc>Create a backup, change config, then restore and verify reversion.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:38.702597" elapsed="0.614009">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<test id="s1-t10" name="Config Backup Delete" line="123">
|
|
<kw name="Run Keywords" owner="BuiltIn" type="SETUP">
|
|
<kw name="Create Anonymous Session" owner="common">
|
|
<kw name="Create Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:39.325176" level="INFO">Creating Session using : alias=anon, url=http://127.0.0.1:8765, headers={}, cookies={}, auth=None, timeout=None, proxies=None, verify=False, debug=0 </msg>
|
|
<msg time="2026-06-28T15:57:39.325202" level="DEBUG">Creating session: anon</msg>
|
|
<arg>anon</arg>
|
|
<arg>${BASE_URL}</arg>
|
|
<doc>Create Session: create a HTTP session to a server</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:39.324988" elapsed="0.000301"/>
|
|
</kw>
|
|
<doc>Create an unauthenticated HTTP session.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:39.324694" elapsed="0.000654"/>
|
|
</kw>
|
|
<kw name="Setup Master Password" owner="common">
|
|
<kw name="Create Dictionary" owner="BuiltIn">
|
|
<msg time="2026-06-28T15:57:39.326236" level="INFO">${payload} = {'master_password': 'TestPass123!', 'anime_directory': '/tmp/aniworld_test_anime', 'name': 'AniworldTest', 'data_dir': 'data', 'scheduler_enabled': 'False', 'logging_level': 'INFO', 'backup_enabled': ...</msg>
|
|
<var>${payload}</var>
|
|
<arg>master_password=${SETUP_PASSWORD}</arg>
|
|
<arg>anime_directory=/tmp/aniworld_test_anime</arg>
|
|
<arg>name=AniworldTest</arg>
|
|
<arg>data_dir=data</arg>
|
|
<arg>scheduler_enabled=False</arg>
|
|
<arg>logging_level=INFO</arg>
|
|
<arg>backup_enabled=False</arg>
|
|
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:39.325860" elapsed="0.000399"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<msg time="2026-06-28T15:57:39.326973" level="DEBUG">Starting new HTTP connection (1): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:39.327231" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:39.327299" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.327416" level="DEBUG">Starting new HTTP connection (2): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:39.327581" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:39.527883" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.528429" level="DEBUG">Starting new HTTP connection (3): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:39.528736" level="DEBUG">Incremented Retry for (url='/api/auth/setup'): RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)</msg>
|
|
<msg time="2026-06-28T15:57:39.929116" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.929286" level="DEBUG">Starting new HTTP connection (4): 127.0.0.1:8765</msg>
|
|
<msg time="2026-06-28T15:57:39.929567" level="FAIL">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<msg time="2026-06-28T15:57:39.932480" level="DEBUG">Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 204, in _new_conn
|
|
sock = connection.create_connection(
|
|
(self._dns_host, self.port),
|
|
...<2 lines>...
|
|
socket_options=self.socket_options,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 85, in create_connection
|
|
raise err
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/connection.py", line 73, in create_connection
|
|
sock.connect(sa)
|
|
~~~~~~~~~~~~^^^^
|
|
ConnectionRefusedError: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 788, in urlopen
|
|
response = self._make_request(
|
|
conn,
|
|
...<10 lines>...
|
|
**response_kw,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 493, in _make_request
|
|
conn.request(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<6 lines>...
|
|
enforce_content_length=enforce_content_length,
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 500, in request
|
|
self.endheaders()
|
|
~~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1333, in endheaders
|
|
self._send_output(message_body, encode_chunked=encode_chunked)
|
|
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1093, in _send_output
|
|
self.send(msg)
|
|
~~~~~~~~~^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/http/client.py", line 1037, in send
|
|
self.connect()
|
|
~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 331, in connect
|
|
self.sock = self._new_conn()
|
|
~~~~~~~~~~~~~~^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connection.py", line 219, in _new_conn
|
|
raise NewConnectionError(
|
|
self, f"Failed to establish a new connection: {e}"
|
|
) from e
|
|
urllib3.exceptions.NewConnectionError: HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused
|
|
|
|
The above exception was the direct cause of the following exception:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 645, in send
|
|
resp = conn.urlopen(
|
|
method=request.method,
|
|
...<9 lines>...
|
|
chunked=chunked,
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 872, in urlopen
|
|
return self.urlopen(
|
|
~~~~~~~~~~~~^
|
|
method,
|
|
^^^^^^^
|
|
...<13 lines>...
|
|
**response_kw,
|
|
^^^^^^^^^^^^^^
|
|
)
|
|
^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/connectionpool.py", line 842, in urlopen
|
|
retries = retries.increment(
|
|
method, url, error=new_e, _pool=self, _stacktrace=sys.exc_info()[2]
|
|
)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/urllib3/util/retry.py", line 543, in increment
|
|
raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))
|
|
|
|
During handling of the above exception, another exception occurred:
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/utils.py", line 154, in decorator
|
|
return func(*args, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsOnSessionKeywords.py", line 60, in post_on_session
|
|
response = self._common_request("post", session, url,
|
|
data=data, json=json, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/RequestsLibrary/RequestsKeywords.py", line 37, in _common_request
|
|
resp = method_function(
|
|
self._merge_url(session, uri),
|
|
timeout=self._get_timeout(kwargs.pop('timeout', None)),
|
|
cookies=kwargs.pop('cookies', self.cookies),
|
|
**kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 640, in post
|
|
return self.request("POST", url, data=data, json=json, **kwargs)
|
|
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 592, in request
|
|
resp = self.send(prep, **send_kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/sessions.py", line 706, in send
|
|
r = adapter.send(request, **kwargs)
|
|
File "/home/lukas/miniconda3/lib/python3.13/site-packages/requests/adapters.py", line 678, in send
|
|
raise ConnectionError(e, request=request)
|
|
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</msg>
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:39.326350" elapsed="0.606183">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.932809" elapsed="0.000110"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933005" elapsed="0.000087"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.932635" elapsed="0.000588"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.932615" elapsed="0.000646"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '429'">
|
|
<kw name="Sleep" owner="BuiltIn">
|
|
<arg>45s</arg>
|
|
<doc>Pauses the test executed for the given time.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933394" elapsed="0.000041"/>
|
|
</kw>
|
|
<kw name="POST On Session" owner="RequestsLibrary">
|
|
<var>${resp}</var>
|
|
<arg>anon</arg>
|
|
<arg>/api/auth/setup</arg>
|
|
<arg>json=${payload}</arg>
|
|
<arg>expected_status=any</arg>
|
|
<doc>Sends a POST request on a previously created HTTP Session.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933503" elapsed="0.000038"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933301" elapsed="0.000273"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933290" elapsed="0.000308"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '400'">
|
|
<kw name="Convert String To Json" owner="JSONLibrary">
|
|
<var>${json}</var>
|
|
<arg>${resp.text}</arg>
|
|
<doc>Convert String to JSON object</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933720" elapsed="0.000084"/>
|
|
</kw>
|
|
<kw name="Get Value From Json" owner="JSONLibrary">
|
|
<var>${detail}</var>
|
|
<arg>${json}</arg>
|
|
<arg>$.detail</arg>
|
|
<doc>Get Value From JSON using JSONPath</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933866" elapsed="0.000034"/>
|
|
</kw>
|
|
<if>
|
|
<branch type="IF" condition="'${detail}[0]' == 'Master password already configured'">
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933992" elapsed="0.000036"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933947" elapsed="0.000105"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933938" elapsed="0.000133"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Setup failed with 400: ${detail}</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934118" elapsed="0.000035"/>
|
|
</kw>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933630" elapsed="0.000549"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.933620" elapsed="0.000578"/>
|
|
</if>
|
|
<if>
|
|
<branch type="IF" condition="'${resp.status_code}' == '201'">
|
|
<kw name="Should Be Equal As Integers" owner="BuiltIn">
|
|
<arg>${resp.status_code}</arg>
|
|
<arg>201</arg>
|
|
<doc>Fails if objects are unequal after converting them to integers.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934296" elapsed="0.000033"/>
|
|
</kw>
|
|
<return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934359" elapsed="0.000030"/>
|
|
</return>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934225" elapsed="0.000185"/>
|
|
</branch>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934217" elapsed="0.000211"/>
|
|
</if>
|
|
<kw name="Fail" owner="BuiltIn">
|
|
<arg>Unexpected status ${resp.status_code} from /api/auth/setup</arg>
|
|
<doc>Fails the test with the given message and optionally alters its tags.</doc>
|
|
<status status="NOT RUN" start="2026-06-28T15:57:39.934472" elapsed="0.000033"/>
|
|
</kw>
|
|
<doc>Configure the master password via the setup endpoint.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:39.325549" elapsed="0.609027">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<arg>Create Anonymous Session</arg>
|
|
<arg>AND</arg>
|
|
<arg>Setup Master Password</arg>
|
|
<arg>AND</arg>
|
|
<arg>Create Authenticated Session</arg>
|
|
<doc>Executes all the given keywords in a sequence.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:39.324186" elapsed="0.610440">ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</kw>
|
|
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
|
|
<msg time="2026-06-28T15:57:39.934891" level="INFO">Deleting All Sessions</msg>
|
|
<doc>Removes all the session objects</doc>
|
|
<status status="PASS" start="2026-06-28T15:57:39.934785" elapsed="0.000146"/>
|
|
</kw>
|
|
<doc>Create a backup and then delete it.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:39.320998" elapsed="0.613965">Setup failed:
|
|
ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8765): Max retries exceeded with url: /api/auth/setup (Caused by NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused"))</status>
|
|
</test>
|
|
<doc>Configuration API tests for Aniworld.
|
|
Covers get, update, validate, backup create/list/restore/delete, and export/import.</doc>
|
|
<status status="FAIL" start="2026-06-28T15:57:33.116441" elapsed="6.822612"/>
|
|
</suite>
|
|
<statistics>
|
|
<total>
|
|
<stat pass="0" fail="10" skip="0">All Tests</stat>
|
|
</total>
|
|
<tag>
|
|
</tag>
|
|
<suite>
|
|
<stat name="Config" id="s1" pass="0" fail="10" skip="0">Config</stat>
|
|
</suite>
|
|
</statistics>
|
|
<errors>
|
|
<msg time="2026-06-28T15:57:33.336975" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:33.537539" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:33.938417" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.382680" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.583148" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:34.983888" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.001413" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.202115" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.602834" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.618896" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:35.819383" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.220252" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.237132" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.437713" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.838522" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:36.854522" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.054975" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.455637" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.471626" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:37.672167" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.072815" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.088650" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.289198" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.690009" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.708986" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:38.909762" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.310457" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.327299" level="WARN">Retrying (RetryAdapter(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.527883" level="WARN">Retrying (RetryAdapter(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
<msg time="2026-06-28T15:57:39.929116" level="WARN">Retrying (RetryAdapter(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError("HTTPConnection(host='127.0.0.1', port=8765): Failed to establish a new connection: [Errno 111] Connection refused")': /api/auth/setup</msg>
|
|
</errors>
|
|
</robot>
|