aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/test/core_ext/enumerable_test.rb
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2007-09-14 00:34:43 +0000
committerJeremy Kemper <jeremy@bitsweat.net>2007-09-14 00:34:43 +0000
commit041b9b8a1c1661f90e8e586fddce981bfdb17f11 (patch)
treeef4778f501ee2a64b47d3eb2cc60236e8266e94d /activesupport/test/core_ext/enumerable_test.rb
parente6941149abbee39dbbe9898b0dc45e95046f7a70 (diff)
downloadrails-041b9b8a1c1661f90e8e586fddce981bfdb17f11.tar.gz
rails-041b9b8a1c1661f90e8e586fddce981bfdb17f11.tar.bz2
rails-041b9b8a1c1661f90e8e586fddce981bfdb17f11.zip
Some 1.9 forward compatibility
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7474 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activesupport/test/core_ext/enumerable_test.rb')
-rw-r--r--activesupport/test/core_ext/enumerable_test.rb10
1 files changed, 6 insertions, 4 deletions
diff --git a/activesupport/test/core_ext/enumerable_test.rb b/activesupport/test/core_ext/enumerable_test.rb
index 0590846b7b..55fdcf32ce 100644
--- a/activesupport/test/core_ext/enumerable_test.rb
+++ b/activesupport/test/core_ext/enumerable_test.rb
@@ -8,8 +8,7 @@ end
class EnumerableTests < Test::Unit::TestCase
def test_group_by
names = %w(marcel sam david jeremy)
- klass = Class.new
- klass.send(:attr_accessor, :name)
+ klass = Struct.new(:name)
objects = (1..50).inject([]) do |people,|
p = klass.new
p.name = names.sort_by { rand }.first
@@ -38,10 +37,13 @@ class EnumerableTests < Test::Unit::TestCase
end
def test_nil_sums
- assert_raise(TypeError) { [5, 15, nil].sum }
+ expected_raise = RUBY_VERSION < '1.9.0' ? TypeError : NoMethodError
+
+ assert_raise(expected_raise) { [5, 15, nil].sum }
payments = [ Payment.new(5), Payment.new(15), Payment.new(10), Payment.new(nil) ]
- assert_raise(TypeError) { payments.sum(&:price) }
+ assert_raise(expected_raise) { payments.sum(&:price) }
+
assert_equal 60, payments.sum { |p| p.price.to_i * 2 }
end