Sha256: ea7009deb32922a774df12bb9ae5a5d1339d40759c35dfa684d14235bb1e3403

Contents?: true

Size: 806 Bytes

Versions: 1

Compression:

Stored size: 806 Bytes

Contents

require 'rubygems'
require 'sinatra'

set :port, 3001

helpers do
  def protected!
    unless authorized?
      response['WWW-Authenticate'] = %(Basic realm="BigBench TestWebServer")
      throw(:halt, [401, "Not authorized\n"])
    end
  end

  def authorized?
    @auth ||=  Rack::Auth::Basic::Request.new(request.env)
    @auth.provided? && @auth.basic? && @auth.credentials && @auth.credentials == ['admin', 'secret']
  end
end

# Base HTTP Verbs
get "/" do
  "Test"
end

put "/" do
  "Test"
end

post "/" do
  "Test"
end

delete "/" do
  "Test"
end

# Basic Auth URL
get "/basic/auth" do
  protected!
  "Test"
end

# Needs Body Params
post "/post/content" do
  status 406 unless (params[:name] == "bigbench" and params[:id] == "1") or (params[:name] == "bigbench2" and params[:id] == "2")
  "Test"
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bigbench-0.0.6 spec/lib/test_web_server.rb