copd-model-c / training /tests /test_define_service_exac_event.py
IamGrooooot's picture
Initial release: 72-hour COPD exacerbation prediction model
e69d4e4
"""Unit tests for the define_service_exac_event function."""
import copd
import pandas as pd
import pytest
@pytest.mark.parametrize("event",
['Hospital admission - emergency, COPD related',
'GP review - emergency, COPD related',
'Emergency department attendance, COPD related',
'Exacerbation - started abs/steroid by clinical team'])
def test_positive_event_no_community(event):
"""Test patient event definitions for COPD exacerbations - no community events."""
assert copd.define_service_exac_event(events=pd.Series(event)) == 1
@pytest.mark.parametrize("event",
['Hospital admission - emergency, COPD unrelated',
'Death',
'NHS 24 review - emergency, COPD related',
'Exacerbation - self-managed with rescue pack'])
def test_negative_event_no_community(event):
"""Test patient event definitions for non-exac events - no community events."""
assert copd.define_service_exac_event(events=pd.Series(event)) == 0
@pytest.mark.parametrize("event",
['Hospital admission - emergency, COPD related',
'GP review - emergency, COPD related',
'Emergency department attendance, COPD related',
'Exacerbation - started abs/steroid by clinical team',
'Exacerbation - self-managed with rescue pack'])
def test_positive_event_with_community(event):
"""Test patient event definitions for COPD exacerbations - with community events."""
assert copd.define_service_exac_event(events=pd.Series(event),
include_community=(True)) == 1
@pytest.mark.parametrize("event",
['Hospital admission - emergency, COPD unrelated',
'Death',
'NHS 24 review - emergency, COPD related'])
def test_negative_event_with_community(event):
"""Test patient event definitions for non-exac events - with community events."""
assert copd.define_service_exac_event(events=pd.Series(event),
include_community=(True)) == 0