def test_cancel_pipeline_instance_cancels_current_running_clients( self, db_session, pipeline_instance_by_id, store_service): """ @rapid-unit Workflow:Cancel Pipeline Instance:Should cancel current assigned clients :return: :rtype: """ db_session.return_value = [Mock()] mock_pipeline_instance = Mock() client1 = Mock() client1.get_uri.return_value = '12345' client2 = Mock() store_service.get_clients.return_value = { "12345": client1, "54321": client2 } mock_pipeline_instance.action_instances = [ Mock(assigned_to="12345", status_id=StatusConstants.INPROGRESS), Mock(assinged_to="12345", status_id=StatusConstants.SUCCESS), Mock(assinged_to="12345", status_id=StatusConstants.FAILED), Mock(assigned_to="other", status_id=StatusConstants.INPROGRESS) ] pipeline_instance_by_id.return_value = mock_pipeline_instance self.dal.app = Mock(rapid_config=Mock(verify_certs=False)) eq_("Running clients have been canceled and pipeline canceled.", self.dal.cancel_pipeline_instance(12345)['message']) self.mock_constants.cancel_worker.assert_called_with( mock_pipeline_instance.action_instances[0].serialize())