Skip to content

Commit 4acf4e4

Browse files
committed
update tests
1 parent 0b6c30d commit 4acf4e4

5 files changed

Lines changed: 122 additions & 338 deletions

File tree

imap_processing/tests/external_test_data_config.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,13 +63,14 @@
6363
("IMAP-Ultra45_r1_L1_V0_shortened.csv", "ultra/data/l1/"),
6464

6565
# Ultra
66+
("FM45_UltraFM45Extra_TV_Tests_2024-01-22T0930_20240122T093008.CCSDS", "ultra/data/l0/"),
6667
("ultra45_raw_sc_rawnrgevnt_19840122_00.csv", "ultra/data/l0/"),
6768
("ultra45_raw_sc_imgpriority1evnt_FM45_UltraFM45Extra_TV_Tests_2024-01-22T0930_20240122T093008.csv", "ultra/data/l0/"),
68-
("ultra45_raw_sc_ultranrgrates_FM45_UltraFM45_Functional_"
69-
"2024-01-22T0105_20240122T010548.csv", "ultra/data/l0/"),
7069
("ultra45_raw_sc_imgpriority2evnt_FM45_UltraFM45Extra_TV_Tests_2024-01-22T0930_20240122T093008.csv", "ultra/data/l0/"),
7170
("ultra45_raw_sc_imgpriority3evnt_FM45_UltraFM45Extra_TV_Tests_2024-01-22T0930_20240122T093008.csv", "ultra/data/l0/"),
7271
("ultra45_raw_sc_imgpriority4evnt_FM45_UltraFM45Extra_TV_Tests_2024-01-22T0930_20240122T093008.csv", "ultra/data/l0/"),
72+
("ultra45_raw_sc_ultranrgrates_FM45_UltraFM45_Functional_"
73+
"2024-01-22T0105_20240122T010548.csv", "ultra/data/l0/"),
7374
("imap_ultra_l0_raw_20260924_v001.pkts", "ultra/data/l0/"),
7475
("imap_ultra_l1b_45sensor-de_20240207_v999.cdf", "ultra/data/l1/"),
7576
("ultra-90_raw_event_data_shortened.csv", "ultra/data/l1/"),

imap_processing/tests/ultra/unit/test_decom_apid_898.py

Lines changed: 29 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
indirect=True,
2020
)
2121
@pytest.mark.external_test_data
22-
def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
22+
def test_image_raw_events_decom(decom_test_data, xtce_path):
2323
"""This function reads validation data and checks that decom data
2424
matches validation data for image rate packet"""
2525
filename = (
@@ -31,88 +31,33 @@ def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
3131
)
3232

3333
decom_ultra = decom_test_data
34-
3534
df = pd.read_csv(priority_1_events_test_path, index_col="MET")
3635

