./error-generator 8080
go to localhost:8080/PATH
generates response with CODE
generates response after given time
randomly returns 200 and 500
#!/usr/bin/env ruby | |
require 'rubygems' | |
require 'rack' | |
class ErrorGenerator | |
def call(env) | |
path = File.split(env["REQUEST_PATH"]) | |
if path.first == '/error' | |
response = path[1] || 404 | |
elsif path.first == '/slow' | |
response = 200 | |
sleep(path[1].to_i) | |
elsif path[1] == 'random' | |
response = rand(2) == 1 ? 200 : 500 | |
else | |
response = 404 | |
end | |
[response.to_i, {'Content-Type' => 'text/html'}, "Error #{response} Generated"] | |
end | |
end | |
Rack::Handler::WEBrick.run( | |
ErrorGenerator.new, | |
:Port => ARGV[0] | |
) |