Skip to content

Commit 2e580d1

Browse files
committed
Minor changes in process.py, updated test cases
1 parent bdd38dc commit 2e580d1

File tree

2 files changed

+25
-20
lines changed

2 files changed

+25
-20
lines changed

safegraph/delphi_safegraph/process.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -26,20 +26,23 @@ def add_prefix(signal_names, wip_signal, prefix: str):
2626
List of signal names
2727
wip/non wip signals for further computation
2828
"""
29-
if wip_signal is not None:
30-
if wip_signal and isinstance(wip_signal, bool):
31-
return [
32-
(prefix + signal) if public_signal(signal)
33-
else signal
34-
for signal in signal_names
35-
]
36-
if isinstance(wip_signal, list):
37-
for signal in wip_signal:
38-
if public_signal(signal):
39-
new_list = [prefix + signal]
40-
signal_names.remove(signal)
41-
signal_names.extend(new_list)
42-
return signal_names
29+
30+
if wip_signal in ("", False):
31+
return signal_names
32+
elif wip_signal and isinstance(wip_signal, bool):
33+
return [
34+
(prefix + signal) if public_signal(signal)
35+
else signal
36+
for signal in signal_names
37+
]
38+
elif isinstance(wip_signal, list):
39+
for signal in wip_signal:
40+
if public_signal(signal):
41+
signal_names.append(prefix + signal)
42+
signal_names.remove(signal)
43+
return signal_names
44+
else:
45+
raise ValueError("Supply True | False or '' or [] | list()")
4346

4447

4548
# Check if the signal name is public

safegraph/tests/test_process.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from delphi_safegraph.process import (
99
construct_signals,
1010
aggregate,
11-
signal_name
11+
add_prefix
1212
)
1313
from delphi_safegraph.run import SIGNALS
1414
from delphi_utils import read_params
@@ -49,11 +49,13 @@ def test_aggregate_state(self):
4949
x = df[f'{signal_names[0]}_se'].values
5050
assert np.all(x[~np.isnan(x)] >= 0)
5151

52-
def test_signal_name(self):
53-
assert read_params()["wip_signal"] is not None, "supply value in params"
54-
assert type(read_params()["wip_signal"]) == list or type(read_params()["wip_signal"]) == bool, "Supply True|False|list()"
55-
signals = signal_name(signal_names, wip_signal=read_params()['wip_signal'],prefix='wip_')
56-
assert (len(signals) >= len(signal_names))
52+
def test_handle_wip_signal(self):
53+
wip_signal = read_params()["wip_signal"]
54+
assert isinstance(wip_signal, (list, bool)) or wip_signal == "", "Supply True | False or "" or [] | list()"
55+
if isinstance(wip_signal, list):
56+
assert set(wip_signal).issubset(set(SIGNALS)), "signal in params don't belong in the registry"
57+
updated_signal_names = add_prefix(SIGNALS, wip_signal, prefix='wip_')
58+
assert (len(updated_signal_names) >= len(SIGNALS))
5759

5860

5961

0 commit comments

Comments
 (0)