@@ -1559,32 +1559,54 @@ def test_register_process_target_object_attributes(self):
15591559 def test_change_run_status_complete (self ):
15601560 """
15611561 Testing that when changing the run status from 'running' to 'complete' the run record updates successfully.
1562+ Process record is also updated for last_completed_date_time.
15621563 :return:
15631564 """
1564- self .process_tracker .change_run_status (new_status = "completed" )
1565+ end_date = datetime .now ()
1566+ end_date = end_date .replace (microsecond = 0 )
1567+ self .process_tracker .change_run_status (
1568+ new_status = "completed" , end_date = end_date
1569+ )
15651570
1566- run_record = self .session .query (ProcessTracking ).filter (
1567- ProcessTracking .process_id == self .process_id
1571+ run_record = (
1572+ self .session .query (
1573+ ProcessTracking .process_status_id , Process .last_completed_run_date_time
1574+ )
1575+ .join (Process )
1576+ .filter (ProcessTracking .process_id == self .process_id )
15681577 )
15691578
1570- given_result = run_record [0 ].process_status_id
1571- expected_result = self .process_tracker .process_status_complete
1579+ given_result = [
1580+ run_record [0 ].process_status_id ,
1581+ run_record [0 ].last_completed_run_date_time ,
1582+ ]
1583+ expected_result = [self .process_tracker .process_status_complete , end_date ]
15721584
15731585 self .assertEqual (expected_result , given_result )
15741586
15751587 def test_change_run_status_failed (self ):
15761588 """
15771589 Testing that when changing the run status from 'running' to 'failed' the run record updates successfully.
1590+ Process record is also updated for last_failed_date_time.
15781591 :return:
15791592 """
1580- self .process_tracker .change_run_status (new_status = "failed" )
1593+ end_date = datetime .now ()
1594+ end_date = end_date .replace (microsecond = 0 )
1595+ self .process_tracker .change_run_status (new_status = "failed" , end_date = end_date )
15811596
1582- run_record = self .session .query (ProcessTracking ).filter (
1583- ProcessTracking .process_id == self .process_id
1597+ run_record = (
1598+ self .session .query (
1599+ ProcessTracking .process_status_id , Process .last_failed_run_date_time
1600+ )
1601+ .join (Process )
1602+ .filter (ProcessTracking .process_id == self .process_id )
15841603 )
15851604
1586- given_result = run_record [0 ].process_status_id
1587- expected_result = self .process_tracker .process_status_failed
1605+ given_result = [
1606+ run_record [0 ].process_status_id ,
1607+ run_record [0 ].last_failed_run_date_time ,
1608+ ]
1609+ expected_result = [self .process_tracker .process_status_failed , end_date ]
15881610
15891611 self .assertEqual (expected_result , given_result )
15901612
0 commit comments