# encoding: utf-8

require 'httpkit'

HTTPkit.run do
  # This is short-hand for the HTTPkit::Server.start dance.
  HTTPkit.server('http://127.0.0.1:3000') do |request, served|
    p request.http_method
    # => :get
    p request.uri
    # => "/"
    p request.headers
    # => {"User-Agent"=>"httpkit/0.6.0.pre.5", "Host"=>"127.0.0.1:3000"}
    p request.body.to_s
    # => ""

    served.fulfill(HTTPkit::Response.new(200, {}, 'hello!'))
  end

  # Same here, but for HTTPkit::Client.start.
  response = HTTPkit.request(:get, 'http://127.0.0.1:3000')

  p response.status
  # => 200
  p response.status_name
  # => "OK"
  p response.headers
  # => {"Connection"=>"keep-alive", "Server"=>"httpkit/0.6.0.pre.5",
  #     "Date"=>"Sat, 19 Jul 2014 16:13:30 GMT", "Content-Length"=>"6"}
  p response.body.to_s
  # => "hello!"
end