Deprecation: silence warnings when reporting test errors.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5728 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
Jeremy Kemper 2006-12-17 08:21:45 +00:00
parent 2570f408f0
commit 8a73d4fe6f
3 changed files with 31 additions and 0 deletions

@ -1,5 +1,7 @@
*SVN*
* Deprecation: silence warnings when reporting test errors. [Jeremy Kemper]
* Hash#slice(*keys) returns a new hash with only the given keys. #slice! replaces the hash with only the given keys. Works with HashWithIndifferentAccess also. [Jeremy Kemper]
* HashWithIndifferentAccess#to_hash converts to a Hash with String keys and the same default value. [Jeremy Kemper]

@ -172,10 +172,23 @@ class Module
include ActiveSupport::Deprecation::ClassMethods
end
require 'test/unit'
module Test
module Unit
class TestCase
include ActiveSupport::Deprecation::Assertions
end
class Error # :nodoc:
# Silence warnings when reporting test errors.
def message_with_silenced_deprecation
ActiveSupport::Deprecation.silence do
message_without_silenced_deprecation
end
end
alias_method_chain :message, :silenced_deprecation
end
end
end

@ -128,4 +128,20 @@ def test_deprecation_with_alternate_method
def test_deprecation_with_explicit_message
assert_deprecated(/you now need to do something extra for this one/) { @dtc.d }
end
def test_assertion_failed_error_doesnt_spout_deprecation_warnings
error_class = Class.new(StandardError) do
def message
ActiveSupport::Deprecation.warn 'warning in error message'
super
end
end
raise error_class.new('hmm')
rescue => e
error = Test::Unit::Error.new('testing ur doodz', e)
assert_not_deprecated { error.message }
assert_nil @last_message
end
end