plone_restapi: use ok webservice to get service status (#77695)
gitea/passerelle/pipeline/head This commit looks good Details

This commit is contained in:
Nicolas Roche 2023-05-17 10:30:33 +02:00 committed by Nicolas Roche
parent be4a65b6be
commit 816da0f6b6
2 changed files with 10 additions and 24 deletions

View File

@ -201,7 +201,8 @@ class PloneRestApi(BaseResource, HTTPResource):
"""
Raise an exception if something goes wrong.
"""
self.request(path='@types', method='GET')
response = self.requests.get(self.service_url + '/ok')
response.raise_for_status()
def call_search(
self,

View File

@ -18,7 +18,7 @@ import json
import os
import pytest
from requests.exceptions import ConnectionError
from requests.exceptions import ConnectionError, HTTPError
import tests.utils
from passerelle.apps.plone_restapi.models import PloneRestApi, Query
@ -225,31 +225,16 @@ def test_get_token(app, connector):
def test_check_status(app, connector):
url = connector.service_url + '/@types'
with tests.utils.mock_url(url=connector.token_ws_url, response=TOKEN_RESPONSE):
with tests.utils.mock_url(url=url, response={}):
connector.check_status()
# idp not responding
with tests.utils.mock_url(url=connector.token_ws_url, response={}, status_code=503):
with pytest.raises(APIError):
connector.check_status()
# plone not responding
with tests.utils.mock_url(url=connector.token_ws_url, response=TOKEN_RESPONSE):
with tests.utils.mock_url(url=url, response={}, status_code=503):
with pytest.raises(APIError):
connector.check_status()
# without idp
connector.token_ws_url = ''
connector.save()
with tests.utils.mock_url(url=url, response={}):
url = connector.service_url + '/ok'
with tests.utils.mock_url(url=url, response='OK'):
connector.check_status()
# plone not responding
with tests.utils.mock_url(url=url, response={}, status_code=503):
with pytest.raises(APIError):
with tests.utils.mock_url(url=url, response={}, status_code=500):
with pytest.raises(HTTPError):
connector.check_status()
with tests.utils.mock_url(url=url, exception=ConnectionError('plop')):
with pytest.raises(ConnectionError):
connector.check_status()