Base enables static by default if public is set and exists
This commit is contained in:
parent
4d7d3636af
commit
de6d6d6657
|
@ -1029,7 +1029,6 @@ module Sinatra
|
||||||
set :sessions, false
|
set :sessions, false
|
||||||
set :logging, false
|
set :logging, false
|
||||||
set :methodoverride, false
|
set :methodoverride, false
|
||||||
set :static, false
|
|
||||||
set :environment, (ENV['RACK_ENV'] || :development).to_sym
|
set :environment, (ENV['RACK_ENV'] || :development).to_sym
|
||||||
|
|
||||||
set :run, false # start server via at-exit hook?
|
set :run, false # start server via at-exit hook?
|
||||||
|
@ -1040,11 +1039,13 @@ module Sinatra
|
||||||
|
|
||||||
set :app_file, nil
|
set :app_file, nil
|
||||||
set :root, Proc.new { app_file && File.expand_path(File.dirname(app_file)) }
|
set :root, Proc.new { app_file && File.expand_path(File.dirname(app_file)) }
|
||||||
set :public, Proc.new { root && File.join(root, 'public') }
|
|
||||||
set :views, Proc.new { root && File.join(root, 'views') }
|
set :views, Proc.new { root && File.join(root, 'views') }
|
||||||
set :reload_templates, Proc.new { !development? }
|
set :reload_templates, Proc.new { !development? }
|
||||||
set :lock, false
|
set :lock, false
|
||||||
|
|
||||||
|
set :public, Proc.new { root && File.join(root, 'public') }
|
||||||
|
set :static, Proc.new { self.public && File.exist?(self.public) }
|
||||||
|
|
||||||
error ::Exception do
|
error ::Exception do
|
||||||
response.status = 500
|
response.status = 500
|
||||||
content_type 'text/html'
|
content_type 'text/html'
|
||||||
|
@ -1093,8 +1094,8 @@ module Sinatra
|
||||||
set :sessions, false
|
set :sessions, false
|
||||||
set :logging, Proc.new { ! test? }
|
set :logging, Proc.new { ! test? }
|
||||||
set :methodoverride, true
|
set :methodoverride, true
|
||||||
set :static, true
|
|
||||||
set :run, Proc.new { ! test? }
|
set :run, Proc.new { ! test? }
|
||||||
|
set :static, true
|
||||||
|
|
||||||
def self.register(*extensions, &block) #:nodoc:
|
def self.register(*extensions, &block) #:nodoc:
|
||||||
added_methods = extensions.map {|m| m.public_instance_methods }.flatten
|
added_methods = extensions.map {|m| m.public_instance_methods }.flatten
|
||||||
|
|
|
@ -274,10 +274,22 @@ class SettingsTest < Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'static' do
|
describe 'static' do
|
||||||
it 'is disabled on Base' do
|
it 'is disabled on Base by default' do
|
||||||
assert ! @base.static?
|
assert ! @base.static?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'is enabled on Base when public is set and exists' do
|
||||||
|
@base.set :environment, :development
|
||||||
|
@base.set :public, File.dirname(__FILE__)
|
||||||
|
assert @base.static?
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'is enabled on Base when root is set and root/public exists' do
|
||||||
|
@base.set :environment, :development
|
||||||
|
@base.set :root, File.dirname(__FILE__)
|
||||||
|
assert @base.static?
|
||||||
|
end
|
||||||
|
|
||||||
it 'is enabled on Application' do
|
it 'is enabled on Application' do
|
||||||
assert @application.static?
|
assert @application.static?
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue