blob: 97cc2700b4a93e46dd9c47e6306ffdef7a0f30de (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
############################################################
# This file is imported from a different project.
# DO NOT make modifications in this repo.
# File a patch instead and assign it to Ryan Davis
############################################################
require 'mini/test'
module Test; end
module Test::Unit # patch up bastards that that extend improperly.
if defined? Assertions then
warn "ARGH! someone defined Test::Unit::Assertions rather than requiring"
CRAP_ASSERTIONS = Assertions
remove_const :Assertions
# this will break on junit and rubinius... *sigh*
ObjectSpace.each_object(Module) do |offender|
offender.send :include, ::Mini::Assertions if offender < CRAP_ASSERTIONS
end rescue nil
Test::Unit::TestCase.send :include, CRAP_ASSERTIONS
end
Assertions = ::Mini::Assertions
module Assertions
def self.included mod
mod.send :include, Test::Unit::CRAP_ASSERTIONS
end if defined? Test::Unit::CRAP_ASSERTIONS
end
end
module Test::Unit
module Assertions
def assert_nothing_raised(*exp)
msg = (Module === exp.last) ? "" : exp.pop
noexc = exp.select {|e| not (Module === e and Exception >= e)}
unless noexc.empty?
noexc = *noexc if noexc.size == 1
raise TypeError, "Should expect a class of exception, #{noexc.inspect}"
end
self._assertions += 1
begin
yield
rescue Exception => e
exp.include?(e.class) or raise
raise(Mini::Assertion, exception_details(e, "#{msg}#{msg.empty? ? '' : ' '}Exception raised:"))
end
end
def build_message(user_message, template_message, *args)
user_message ||= ''
user_message += ' ' unless user_message.empty?
msg = template_message.split(/<\?>/).zip(args.map { |o| o.inspect })
user_message + msg.join
end
alias assert_nothing_thrown assert_nothing_raised
alias assert_raise assert_raises
alias assert_not_equal refute_equal
alias assert_no_match refute_match
alias assert_not_nil refute_nil
alias assert_not_same refute_same
private
def _wrap_assertion
yield
end
end
end
|