Sha256: 4ea405ab6a9504d6010d47d740b91217970f2a06493c42aed8456edfabf5c007

Contents?: true

Size: 1.07 KB

Versions: 13

Compression:

Stored size: 1.07 KB

Contents

require 'sinatra'
require 'json'

class TestApp < Sinatra::Application
  get '/' do
    status 200
  end

  post '/' do
    response = { 'some_param' => params['some_param'],
                 'im_a_number' => params['im_a_number'] }
    status 201

    return response.to_json
  end

  put '/' do
    response = { 'some_param' => params['some_param'],
                 'im_a_number' => params['im_a_number'] }
    status 202

    return response.to_json
  end

  get '/json' do
    return { 'key' => 1 }.to_json
  end

  post '/json' do
    request.body.rewind
    body = JSON.parse(request.body.read)

    status 201
    return body.to_json
  end

  delete '/json' do
    request.body.rewind
    body = JSON.parse(request.body.read)

    if body['some_key'] == 'some_value'
      status 203
    else
      halt 400
    end
  end

  get '/redirect' do
    redirect to '/'
  end

  # For testing Timefreeze in Cukes
  get '/time' do
    time = Time.now.to_i

    return { 'time' => time }.to_json
  end

  get '/route/:uri_var' do |uri_var|
    return { 'variable' => uri_var }.to_json
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
lookout-rack-test-3.0.0 examples/test_app.rb
lookout-rack-test-2.3.1 examples/test_app.rb
lookout-rack-test-2.3.0 examples/test_app.rb
lookout-rack-test-2.2.0 examples/test_app.rb
lookout-rack-test-2.1.0 examples/test_app.rb
lookout-rack-test-2.0.2 examples/test_app.rb
lookout-rack-test-2.0.1 examples/test_app.rb
lookout-rack-test-2.0.0 examples/test_app.rb
lookout-rack-test-1.3.0 examples/test_app.rb
lookout-rack-test-1.2.0 examples/test_app.rb
lookout-rack-test-1.1.0 examples/test_app.rb
lookout-rack-test-1.0.1 examples/test_app.rb
lookout-rack-test-1.0.0 examples/test_app.rb