diff options
-rw-r--r-- | ChangeLog | 1 | ||||
-rw-r--r-- | lib/mini/test.rb | 16 |
2 files changed, 14 insertions, 3 deletions
@@ -2,6 +2,7 @@ Tue Sep 30 13:04:11 2008 Ryan Davis <ryan@wrath.local> * lib/mini/test.rb: Updated to 1.3.0 r4255. * test/mini/*: added from r4255. + * lib/mini/test.rb: rolled out change 19608... not 1.8 compatible. Tue Sep 30 07:46:07 2008 Eric Hodel <drbrain@segment7.net> diff --git a/lib/mini/test.rb b/lib/mini/test.rb index e19029c465..bb5fc07724 100644 --- a/lib/mini/test.rb +++ b/lib/mini/test.rb @@ -14,18 +14,28 @@ module Mini class Assertion < Exception; end class Skip < Assertion; end - MINI_DIR = File.expand_path("../..", __FILE__) + file = if __FILE__ =~ /^[^\.]/ then # OMG ruby 1.9 is so lame (rubinius too) + require 'pathname' + pwd = Pathname.new(Dir.pwd) + pn = Pathname.new(File.expand_path(__FILE__)) + pn = File.join(".", pn.relative_path_from(pwd)) unless pn.relative? + pn.to_s + else + __FILE__ + end + + MINI_DIR = File.dirname(File.dirname(file)) def self.filter_backtrace bt return ["No backtrace"] unless bt new_bt = [] bt.each do |line| - break if line.index(MINI_DIR, 0) + break if line.index(MINI_DIR) == 0 new_bt << line end - new_bt = bt.reject { |line| line.index(MINI_DIR, 0) } if + new_bt = bt.reject { |line| line.index(MINI_DIR) == 0 } if new_bt.empty? new_bt = bt.dup if new_bt.empty? |