Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions sciencebeam_parser/service/api/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
from sciencebeam_parser.service.api.routers.grobid import create_grobid_router
from sciencebeam_parser.service.api.routers.low_level import create_low_level_router
from sciencebeam_parser.service.api.routers.models import create_models_router
from sciencebeam_parser.service.api.routers.status import create_status_router


LOGGER = logging.getLogger(__name__)
Expand All @@ -26,6 +27,7 @@ def create_api_app(
app = FastAPI()
app.state.sciencebeam_parser = sciencebeam_parser

app.include_router(create_status_router())
app.include_router(create_convert_router())
app.include_router(create_grobid_router(
fulltext_processor_config=sciencebeam_parser.fulltext_processor_config
Expand Down
17 changes: 17 additions & 0 deletions sciencebeam_parser/service/api/routers/status.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import logging

from fastapi import APIRouter
from fastapi.responses import PlainTextResponse


LOGGER = logging.getLogger(__name__)


def create_status_router() -> APIRouter:
router = APIRouter(tags=['status'])

@router.get('/isalive', response_class=PlainTextResponse)
def process_isalive_api() -> str:
return 'true'

return router
6 changes: 6 additions & 0 deletions tests/service/api/app_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,12 @@ def test_should_not_fail(self, test_client: TestClient):
response = test_client.get('/')
assert _get_ok_json(response)

class TestIsAlive:
def test_should_return_true(self, test_client: TestClient):
response = test_client.get('/isalive')
assert response.status_code == 200
assert response.text == 'true'

class TestPdfAlto:
def test_should_reject_post_without_data(
self,
Expand Down
Loading