test/static_test.rb in sinatra-sinatra-0.9.1 vs test/static_test.rb in sinatra-sinatra-0.9.1.1

- old
+ new

@@ -60,6 +60,21 @@ it '404s when a file is not found' do get "/foobarbaz.txt" assert not_found? end + + it 'serves files when .. path traverses within public directory' do + get "/data/../#{File.basename(__FILE__)}" + assert ok? + assert_equal File.read(__FILE__), body + end + + it '404s when .. path traverses outside of public directory' do + mock_app { + set :static, true + set :public, File.dirname(__FILE__) + '/data' + } + get "/../#{File.basename(__FILE__)}" + assert not_found? + end end