def test_cgi_location
make_cgi{ |output|
output.print "#!/usr/local/bin/ruby\n"
output.print "STDOUT.binmode\n"
output.print "print \"Location: /foo/bar\\r\\n\"\n"
output.print "print \"Content-Type: text/plain\\r\\n\"\n"
output.print "print \"\\r\\n\"\n"
output.print "print \"Hello world.\\n\"\n"
}
@request.method = 'GET'
@request.uri = '/test.cgi'
@request.version = 'HTTP/1.1'
@cgi.publish('', @request, @response, @logger)
assert_equal('HTTP/1.1', @messg_head.version)
assert_equal(302, @messg_head.status)
assert_equal('Found', @messg_head.reason)
assert_equal('/test.cgi', @messg_head.doc_path)
assert_match(@messg_head.local_path, /test\.cgi$/)
assert_equal('http://server:8080/foo/bar', @messg_head.header('Location'))
assert_equal('text/plain', @messg_head.header('Content-Type'))
assert_equal("Hello world.\n", @messg_body)
end