37-
# # Check all values of each column are as expected,
38-
# except for those set to fill value
39-
np.testing.assert_array_equal(
40-
df["SID"].values[df["SID"].values != -1],
41-
decom_ultra["sid"].values[df["SID"].values != -1],
42-
)
43-
np.testing.assert_array_equal(
44-
df["Spin"].values[df["Spin"].values != -1],
45-
decom_ultra["spin"].values[df["Spin"].values != -1],
46-
)
47-
np.testing.assert_array_equal(
48-
df["AbortFlag"].values[df["AbortFlag"].values != -1],
49-
decom_ultra["abortflag"].values[df["AbortFlag"].values != -1],
50-
)
51-
np.testing.assert_array_equal(
52-
df["StartDelay"].values[df["StartDelay"].values != -1],
53-
decom_ultra["startdelay"].values[df["StartDelay"].values != -1],
54-
)
55-
np.testing.assert_array_equal(
56-
df["Count"].values[df["Count"].values != -1],
57-
decom_ultra["count"].values[df["Count"].values != -1],
58-
)
59-
np.testing.assert_array_equal(
60-
df["CoinType"].values[df["CoinType"].values != -1],
61-
decom_ultra["coin_type"].values[df["CoinType"].values != -1],
62-
)
63-
np.testing.assert_array_equal(
64-
df["StartType"].values[df["StartType"].values != -1],
65-
decom_ultra["start_type"].values[df["StartType"].values != -1],
66-
)
67-
np.testing.assert_array_equal(
68-
df["StopType"].values[df["StopType"].values != -1],
69-
decom_ultra["stop_type"].values[df["StopType"].values != -1],
70-
)
71-
np.testing.assert_array_equal(
72-
df["StartPosTDC"].values[df["StartPosTDC"].values != -1],
73-
decom_ultra["start_pos_tdc"].values[df["StartPosTDC"].values != -1],
74-
)
75-
np.testing.assert_array_equal(
76-
df["StopNorthTDC"].values[df["StopNorthTDC"].values != -1],
77-
decom_ultra["stop_north_tdc"].values[df["StopNorthTDC"].values != -1],
78-
)
79-
np.testing.assert_array_equal(
80-
df["StopEastTDC"].values[df["StopEastTDC"].values != -1],
81-
decom_ultra["stop_east_tdc"].values[df["StopEastTDC"].values != -1],
82-
)
83-
np.testing.assert_array_equal(
84-
df["StopSouthTDC"].values[df["StopSouthTDC"].values != -1],
85-
decom_ultra["stop_south_tdc"].values[df["StopSouthTDC"].values != -1],
86-
)
87-
np.testing.assert_array_equal(
88-
df["StopWestTDC"].values[df["StopWestTDC"].values != -1],
89-
decom_ultra["stop_west_tdc"].values[df["StopWestTDC"].values != -1],
90-
)
91-
np.testing.assert_array_equal(
92-
df["CoinNorthTDC"].values[df["CoinNorthTDC"].values != -1],
93-
decom_ultra["coin_north_tdc"].values[df["CoinNorthTDC"].values != -1],
94-
)
95-
np.testing.assert_array_equal(
96-
df["CoinSouthTDC"].values[df["CoinSouthTDC"].values != -1],
97-
decom_ultra["coin_south_tdc"].values[df["CoinSouthTDC"].values != -1],
98-
)
99-
np.testing.assert_array_equal(
100-
df["CoinDiscreteTDC"].values[df["CoinDiscreteTDC"].values != -1],
101-
decom_ultra["coin_discrete_tdc"].values[df["CoinDiscreteTDC"].values != -1],
102-
)
103-
np.testing.assert_array_equal(
104-
df["EnergyOrPH"].values[df["EnergyOrPH"].values != -1],
105-
decom_ultra["energy_ph"].values[df["EnergyOrPH"].values != -1],
106-
)
107-
np.testing.assert_array_equal(
108-
df["PulseWidth"].values[df["PulseWidth"].values != -1],
109-
decom_ultra["pulse_width"].values[df["PulseWidth"].values != -1],
110-
)
111-
np.testing.assert_array_equal(
112-
df["PhaseAngle"].values[df["PhaseAngle"].values != -1],
113-
decom_ultra["phase_angle"].values[df["PhaseAngle"].values != -1],
114-
)
115-
np.testing.assert_array_equal(
116-
df["Bin"].values[df["Bin"].values != -1],
117-
decom_ultra["bin"].values[df["Bin"].values != -1],
118-
)
36+
vars_to_compare = {
37+
"SID": "sid",
38+
"Spin": "spin",
39+
"AbortFlag": "abortflag",
40+
"StartDelay": "startdelay",
41+
"Count": "count",
42+
"CoinType": "coin_type",
43+
"StartType": "start_type",
44+
"StopType": "stop_type",
45+
"StartPosTDC": "start_pos_tdc",
46+
"StopNorthTDC": "stop_north_tdc",
47+
"StopEastTDC": "stop_east_tdc",
48+
"StopSouthTDC": "stop_south_tdc",
49+
"StopWestTDC": "stop_west_tdc",
50+
"CoinNorthTDC": "coin_north_tdc",
51+
"CoinSouthTDC": "coin_south_tdc",
52+
"CoinDiscreteTDC": "coin_discrete_tdc",
53+
"EnergyOrPH": "energy_ph",
54+
"PulseWidth": "pulse_width",
55+
"PhaseAngle": "phase_angle",
56+
"Bin": "bin",
57+
}
58+
59+
for df_var, xr_var in vars_to_compare.items():
60+
good_values = df[df_var].values != -1
61+
np.testing.assert_array_equal(
62+
df[df_var].values[good_values], decom_ultra[xr_var].values[good_values]
63+
)

