module Mocha::IgnoringWarning
def ignoring_warning(pattern, if_: true)
def ignoring_warning(pattern, if_: true) return yield unless if_ begin original_warn = Warning.method(:warn) Warning.singleton_class.define_method(:warn) do |message| original_warn.call(message) unless message =~ pattern end yield ensure Warning.singleton_class.undef_method(:warn) Warning.singleton_class.define_method(:warn, original_warn) end end