From 4fc61bbb3bd4d3bb138eab5e7ba426535d07a48e Mon Sep 17 00:00:00 2001 From: matz Date: Fri, 25 Nov 2005 05:42:28 +0000 Subject: * range.c (range_max): treat end exclusion without iteration if the end value is an integer. [ruby-talk:167433] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@9613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_range.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_range.rb b/test/ruby/test_range.rb index f0e0da2fd..31f7e29de 100644 --- a/test/ruby/test_range.rb +++ b/test/ruby/test_range.rb @@ -31,4 +31,24 @@ class TestRange < Test::Unit::TestCase def test_duckrange assert_equal("bc", "abcd"[DuckRange.new(1,2)]) end + + def test_min + assert_equal(1, (1..2).min) + assert_equal(nil, (2..1).min) + assert_equal(1, (1...2).min) + + assert_equal(1.0, (1.0..2.0).min) + assert_equal(nil, (2.0..1.0).min) + assert_equal(1, (1.0...2.0).min) + end + + def test_max + assert_equal(2, (1..2).max) + assert_equal(nil, (2..1).max) + assert_equal(1, (1...2).max) + + assert_equal(2.0, (1.0..2.0).max) + assert_equal(nil, (2.0..1.0).max) + assert_raise(TypeError) { (1.0...2.0).max } + end end -- cgit