radicale: tests: functional: Better checking for well-known URLs

- When SOGO app is enabled, radicale functional tests fail.

Tests:

- Enable SOGO app and run radicale functional tests. They fail without patch and
pass with the patch.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
This commit is contained in:
Sunil Mohan Adapa 2026-04-24 08:37:19 -07:00 committed by James Valleroy
parent 2bd33ed428
commit 495f5f8a0d
No known key found for this signature in database
GPG Key ID: 77C0C75E7B650808

View File

@ -83,21 +83,21 @@ def _set_access_rights(browser, access_rights_type):
def _calendar_is_available(browser):
"""Return whether calendar is available at well-known URL."""
conf = functional.config['DEFAULT']
url = functional.base_url + '/.well-known/caldav'
logging.captureWarnings(True)
request = requests.get(url, auth=(conf['username'], conf['password']),
verify=False)
logging.captureWarnings(False)
return request.status_code != 404
return _well_known_available(browser, '/.well-known/caldav')
def _addressbook_is_available(browser):
"""Return whether addressbook is available at well-known URL."""
return _well_known_available(browser, '/.well-known/carddav')
def _well_known_available(browser, wellknown_url: str):
"""Return whether a well-known URL redirects to radicale."""
conf = functional.config['DEFAULT']
url = functional.base_url + '/.well-known/carddav'
url = functional.base_url + wellknown_url
logging.captureWarnings(True)
request = requests.get(url, auth=(conf['username'], conf['password']),
verify=False)
verify=False, allow_redirects=False)
logging.captureWarnings(False)
return request.status_code != 404
return (request.status_code == 301
and request.headers['Location'].endswith('/radicale/'))