mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Merge pull request #1750 from dmathieu/non_string_methods
Calling unsafe methods which don't return a string shouldn't fail
This commit is contained in:
@@ -137,8 +137,8 @@ module ActiveSupport #:nodoc:
|
||||
|
||||
UNSAFE_STRING_METHODS.each do |unsafe_method|
|
||||
class_eval <<-EOT, __FILE__, __LINE__
|
||||
def #{unsafe_method}(*args)
|
||||
super.to_str
|
||||
def #{unsafe_method}(*args, &block)
|
||||
to_str.#{unsafe_method}(*args, &block)
|
||||
end
|
||||
|
||||
def #{unsafe_method}!(*args)
|
||||
|
||||
@@ -104,4 +104,8 @@ class SafeBufferTest < ActiveSupport::TestCase
|
||||
@buffer.safe_concat "BUSTED"
|
||||
end
|
||||
end
|
||||
|
||||
test "should not fail if the returned object is not a string" do
|
||||
assert_kind_of Enumerator, @buffer.gsub(/.*/)
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user