- works with GET
- works with POST
- should dispatch onward on 404 by default
- should dispatch onward on whatever is passed
- should fail if empty
- should respond
- should be a lighttpd
- should have rack headers
- should have CGI headers on GET
- should have CGI headers on POST
- should support HTTP auth
- should set status
- should log to rack.errors by default
- should log to anything with <<
- should respond
- should be a lighttpd
- should have rack headers
- should have CGI headers on GET
- should have CGI headers on POST
- should support HTTP auth
- should set status
- serves files
- does not allow directory traversal
- 404s if it can’t find the file
- passes valid request
- notices fatal errors
- notices environment errors
- notices input errors
- notices error errors
- notices status errors
- notices header errors
- notices content-type errors
- notices body errors
- notices input handling errors
- notices error handling errors
Rack::Lobster::LambdaLobster
- should be a single lambda
- should look like a lobster
- should be flippable
- should look like a lobster
- should be flippable
- should provide crashing for testing purposes
- should return a MockResponse
- should be able to only return the environment
- should provide sensible defaults
- should allow GET/POST/PUT/DELETE
- should allow posting
- should use all parts of an URL
- should behave valid according to the Rack spec
- should provide access to the HTTP status
- should provide access to the HTTP headers
- should provide access to the HTTP body
- should provide access to the Rack errors
- should optionally make Rack errors fatal
- should respond
- should be a Mongrel
- should have rack headers
- should have CGI headers on GET
- should have CGI headers on POST
- should support HTTP auth
- should set status
- should allow for subrequests
- should raise error on requests not below the app
- should support forwarding
- wraps the rack variables
- can figure out the correct host
- can parse the query string
- can parse POST data
- can cache, but invalidates the cache
- can figure out if called via XHR
- can parse cookies
- provides setters
- provides the original env
- can restore the URL
- can parse multipart form data
- can parse big multipart form data
- can detect invalid multipart form data
- has sensible default values
- can be written to
- can set and read headers
- can set cookies
- can delete cookies
- has a useful constructor
- has a constructor that can take a block
- doesn’t return invalid responses
- dispatches paths correctly
- dispatches hosts correctly
- should be nestable
- should route root apps correctly
- should escape correctly
- should unescape correctly
- should parse queries correctly
- should capitalize on all accesses
- should capitalize correctly
- should be converted to real Hash
- should respond
- should be a WEBrick
- should have rack headers
- should have CGI headers on GET
- should have CGI headers on POST
- should support HTTP auth
- should set status
102 specifications (428 requirements), 0 failures