Test factories and option classes