diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-03 10:18:14 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-10-03 10:18:14 +0000 |
commit | 74926fefb7de9ade12ef1dbc4994efe981aaa55a (patch) | |
tree | 82836b85012684734d6edaa678c30e26be5297e7 /test/ruby/test_integer.rb | |
parent | 51b89eeb03414636ed144841626f358ba6788303 (diff) | |
download | ruby-74926fefb7de9ade12ef1dbc4994efe981aaa55a.tar.gz |
* object.c (rb_f_integer): now Integer() takes optional base
argument. base will be ignored for non string values.
suggested by Sam Carr at RubyFoo Lounge at London.
* test/ruby/test_integer.rb (TestInteger#test_Integer): test
updated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_integer.rb')
-rw-r--r-- | test/ruby/test_integer.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/ruby/test_integer.rb b/test/ruby/test_integer.rb index 232a7fae30..b3dd11d55a 100644 --- a/test/ruby/test_integer.rb +++ b/test/ruby/test_integer.rb @@ -71,6 +71,19 @@ class TestInteger < Test::Unit::TestCase assert_equal(0377, Integer("0_3_7_7")) } assert_raise(ArgumentError, "[ruby-core:14139]") {Integer("0__3_7_7")} + assert_equal(1234, Integer(1234)) + assert_equal(1, Integer(1.234)) + + # base argument + assert_equal(1234, Integer("1234", 10)) + assert_equal(668, Integer("1234", 8)) + assert_equal(4660, Integer("1234", 16)) + assert_equal(49360, Integer("1234", 36)) + # decimal, not octal + assert_equal(1234, Integer("01234", 10)) + assert_raise(ArgumentError) { Integer("0x123", 10) } + assert_raise(ArgumentError) { Integer(1234, 10) } + assert_raise(ArgumentError) { Integer(12.34, 10) } end def test_int_p |