Sha256: 88402ad3c34c8964ba58db653d6f05d7c4898ce7869fe4ea7642d4d9a0538f19

Contents?: true

Size: 828 Bytes

Versions: 2

Compression:

Stored size: 828 Bytes

Contents

require 'rubygems'
require 'rack'
require 'webrick'


class SampleApp

  def self.start(host, port)
    Rack::Handler::WEBrick.run new,
                               :Host => host,
                               :Port => port,
                               :Logger => ::WEBrick::Log.new(RUBY_PLATFORM =~ /mswin|mingw/ ? 'NUL:' : '/dev/null'),
                               :AccessLog => [nil, nil]
  end

  def initialize
    @public = Rack::File.new(File.expand_path("../public", __FILE__))
  end

  def call(env)
    req = Rack::Request.new(env)

    case req.path
    when "/"
      [200, {}, ["Sample Application"]]
    when "/compute"
      sleep 3
      resp = eval(req.params['calculator-expression']).to_s
      [200, {}, [resp]]
    else
      @public.call(env)
    end
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
meeane-page-object-0.1.10 features/sample-app/sample_app.rb
meeane-page-object-0.1.8 features/sample-app/sample_app.rb