1
1
from datetime import date
2
2
from itertools import product
3
3
import pytest
4
+ import unittest
5
+
6
+ from delphi_combo_cases_and_deaths .run import extend_raw_date_range , sensor_signal
7
+ from delphi_combo_cases_and_deaths .handle_wip_signal import add_prefix
8
+ from delphi_utils import read_params
9
+ from delphi_combo_cases_and_deaths .constants import *
4
10
5
- from delphi_combo_cases_and_deaths .run import extend_raw_date_range ,sensor_signal ,METRICS ,SENSORS ,SMOOTH_TYPES
6
11
7
12
def test_issue_dates ():
8
- reference_dr = [date .today (),date .today ()]
13
+ reference_dr = [date .today (), date .today ()]
9
14
params = {'date_range' : reference_dr }
10
15
n_changed = 0
11
16
variants = [sensor_signal (metric , sensor , smoother ) for
12
17
metric , sensor , smoother in
13
- product (METRICS ,SENSORS ,SMOOTH_TYPES )]
18
+ product (METRICS , SENSORS , SMOOTH_TYPES )]
14
19
variants_changed = []
15
- for sensor_name ,signal in variants :
20
+ for sensor_name , signal in variants :
16
21
dr = extend_raw_date_range (params , sensor_name )
17
22
if dr [0 ] != reference_dr [0 ]:
18
23
n_changed += 1
@@ -21,3 +26,33 @@ def test_issue_dates():
21
26
All variants: { variants }
22
27
Date-extended variants: { variants_changed }
23
28
"""
29
+
30
+
31
+ def test_handle_wip_signal ():
32
+
33
+ signal_list = [sensor_signal (metric , sensor , smoother )[1 ]
34
+ for (metric , sensor , smoother ) in
35
+ product (METRICS , SENSORS , SMOOTH_TYPES )]
36
+
37
+ # Test wip_signal = True (all signals should receive prefix)
38
+ signal_names = add_prefix (signal_list , True , prefix = "wip_" )
39
+ assert all (s .startswith ("wip_" ) for s in signal_names )
40
+
41
+ # Test wip_signal = list (only listed signals should receive prefix)
42
+ signal_names = add_prefix (signal_list , [signal_list [0 ]], prefix = "wip_" )
43
+ print (signal_names )
44
+ assert signal_names [0 ].startswith ("wip_" )
45
+ assert all (not s .startswith ("wip_" ) for s in signal_names [1 :])
46
+
47
+ # Test wip_signal = False (only unpublished signals should receive prefix)
48
+ signal_names = add_prefix (["xyzzy" , signal_list [0 ]], False , prefix = "wip_" )
49
+ assert signal_names [0 ].startswith ("wip_" )
50
+ assert all (not s .startswith ("wip_" ) for s in signal_names [1 :])
51
+
52
+
53
+ class MyTestCase (unittest .TestCase ):
54
+ pass
55
+
56
+
57
+ if __name__ == '__main__' :
58
+ unittest .main ()
0 commit comments