X7ROOT File Manager
Current Path:
/opt/alt/ruby19/lib64/ruby/gems/1.9.1/gems/rack-1.6.4/test
opt
/
alt
/
ruby19
/
lib64
/
ruby
/
gems
/
1.9.1
/
gems
/
rack-1.6.4
/
test
/
ðŸ“
..
ðŸ“
builder
ðŸ“
cgi
📄
gemloader.rb
(298 B)
ðŸ“
multipart
ðŸ“
rackup
ðŸ“
registering_handler
📄
spec_auth_basic.rb
(2.26 KB)
📄
spec_auth_digest.rb
(8.08 KB)
📄
spec_body_proxy.rb
(2.2 KB)
📄
spec_builder.rb
(6.2 KB)
📄
spec_cascade.rb
(2.11 KB)
📄
spec_cgi.rb
(2.92 KB)
📄
spec_chunked.rb
(3.87 KB)
📄
spec_commonlogger.rb
(2.37 KB)
📄
spec_conditionalget.rb
(3.28 KB)
📄
spec_config.rb
(544 B)
📄
spec_content_length.rb
(2.8 KB)
📄
spec_content_type.rb
(1.47 KB)
📄
spec_deflater.rb
(10.04 KB)
📄
spec_directory.rb
(2.19 KB)
📄
spec_etag.rb
(3.84 KB)
📄
spec_fastcgi.rb
(3.08 KB)
📄
spec_file.rb
(6.32 KB)
📄
spec_handler.rb
(1.87 KB)
📄
spec_head.rb
(1.36 KB)
📄
spec_lint.rb
(19.23 KB)
📄
spec_lobster.rb
(1.23 KB)
📄
spec_lock.rb
(4.33 KB)
📄
spec_logger.rb
(622 B)
📄
spec_methodoverride.rb
(2.38 KB)
📄
spec_mime.rb
(1.81 KB)
📄
spec_mock.rb
(9.34 KB)
📄
spec_mongrel.rb
(5.73 KB)
📄
spec_multipart.rb
(23.62 KB)
📄
spec_nulllogger.rb
(514 B)
📄
spec_recursive.rb
(1.83 KB)
📄
spec_request.rb
(42.52 KB)
📄
spec_response.rb
(10.08 KB)
📄
spec_rewindable_input.rb
(2.78 KB)
📄
spec_runtime.rb
(1.53 KB)
📄
spec_sendfile.rb
(4.12 KB)
📄
spec_server.rb
(5.57 KB)
📄
spec_session_abstract_id.rb
(1.29 KB)
📄
spec_session_cookie.rb
(12.94 KB)
📄
spec_session_memcache.rb
(11.12 KB)
📄
spec_session_pool.rb
(6.53 KB)
📄
spec_showexceptions.rb
(2.01 KB)
📄
spec_showstatus.rb
(2.74 KB)
📄
spec_static.rb
(4.6 KB)
📄
spec_tempfile_reaper.rb
(1.57 KB)
📄
spec_thin.rb
(2.55 KB)
📄
spec_urlmap.rb
(8.82 KB)
📄
spec_utils.rb
(24.89 KB)
📄
spec_version.rb
(504 B)
📄
spec_webrick.rb
(5.5 KB)
ðŸ“
static
📄
testrequest.rb
(1.96 KB)
ðŸ“
unregistered_handler
Editing: spec_sendfile.rb
require 'fileutils' require 'rack/lint' require 'rack/sendfile' require 'rack/mock' require 'tmpdir' describe Rack::File do should "respond to #to_path" do Rack::File.new(Dir.pwd).should.respond_to :to_path end end describe Rack::Sendfile do def sendfile_body FileUtils.touch File.join(Dir.tmpdir, "rack_sendfile") res = ['Hello World'] def res.to_path ; File.join(Dir.tmpdir, "rack_sendfile") ; end res end def simple_app(body=sendfile_body) lambda { |env| [200, {'Content-Type' => 'text/plain'}, body] } end def sendfile_app(body, mappings = []) Rack::Lint.new Rack::Sendfile.new(simple_app(body), nil, mappings) end def request(headers={}, body=sendfile_body, mappings=[]) yield Rack::MockRequest.new(sendfile_app(body, mappings)).get('/', headers) end def open_file(path) Class.new(File) do unless method_defined?(:to_path) alias :to_path :path end end.open(path, 'wb+') end it "does nothing when no X-Sendfile-Type header present" do request do |response| response.should.be.ok response.body.should.equal 'Hello World' response.headers.should.not.include 'X-Sendfile' end end it "sets X-Sendfile response header and discards body" do request 'HTTP_X_SENDFILE_TYPE' => 'X-Sendfile' do |response| response.should.be.ok response.body.should.be.empty response.headers['Content-Length'].should.equal '0' response.headers['X-Sendfile'].should.equal File.join(Dir.tmpdir, "rack_sendfile") end end it "sets X-Lighttpd-Send-File response header and discards body" do request 'HTTP_X_SENDFILE_TYPE' => 'X-Lighttpd-Send-File' do |response| response.should.be.ok response.body.should.be.empty response.headers['Content-Length'].should.equal '0' response.headers['X-Lighttpd-Send-File'].should.equal File.join(Dir.tmpdir, "rack_sendfile") end end it "sets X-Accel-Redirect response header and discards body" do headers = { 'HTTP_X_SENDFILE_TYPE' => 'X-Accel-Redirect', 'HTTP_X_ACCEL_MAPPING' => "#{Dir.tmpdir}/=/foo/bar/" } request headers do |response| response.should.be.ok response.body.should.be.empty response.headers['Content-Length'].should.equal '0' response.headers['X-Accel-Redirect'].should.equal '/foo/bar/rack_sendfile' end end it 'writes to rack.error when no X-Accel-Mapping is specified' do request 'HTTP_X_SENDFILE_TYPE' => 'X-Accel-Redirect' do |response| response.should.be.ok response.body.should.equal 'Hello World' response.headers.should.not.include 'X-Accel-Redirect' response.errors.should.include 'X-Accel-Mapping' end end it 'does nothing when body does not respond to #to_path' do request({'HTTP_X_SENDFILE_TYPE' => 'X-Sendfile'}, ['Not a file...']) do |response| response.body.should.equal 'Not a file...' response.headers.should.not.include 'X-Sendfile' end end it "sets X-Accel-Redirect response header and discards body when initialized with multiple mappings" do begin dir1 = Dir.mktmpdir dir2 = Dir.mktmpdir first_body = open_file(File.join(dir1, 'rack_sendfile')) first_body.puts 'hello world' second_body = open_file(File.join(dir2, 'rack_sendfile')) second_body.puts 'goodbye world' mappings = [ ["#{dir1}/", '/foo/bar/'], ["#{dir2}/", '/wibble/'] ] request({'HTTP_X_SENDFILE_TYPE' => 'X-Accel-Redirect'}, first_body, mappings) do |response| response.should.be.ok response.body.should.be.empty response.headers['Content-Length'].should.equal '0' response.headers['X-Accel-Redirect'].should.equal '/foo/bar/rack_sendfile' end request({'HTTP_X_SENDFILE_TYPE' => 'X-Accel-Redirect'}, second_body, mappings) do |response| response.should.be.ok response.body.should.be.empty response.headers['Content-Length'].should.equal '0' response.headers['X-Accel-Redirect'].should.equal '/wibble/rack_sendfile' end ensure FileUtils.remove_entry_secure dir1 FileUtils.remove_entry_secure dir2 end end end
Upload File
Create Folder