;]
[askyou.git] / vendor / rails / activesupport / test / whiny_nil_test.rb
blob009d97940f55a395667465e54dd4de4e34adb1a9
1 # Stub to enable testing without Active Record
2 module ActiveRecord
3   class Base
4     def save!
5     end
6   end
7 end
9 require 'abstract_unit'
10 require 'active_support/whiny_nil'
12 class WhinyNilTest < Test::Unit::TestCase
13   def test_unchanged
14     nil.method_thats_not_in_whiners
15   rescue NoMethodError => nme
16     assert(nme.message =~ /nil:NilClass/)
17   end
19   def test_active_record
20     nil.save!
21   rescue NoMethodError => nme
22     assert(!(nme.message =~ /nil:NilClass/))
23     assert_match(/nil\.save!/, nme.message)
24   end
26   def test_array
27     nil.each
28   rescue NoMethodError => nme
29     assert(!(nme.message =~ /nil:NilClass/))
30     assert_match(/nil\.each/, nme.message)
31   end
33   def test_id
34     nil.id
35   rescue RuntimeError => nme
36     assert(!(nme.message =~ /nil:NilClass/))
37   end
39   def test_no_to_ary_coercion
40     nil.to_ary
41   rescue NoMethodError => nme
42     assert(nme.message =~ /nil:NilClass/)
43   end
45   def test_no_to_str_coercion
46     nil.to_str
47   rescue NoMethodError => nme
48     assert(nme.message =~ /nil:NilClass/)
49   end
50 end