diff options
author | David Celis <me@davidcel.is> | 2013-06-16 16:57:49 -0700 |
---|---|---|
committer | David Celis <me@davidcel.is> | 2013-06-16 16:57:49 -0700 |
commit | 8fc3427646e932c3a1fb9f9794364866f030595e (patch) | |
tree | 1738867b5c15c00206fda3dc209837fafb6ee84a /actionpack/test | |
parent | 0f89689b2357f39da52515b83391db58689a1361 (diff) | |
download | rails-8fc3427646e932c3a1fb9f9794364866f030595e.tar.gz rails-8fc3427646e932c3a1fb9f9794364866f030595e.tar.bz2 rails-8fc3427646e932c3a1fb9f9794364866f030595e.zip |
Use a case insensitive URI Regexp for #asset_path
Context: https://gist.github.com/radar/5793814
The `URI_REGEXP` that various AssetUrl helpers use is currently case
sensitive when checking for a URI scheme. This means if you try to pass
a URL like `HTTP://www.example.com/path/to/image.jpg`, you end up with
a bogus asset path: `/assets/HTTP://www.example.com/path/to/image.jpg`.
URLs are case insensitive, so this regexp should be as well.
Signed-off-by: David Celis <me@davidcel.is>
Diffstat (limited to 'actionpack/test')
-rw-r--r-- | actionpack/test/template/asset_tag_helper_test.rb | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/actionpack/test/template/asset_tag_helper_test.rb b/actionpack/test/template/asset_tag_helper_test.rb index 8d0ab7fd81..214a13654e 100644 --- a/actionpack/test/template/asset_tag_helper_test.rb +++ b/actionpack/test/template/asset_tag_helper_test.rb @@ -48,6 +48,9 @@ class AssetTagHelperTest < ActionView::TestCase %(asset_path("style.min")) => %(/style.min), %(asset_path("style.min.css")) => %(/style.min.css), + %(asset_path("http://www.outside.com/image.jpg")) => %(http://www.outside.com/image.jpg), + %(asset_path("HTTP://www.outside.com/image.jpg")) => %(HTTP://www.outside.com/image.jpg), + %(asset_path("style", type: :stylesheet)) => %(/stylesheets/style.css), %(asset_path("xmlhr", type: :javascript)) => %(/javascripts/xmlhr.js), %(asset_path("xml.png", type: :image)) => %(/images/xml.png) @@ -445,8 +448,8 @@ class AssetTagHelperTest < ActionView::TestCase [nil, '/', '/foo/bar/', 'foo/bar/'].each do |prefix| assert_equal 'Rails', image_alt("#{prefix}rails.png") assert_equal 'Rails', image_alt("#{prefix}rails-9c0a079bdd7701d7e729bd956823d153.png") - assert_equal 'Long file name with hyphens', image_alt("#{prefix}long-file-name-with-hyphens.png") - assert_equal 'Long file name with underscores', image_alt("#{prefix}long_file_name_with_underscores.png") + assert_equal 'Long file name with hyphens', image_alt("#{prefix}long-file-name-with-hyphens.png") + assert_equal 'Long file name with underscores', image_alt("#{prefix}long_file_name_with_underscores.png") end end |