mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
revises a test to account for case-insensitive file systems
The patched test assumed the file system is case-sensitive, but that is not necessarily the case. In particular, this test did not pass in the recommended setup for the dev box, because the /vagrant shared folder is case-insensitive. After looking at some gems that provide access to file system metadata I have chosen to go with the check you can see in the patch because, albeit it's a bit dirty creating a file, it is super easy to understand and clearly portable. References https://github.com/rails/rails-dev-box/issues/102.
This commit is contained in:
parent
448bf47fe7
commit
d345ce9630
1 changed files with 19 additions and 3 deletions
|
@ -1,5 +1,6 @@
|
||||||
require 'abstract_unit'
|
require 'abstract_unit'
|
||||||
require "active_model"
|
require 'active_model'
|
||||||
|
require 'fileutils'
|
||||||
|
|
||||||
class ApplicationController < ActionController::Base
|
class ApplicationController < ActionController::Base
|
||||||
self.view_paths = File.join(FIXTURE_LOAD_PATH, "actionpack")
|
self.view_paths = File.join(FIXTURE_LOAD_PATH, "actionpack")
|
||||||
|
@ -678,6 +679,14 @@ class RenderTest < ActionController::TestCase
|
||||||
ActionView::Base.logger = nil
|
ActionView::Base.logger = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def case_sensitive_file_system?
|
||||||
|
fname = '.case_sensitive_file_system_test'
|
||||||
|
FileUtils.touch(fname)
|
||||||
|
!File.exists?(fname.upcase)
|
||||||
|
ensure
|
||||||
|
FileUtils.rm_f(fname)
|
||||||
|
end
|
||||||
|
|
||||||
# :ported:
|
# :ported:
|
||||||
def test_simple_show
|
def test_simple_show
|
||||||
get :hello_world
|
get :hello_world
|
||||||
|
@ -747,8 +756,15 @@ class RenderTest < ActionController::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_render_action_upcased
|
def test_render_action_upcased
|
||||||
assert_raise ActionView::MissingTemplate do
|
action = :render_action_upcased_hello_world
|
||||||
get :render_action_upcased_hello_world
|
|
||||||
|
if case_sensitive_file_system?
|
||||||
|
assert_raise ActionView::MissingTemplate do
|
||||||
|
get action
|
||||||
|
end
|
||||||
|
else
|
||||||
|
get action
|
||||||
|
assert_template 'test/Hello_world'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue