Guest User

Untitled

a guest
Feb 21st, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.82 KB | None | 0 0
  1. class RackSession
  2. attr_reader :response, :request, :app
  3.  
  4. def initialize(app)
  5. @app = app
  6. end
  7.  
  8. def get(path, data={}, headers={})
  9. do_request(:get, path, data, headers)
  10. end
  11.  
  12. def post(path, data={}, headers={})
  13. do_request(:post, path, data, headers)
  14. end
  15.  
  16. def put(path, data={}, headers={})
  17. do_request(:put, path, data, headers)
  18. end
  19.  
  20. def delete(path, data={}, headers={})
  21. do_request(:delete, path, data, headers)
  22. end
  23.  
  24. private
  25. def do_request(verb, path, data={}, headers={})
  26. if data.is_a?(String)
  27. headers.update(:input => data)
  28. data = {}
  29. end
  30.  
  31. @request = Rack::MockRequest.new(app)
  32. end
  33.  
  34. def uri(path, data={})
  35. uri = URI(path)
  36. uri.query = data.map {|k,v| "#{k}=#{v}" }.join("&")
  37. uri.to_s
  38. end
  39. end
Add Comment
Please, Sign In to add comment