Skip to content

Commit e18c6f6

Browse files
committed
Merge branch 'main' of github.com:cmu-delphi/covidcast-indicators into usa_tests
2 parents 4570423 + dcaf97d commit e18c6f6

File tree

30 files changed

+113
-627
lines changed

30 files changed

+113
-627
lines changed

_delphi_utils_python/delphi_utils/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@
88
from .export import create_export_csv
99
from .utils import read_params
1010
from .geomap import GeoMapper
11+
from .signal import add_prefix, public_signal
1112

1213
__version__ = "0.1.0"

quidel/delphi_quidel/handle_wip_sensor.py renamed to _delphi_utils_python/delphi_utils/signal.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
"""This file checks the wip status of signals"""
1+
"""Functions for understanding and creating signal names."""
22
import covidcast
33

4-
def add_prefix(signal_names, wip_signal, prefix):
4+
def add_prefix(signal_names, wip_signal, prefix="wip_"):
55
"""Adds prefix to signal if there is a WIP signal
66
Parameters
77
----------
88
signal_names: List[str]
99
Names of signals to be exported
10-
prefix : 'wip_'
10+
prefix : "wip_"
1111
prefix for new/non public signals
1212
wip_signal : List[str] or bool
1313
a list of wip signals: [], OR
@@ -36,11 +36,11 @@ def add_prefix(signal_names, wip_signal, prefix):
3636
raise ValueError("Supply True | False or '' or [] | list()")
3737

3838

39-
def public_signal(signal_):
39+
def public_signal(signal):
4040
"""Checks if the signal name is already public using COVIDcast
4141
Parameters
4242
----------
43-
signal_ : str
43+
signal : str
4444
Name of the signal
4545
Returns
4646
-------
@@ -50,6 +50,6 @@ def public_signal(signal_):
5050
"""
5151
epidata_df = covidcast.metadata()
5252
for index in range(len(epidata_df)):
53-
if epidata_df['signal'][index] == signal_:
53+
if epidata_df["signal"][index] == signal:
5454
return True
5555
return False

_delphi_utils_python/setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
required = [
55
"boto3",
6+
"covidcast",
67
"gitpython",
78
"moto",
89
"numpy",
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
"""Tests for delphi_utils.signal."""
2+
from unittest.mock import patch
3+
import pandas as pd
4+
5+
from delphi_utils.signal import add_prefix, public_signal
6+
7+
# Constants for mocking out the call to `covidcast.metadata` within `public_signal()`.
8+
PUBLIC_SIGNALS = ["sig1", "sig2", "sig3"]
9+
PUBLIC_SIGNALS_FRAME = pd.DataFrame(data={"signal": PUBLIC_SIGNALS})
10+
11+
class TestSignal:
12+
"""Tests for signal.py."""
13+
14+
def test_add_prefix_to_all(self):
15+
"""Tests that `add_prefix()` derives work-in-progress names for all input signals."""
16+
assert add_prefix(["sig1", "sig3"], True, prefix="wip_") == ["wip_sig1", "wip_sig3"]
17+
18+
def test_add_prefix_to_specified(self):
19+
"""Tests that `add_prefix()` derives work-in-progress names for specified signals."""
20+
assert add_prefix(["sig1", "sig2", "sig3"], ["sig2"], prefix="wip_") ==\
21+
["sig1", "wip_sig2", "sig3"]
22+
23+
@patch("covidcast.metadata")
24+
def test_add_prefix_to_non_public(self, metadata):
25+
"""Tests that `add_prefix()` derives work-in-progress names for non-public signals."""
26+
metadata.return_value = PUBLIC_SIGNALS_FRAME
27+
assert add_prefix(["sig0", "sig1"], False, prefix="wip_") == ["wip_sig0", "sig1"]
28+
29+
@patch("covidcast.metadata")
30+
def test_public_signal(self, metadata):
31+
"""Tests that `public_signal()` identifies public vs. private signals."""
32+
metadata.return_value = PUBLIC_SIGNALS_FRAME
33+
assert not public_signal("sig0")
34+
assert public_signal("sig2")

_template_python/delphi_NAME/handle_wip_signal.py

Lines changed: 0 additions & 62 deletions
This file was deleted.

_template_python/tests/test_handle_wip_signal.py

Lines changed: 0 additions & 27 deletions
This file was deleted.

cdc_covidnet/delphi_cdc_covidnet/update_sensor.py

Lines changed: 1 addition & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212
import numpy as np
1313
import pandas as pd
1414

15-
from delphi_utils import read_params, GeoMapper
16-
import covidcast
15+
from delphi_utils import read_params, GeoMapper, add_prefix
1716
from .api_config import APIConfig
1817
from .covidnet import CovidNet
1918
from .constants import SIGNALS
@@ -106,57 +105,3 @@ def update_sensor(
106105
for signal in signals:
107106
write_to_csv(hosp_df, signal, output_path)
108107
return hosp_df
109-
110-
111-
def add_prefix(signal_names, wip_signal, prefix):
112-
"""Adds prefix to signal if there is a WIP signal
113-
Parameters
114-
----------
115-
signal_names: List[str]
116-
Names of signals to be exported
117-
prefix : 'wip_'
118-
prefix for new/non public signals
119-
wip_signal : List[str] or bool
120-
a list of wip signals: [], OR
121-
all signals in the registry: True OR
122-
only signals that have never been published: False
123-
Returns
124-
-------
125-
List of signal names
126-
wip/non wip signals for further computation
127-
"""
128-
129-
if wip_signal is True:
130-
return [prefix + signal for signal in signal_names]
131-
if isinstance(wip_signal, list):
132-
make_wip = set(wip_signal)
133-
return [
134-
(prefix if signal in make_wip else "") + signal
135-
for signal in signal_names
136-
]
137-
if wip_signal in {False, ""}:
138-
return [
139-
signal if public_signal(signal)
140-
else prefix + signal
141-
for signal in signal_names
142-
]
143-
raise ValueError("Supply True | False or '' or [] | list()")
144-
145-
146-
def public_signal(signal_):
147-
"""Checks if the signal name is already public using COVIDcast
148-
Parameters
149-
----------
150-
signal_ : str
151-
Name of the signal
152-
Returns
153-
-------
154-
bool
155-
True if the signal is present
156-
False if the signal is not present
157-
"""
158-
epidata_df = covidcast.metadata()
159-
for index in range(len(epidata_df)):
160-
if epidata_df['signal'][index] == signal_:
161-
return True
162-
return False

cdc_covidnet/tests/test_handle_wip_signal.py

Lines changed: 0 additions & 24 deletions
This file was deleted.

changehc/delphi_changehc/run.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,7 @@ def run_module():
9595
su_inst.update_sensor(
9696
params["input_denom_file"],
9797
params["input_covid_file"],
98-
params["export_dir"],
99-
params["static_file_dir"]
98+
params["export_dir"]
10099
)
101100
logging.info("finished %s", geo)
102101

0 commit comments

Comments
 (0)