imap_processing/tests/ultra/unit/test_decom_apid_899.py

Lines changed: 30 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
indirect=True,
2020
)
2121
@pytest.mark.external_test_data
22-
def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
22+
def test_image_raw_events_decom(decom_test_data, xtce_path):
2323
"""This function reads validation data and checks that decom data
2424
matches validation data for image rate packet"""
2525
filename = (
@@ -31,88 +31,34 @@ def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
3131
)
3232

3333
decom_ultra = decom_test_data
34-
3534
df = pd.read_csv(priority_2_events_test_path, index_col="MET")
3635

37-
# # Check all values of each column are as expected,
38-
# except for those set to fill value
39-
np.testing.assert_array_equal(
40-
df["SID"].values[df["SID"].values != -1],
41-
decom_ultra["sid"].values[df["SID"].values != -1],
42-
)
43-
np.testing.assert_array_equal(
44-
df["Spin"].values[df["Spin"].values != -1],
45-
decom_ultra["spin"].values[df["Spin"].values != -1],
46-
)
47-
np.testing.assert_array_equal(
48-
df["AbortFlag"].values[df["AbortFlag"].values != -1],
49-
decom_ultra["abortflag"].values[df["AbortFlag"].values != -1],
50-
)
51-
np.testing.assert_array_equal(
52-
df["StartDelay"].values[df["StartDelay"].values != -1],
53-
decom_ultra["startdelay"].values[df["StartDelay"].values != -1],
54-
)
55-
np.testing.assert_array_equal(
56-
df["Count"].values[df["Count"].values != -1],
57-
decom_ultra["count"].values[df["Count"].values != -1],
58-
)
59-
np.testing.assert_array_equal(
60-
df["CoinType"].values[df["CoinType"].values != -1],
61-
decom_ultra["coin_type"].values[df["CoinType"].values != -1],
62-
)
63-
np.testing.assert_array_equal(
64-
df["StartType"].values[df["StartType"].values != -1],
65-
decom_ultra["start_type"].values[df["StartType"].values != -1],
66-
)
67-
np.testing.assert_array_equal(
68-
df["StopType"].values[df["StopType"].values != -1],
69-
decom_ultra["stop_type"].values[df["StopType"].values != -1],
70-
)
71-
np.testing.assert_array_equal(
72-
df["StartPosTDC"].values[df["StartPosTDC"].values != -1],
73-
decom_ultra["start_pos_tdc"].values[df["StartPosTDC"].values != -1],
74-
)
75-
np.testing.assert_array_equal(
76-
df["StopNorthTDC"].values[df["StopNorthTDC"].values != -1],
77-
decom_ultra["stop_north_tdc"].values[df["StopNorthTDC"].values != -1],
78-
)
79-
np.testing.assert_array_equal(
80-
df["StopEastTDC"].values[df["StopEastTDC"].values != -1],
81-
decom_ultra["stop_east_tdc"].values[df["StopEastTDC"].values != -1],
82-
)
83-
np.testing.assert_array_equal(
84-
df["StopSouthTDC"].values[df["StopSouthTDC"].values != -1],
85-
decom_ultra["stop_south_tdc"].values[df["StopSouthTDC"].values != -1],
86-
)
87-
np.testing.assert_array_equal(
88-
df["StopWestTDC"].values[df["StopWestTDC"].values != -1],
89-
decom_ultra["stop_west_tdc"].values[df["StopWestTDC"].values != -1],
90-
)
91-
np.testing.assert_array_equal(
92-
df["CoinNorthTDC"].values[df["CoinNorthTDC"].values != -1],
93-
decom_ultra["coin_north_tdc"].values[df["CoinNorthTDC"].values != -1],
94-
)
95-
np.testing.assert_array_equal(
96-
df["CoinSouthTDC"].values[df["CoinSouthTDC"].values != -1],
97-
decom_ultra["coin_south_tdc"].values[df["CoinSouthTDC"].values != -1],
98-
)
99-
np.testing.assert_array_equal(
100-
df["CoinDiscreteTDC"].values[df["CoinDiscreteTDC"].values != -1],
101-
decom_ultra["coin_discrete_tdc"].values[df["CoinDiscreteTDC"].values != -1],
102-
)
103-
np.testing.assert_array_equal(
104-
df["EnergyOrPH"].values[df["EnergyOrPH"].values != -1],
105-
decom_ultra["energy_ph"].values[df["EnergyOrPH"].values != -1],
106-
)
107-
np.testing.assert_array_equal(
108-
df["PulseWidth"].values[df["PulseWidth"].values != -1],
109-
decom_ultra["pulse_width"].values[df["PulseWidth"].values != -1],
110-
)
111-
np.testing.assert_array_equal(
112-
df["PhaseAngle"].values[df["PhaseAngle"].values != -1],
113-
decom_ultra["phase_angle"].values[df["PhaseAngle"].values != -1],
114-
)
115-
np.testing.assert_array_equal(
116-
df["Bin"].values[df["Bin"].values != -1],
117-
decom_ultra["bin"].values[df["Bin"].values != -1],
118-
)
36+
vars_to_compare = {
37+
"SID": "sid",
38+
"Spin": "spin",
39+
"AbortFlag": "abortflag",
40+
"StartDelay": "startdelay",
41+
"Count": "count",
42+
"CoinType": "coin_type",
43+
"StartType": "start_type",
44+
"StopType": "stop_type",
45+
"StartPosTDC": "start_pos_tdc",
46+
"StopNorthTDC": "stop_north_tdc",
47+
"StopEastTDC": "stop_east_tdc",
48+
"StopSouthTDC": "stop_south_tdc",
49+
"StopWestTDC": "stop_west_tdc",
50+
"CoinNorthTDC": "coin_north_tdc",
51+
"CoinSouthTDC": "coin_south_tdc",
52+
"CoinDiscreteTDC": "coin_discrete_tdc",
53+
"EnergyOrPH": "energy_ph",
54+
"PulseWidth": "pulse_width",
55+
"PhaseAngle": "phase_angle",
56+
"Bin": "bin",
57+
}
58+
59+
for df_var, xr_var in vars_to_compare.items():
60+
good_values = df[df_var].values != -1
61+
np.testing.assert_array_equal(
62+
df[df_var].values[good_values],
63+
decom_ultra[xr_var].values[good_values],
64+
)

imap_processing/tests/ultra/unit/test_decom_apid_900.py

Lines changed: 30 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
indirect=True,
2020
)
2121
@pytest.mark.external_test_data
22-
def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
22+
def test_image_raw_events_decom(decom_test_data, xtce_path):
2323
"""This function reads validation data and checks that decom data
2424
matches validation data for image rate packet"""
2525
filename = (
@@ -31,88 +31,34 @@ def test_image_raw_events_decom(decom_test_data, ccsds_path_events, xtce_path):
3131
)
3232

3333
decom_ultra = decom_test_data
34-
3534
df = pd.read_csv(priority_3_events_test_path, index_col="MET")
3635

37-
# # Check all values of each column are as expected,
38-
# except for those set to fill value
39-
np.testing.assert_array_equal(
40-
df["SID"].values[df["SID"].values != -1],
41-
decom_ultra["sid"].values[df["SID"].values != -1],
42-
)
43-
np.testing.assert_array_equal(
44-
df["Spin"].values[df["Spin"].values != -1],
45-
decom_ultra["spin"].values[df["Spin"].values != -1],
46-
)
47-
np.testing.assert_array_equal(
48-
df["AbortFlag"].values[df["AbortFlag"].values != -1],
49-
decom_ultra["abortflag"].values[df["AbortFlag"].values != -1],
50-
)
51-
np.testing.assert_array_equal(
52-
df["StartDelay"].values[df["StartDelay"].values != -1],
53-
decom_ultra["startdelay"].values[df["StartDelay"].values != -1],
54-
)
55-
np.testing.assert_array_equal(
56-
df["Count"].values[df["Count"].values != -1],
57-
decom_ultra["count"].values[df["Count"].values != -1],
58-
)
59-
np.testing.assert_array_equal(
60-
df["CoinType"].values[df["CoinType"].values != -1],
61-
decom_ultra["coin_type"].values[df["CoinType"].values != -1],
62-
)
63-
np.testing.assert_array_equal(
64-
df["StartType"].values[df["StartType"].values != -1],
65-
decom_ultra["start_type"].values[df["StartType"].values != -1],
66-
)
67-
np.testing.assert_array_equal(
68-
df["StopType"].values[df["StopType"].values != -1],
69-
decom_ultra["stop_type"].values[df["StopType"].values != -1],
70-
)
71-
np.testing.assert_array_equal(
72-
df["StartPosTDC"].values[df["StartPosTDC"].values != -1],
73-
decom_ultra["start_pos_tdc"].values[df["StartPosTDC"].values != -1],
74-
)
75-
np.testing.assert_array_equal(
76-
df["StopNorthTDC"].values[df["StopNorthTDC"].values != -1],
77-
decom_ultra["stop_north_tdc"].values[df["StopNorthTDC"].values != -1],
78-
)
79-
np.testing.assert_array_equal(
80-
df["StopEastTDC"].values[df["StopEastTDC"].values != -1],
81-
decom_ultra["stop_east_tdc"].values[df["StopEastTDC"].values != -1],
82-
)
83-
np.testing.assert_array_equal(
84-
df["StopSouthTDC"].values[df["StopSouthTDC"].values != -1],
85-
decom_ultra["stop_south_tdc"].values[df["StopSouthTDC"].values != -1],
86-
)
87-
np.testing.assert_array_equal(
88-
df["StopWestTDC"].values[df["StopWestTDC"].values != -1],
89-
decom_ultra["stop_west_tdc"].values[df["StopWestTDC"].values != -1],
90-
)
91-
np.testing.assert_array_equal(
92-
df["CoinNorthTDC"].values[df["CoinNorthTDC"].values != -1],
93-
decom_ultra["coin_north_tdc"].values[df["CoinNorthTDC"].values != -1],
94-
)
95-
np.testing.assert_array_equal(
96-
df["CoinSouthTDC"].values[df["CoinSouthTDC"].values != -1],
97-
decom_ultra["coin_south_tdc"].values[df["CoinSouthTDC"].values != -1],
98-
)
99-
np.testing.assert_array_equal(
100-
df["CoinDiscreteTDC"].values[df["CoinDiscreteTDC"].values != -1],
101-
decom_ultra["coin_discrete_tdc"].values[df["CoinDiscreteTDC"].values != -1],
102-
)
103-
np.testing.assert_array_equal(
104-
df["EnergyOrPH"].values[df["EnergyOrPH"].values != -1],
105-
decom_ultra["energy_ph"].values[df["EnergyOrPH"].values != -1],
106-
)
107-
np.testing.assert_array_equal(
108-
df["PulseWidth"].values[df["PulseWidth"].values != -1],
109-
decom_ultra["pulse_width"].values[df["PulseWidth"].values != -1],
110-
)
111-
np.testing.assert_array_equal(
112-
df["PhaseAngle"].values[df["PhaseAngle"].values != -1],
113-
decom_ultra["phase_angle"].values[df["PhaseAngle"].values != -1],
114-
)
115-
np.testing.assert_array_equal(
116-
df["Bin"].values[df["Bin"].values != -1],
117-
decom_ultra["bin"].values[df["Bin"].values != -1],
118-
)
36+
vars_to_compare = {
37+
"SID": "sid",
38+
"Spin": "spin",
39+
"AbortFlag": "abortflag",
40+
"StartDelay": "startdelay",
41+
"Count": "count",
42+
"CoinType": "coin_type",
43+
"StartType": "start_type",
44+
"StopType": "stop_type",
45+
"StartPosTDC": "start_pos_tdc",
46+
"StopNorthTDC": "stop_north_tdc",
47+
"StopEastTDC": "stop_east_tdc",
48+
"StopSouthTDC": "stop_south_tdc",
49+
"StopWestTDC": "stop_west_tdc",
50+
"CoinNorthTDC": "coin_north_tdc",
51+
"CoinSouthTDC": "coin_south_tdc",
52+
"CoinDiscreteTDC": "coin_discrete_tdc",
53+
"EnergyOrPH": "energy_ph",
54+
"PulseWidth": "pulse_width",
55+
"PhaseAngle": "phase_angle",
56+
"Bin": "bin",
57+
}
58+
59+
for df_var, xr_var in vars_to_compare.items():
60+
good_values = df[df_var].values != -1
61+
np.testing.assert_array_equal(
62+
df[df_var].values[good_values],
63+
decom_ultra[xr_var].values[good_values],
64+
)

0 commit comments

Comments
 (0)