def try_run(conn)
      return conn if conn.is_a? Exception
      begin
        arg = @arg
        arg = self.before_request_proc.call(conn) if self.before_request_proc

        start = Time.now
        response = self.run(conn, arg)
        time = Time.now - start
        response = self.before_tests_proc.call(response) if self.before_tests_proc
        return response, time
      rescue => e
        e
      end
    end
def try_run(conn)
      return conn if conn.is_a? Exception
      begin
        arg = @arg
        arg = self.before_request_proc.call(conn) if self.before_request_proc

        start = Time.now
        response = self.run(conn, arg)
        time = Time.now - start
        response = self.before_tests_proc.call(response) if self.before_tests_proc
        return response, time
      rescue => e
        e
      end
    end
call plugin run() and return plugin-specfic response object or exception