Updated to latest will_paginate
[gitorious:dgiuntas-clone.git] / vendor / plugins / will_paginate / test / helper.rb
1 require 'test/unit'
2 require 'rubygems'
3
4 # gem install redgreen for colored test output
5 begin require 'redgreen'; rescue LoadError; end
6
7 require 'boot' unless defined?(ActiveRecord)
8
9 class Test::Unit::TestCase
10   protected
11   def assert_respond_to_all object, methods
12     methods.each do |method|
13       [method.to_s, method.to_sym].each { |m| assert_respond_to object, m }
14     end
15   end
16   
17   def collect_deprecations
18     old_behavior = WillPaginate::Deprecation.behavior
19     deprecations = []
20     WillPaginate::Deprecation.behavior = Proc.new do |message, callstack|
21       deprecations << message
22     end
23     result = yield
24     [result, deprecations]
25   ensure
26     WillPaginate::Deprecation.behavior = old_behavior
27   end
28 end
29
30 # Wrap tests that use Mocha and skip if unavailable.
31 def uses_mocha(test_name)
32   require 'mocha' unless Object.const_defined?(:Mocha)
33 rescue LoadError => load_error
34   $stderr.puts "Skipping #{test_name} tests. `gem install mocha` and try again."
35 else
36   yield
37 end