def note_error(exception, type, explanation = '')
      without_recording_messages do
        explanation = explanation.to_s.strip
        message = "Saw #{exception ? exception.message : 'error'} during #{type}"
        message += ": #{explanation}" unless explanation.empty?
        error(message)
      end
      @errors << [exception, type, explanation]
    end
def note_error(exception, type, explanation = '')
      without_recording_messages do
        explanation = explanation.to_s.strip
        message = "Saw #{exception ? exception.message : 'error'} during #{type}"
        message += ": #{explanation}" unless explanation.empty?
        error(message)
      end
      @errors << [exception, type, explanation]
    end
implements Interface#note_error