def locate_candidate_recommendation(recommendation_list):
    """
    Locates a candidate recommendation for workflow testing in our recommendation list.

    Args:
        recommendation_list (list[Recommendation]): List of possible recommendations to be our candidate.

    Returns:
        Recommendation: A candidate recommendation for testing. Looks for a recommendation with NEW status by
                        preference, then REJECTED, and then ACCEPTED. If none is found, returns None.
    """
    for initial_status in ['NEW', 'REJECTED', 'ACCEPTED']:
        rec_candidates = [rec for rec in recommendation_list
                          if rec.rule_type == 'reputation_override' and rec.workflow_.status == initial_status]
        if len(rec_candidates) > 0:
            return rec_candidates[0]
    return None