mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Using the sum of bytes instead the hash of the path when replacing the wildcard of the assets path because in ruby 1.9 is not consistent
This commit is contained in:
parent
298a0834e1
commit
f6a6b51ae5
2 changed files with 5 additions and 3 deletions
|
@ -111,7 +111,8 @@ module ActionView
|
|||
args << current_request if (arity > 1 || arity < 0) && has_request?
|
||||
host.call(*args)
|
||||
else
|
||||
(host =~ /%d/) ? host % (source.hash % 4) : host
|
||||
source_num = source.bytes.sum
|
||||
(host =~ /%d/) ? host % (source_num % 4) : host
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -689,9 +689,9 @@ class AssetTagHelperTest < ActionView::TestCase
|
|||
@controller.config.asset_host = 'http://a%d.example.com'
|
||||
config.perform_caching = true
|
||||
|
||||
hash = '/javascripts/cache/money.js'.hash % 4
|
||||
number = '/javascripts/cache/money.js'.bytes.sum % 4
|
||||
assert_dom_equal(
|
||||
%(<script src="http://a#{hash}.example.com/javascripts/cache/money.js" type="text/javascript"></script>),
|
||||
%(<script src="http://a#{number}.example.com/javascripts/cache/money.js" type="text/javascript"></script>),
|
||||
javascript_include_tag(:all, :cache => "cache/money")
|
||||
)
|
||||
|
||||
|
@ -1129,6 +1129,7 @@ class AssetTagHelperNonVhostTest < ActionView::TestCase
|
|||
end
|
||||
|
||||
def test_should_wildcard_asset_host_between_zero_and_four
|
||||
String.any_instance.expects(:hash).times(0)
|
||||
@controller.config.asset_host = 'http://a%d.example.com'
|
||||
assert_match(%r(http://a[0123].example.com/collaboration/hieraki/images/xml.png), image_path('xml.png'))
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue