mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Wrote tests for the :check_ruby_version initializer
This commit is contained in:
parent
1d280e21a1
commit
d8406f0c20
1 changed files with 59 additions and 0 deletions
59
railties/test/initializer/check_ruby_version_test.rb
Normal file
59
railties/test/initializer/check_ruby_version_test.rb
Normal file
|
@ -0,0 +1,59 @@
|
|||
require 'abstract_unit'
|
||||
require 'active_support/ruby/shim'
|
||||
require 'initializer'
|
||||
|
||||
RAILS_ROOT.replace File.join(File.dirname(__FILE__), "root")
|
||||
|
||||
module Rails
|
||||
def self.vendor_rails? ; false ; end
|
||||
end
|
||||
|
||||
module InitializerTests
|
||||
class PathsTest < ActiveSupport::TestCase
|
||||
include ActiveSupport::Testing::Isolation
|
||||
|
||||
test "rails does not initialize with ruby version 1.8.1" do
|
||||
assert_rails_does_not_boot "1.8.1"
|
||||
end
|
||||
|
||||
test "rails initializes with ruby version 1.8.2" do
|
||||
assert_rails_boots "1.8.2"
|
||||
end
|
||||
|
||||
test "rails does not initialize with ruby version 1.8.3" do
|
||||
assert_rails_does_not_boot "1.8.3"
|
||||
end
|
||||
|
||||
test "rails initializes with ruby version 1.8.4" do
|
||||
assert_rails_boots "1.8.4"
|
||||
end
|
||||
|
||||
test "rails initializes with ruby version 1.8.5" do
|
||||
assert_rails_boots "1.8.5"
|
||||
end
|
||||
|
||||
test "rails initializes with ruby version 1.8.6" do
|
||||
assert_rails_boots "1.8.6"
|
||||
end
|
||||
|
||||
def set_ruby_version(version)
|
||||
$-w = nil
|
||||
Object.const_set(:RUBY_VERSION, version.freeze)
|
||||
end
|
||||
|
||||
def assert_rails_boots(version)
|
||||
set_ruby_version(version)
|
||||
assert_nothing_raised "It appears that rails does not boot" do
|
||||
Rails::Initializer.run { |c| c.frameworks = [] }
|
||||
end
|
||||
end
|
||||
|
||||
def assert_rails_does_not_boot(version)
|
||||
set_ruby_version(version)
|
||||
$stderr = File.open("/dev/null", "w")
|
||||
assert_raises(SystemExit) do
|
||||
Rails::Initializer.run { |c| c.frameworks = [] }
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue