@@ -112,6 +112,46 @@ def tearDown(self):
112112 self .session .query (ErrorType ).delete ()
113113 self .session .commit ()
114114
115+ def test_bulk_change_extract_status (self ):
116+ """
117+ Testing that bulk change occurs when extracts provided.
118+ :return:
119+ """
120+ extract = ExtractTracker (
121+ process_run = self .process_tracker ,
122+ filename = "test_extract_filename2.csv" ,
123+ location_name = "Test Location" ,
124+ location_path = "/home/test/extract_dir" ,
125+ )
126+
127+ extract2 = ExtractTracker (
128+ process_run = self .process_tracker ,
129+ filename = "test_extract_filename3.csv" ,
130+ location_name = "Test Location" ,
131+ location_path = "/home/test/extract_dir" ,
132+ )
133+
134+ extracts = [extract , extract2 ]
135+
136+ self .process_tracker .bulk_change_extract_status (
137+ extracts = extracts , extract_status = "loading"
138+ )
139+
140+ given_result = (
141+ self .session .query (ExtractProcess )
142+ .join (ExtractStatus )
143+ .filter (
144+ ExtractProcess .process_tracking_id
145+ == self .process_tracker .process_tracking_run .process_tracking_id
146+ )
147+ .filter (ExtractStatus .extract_status_name == "loading" )
148+ .count ()
149+ )
150+
151+ expected_result = 2
152+
153+ self .assertEqual (expected_result , given_result )
154+
115155 def test_change_status_invalid_type (self ):
116156 """
117157 Testing that if an invalid process status type is passed, it will trigger an exception.
0 commit comments