Sha256: 6b5d31fea78bea3e0498caa64b3c7d8f1914f1bfad35f41bc890a5220077d885

Contents?: true

Size: 782 Bytes

Versions: 1

Compression:

Stored size: 782 Bytes

Contents

module RestAssured
  class Response
    def self.perform(app)
      request = app.request

      if d = Models::Double.where(:fullpath => request.fullpath, :active => true, :verb => request.request_method).first
        request.body.rewind
        body   = request.body.read #without temp variable ':body = > body' is always nil. mistery
        env    = request.env.except('rack.input', 'rack.errors', 'rack.logger')

        d.requests.create!(:rack_env => env.to_json, :body => body, :params => request.params.to_json)

        app.body d.content
        app.status d.status
      elsif r = Models::Redirect.ordered.find { |r| request.fullpath =~ /#{r.pattern}/ }
        app.redirect( "#{r.to}#{request.fullpath}" )
      else
        app.status 404
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rest-assured-0.2.0 lib/rest-assured/routes/response.rb