|
1 | 1 | """Tests for delphi_utils.signal."""
|
2 |
| -import pandas as pd |
3 | 2 | from unittest.mock import patch
|
| 3 | +import pandas as pd |
4 | 4 |
|
5 | 5 | from delphi_utils.signal import add_prefix, public_signal
|
6 | 6 |
|
7 | 7 | # Constants for mocking out the call to `covidcast.metadata` within `public_signal()`.
|
8 |
| -SIGNALS = ["sig1", "sig2", "sig3"] |
9 |
| -SIGNALS_FRAME = pd.DataFrame(data={"signal": SIGNALS}) |
| 8 | +PUBLIC_SIGNALS = ["sig1", "sig2", "sig3"] |
| 9 | +PUBLIC_SIGNALS_FRAME = pd.DataFrame(data={"signal": PUBLIC_SIGNALS}) |
10 | 10 |
|
11 | 11 | class TestSignal:
|
12 | 12 | """Tests for signal.py."""
|
13 | 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 | + |
14 | 23 | @patch("covidcast.metadata")
|
15 |
| - def test_handle_wip_signal(self, metadata): |
16 |
| - """Tests that `add_prefix()` derives work-in-progress signals.""" |
17 |
| - metadata.return_value = SIGNALS_FRAME |
18 |
| - |
19 |
| - # Test wip_signal = True |
20 |
| - signal_names = SIGNALS |
21 |
| - signal_names = add_prefix(SIGNALS, True, prefix="wip_") |
22 |
| - assert all(s.startswith("wip_") for s in signal_names) |
23 |
| - # Test wip_signal = list |
24 |
| - signal_names = add_prefix(SIGNALS, [SIGNALS[0]], prefix="wip_") |
25 |
| - assert signal_names[0].startswith("wip_") |
26 |
| - assert all(not s.startswith("wip_") for s in signal_names[1:]) |
27 |
| - # Test wip_signal = False |
28 |
| - signal_names = add_prefix(["xyzzy", SIGNALS[0]], False, prefix="wip_") |
29 |
| - assert signal_names[0].startswith("wip_") |
30 |
| - assert all(not s.startswith("wip_") for s in signal_names[1:]) |
| 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"] |
31 | 28 |
|
32 | 29 | @patch("covidcast.metadata")
|
33 | 30 | def test_public_signal(self, metadata):
|
34 | 31 | """Tests that `public_signal()` identifies public vs. private signals."""
|
35 |
| - metadata.return_value = SIGNALS_FRAME |
36 |
| - |
| 32 | + metadata.return_value = PUBLIC_SIGNALS_FRAME |
37 | 33 | assert not public_signal("sig0")
|
38 | 34 | assert public_signal("sig2")
|
0 commit comments