summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-08-05 09:36:16 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-08-05 09:36:16 +0000
commit5274f892015b2a41dc64c63a4ce1c843f4fb0a66 (patch)
treecc9c9cec201b0695bf0284cce027902448a11b4e /test/ruby
parent359d53787821dc287d0411565801d54791f0a9c6 (diff)
* complex.c (nucomp_marshal_load): should check the argument.
[ruby-core:31622] * rational.c (nurat_marshal_load): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_complex.rb5
-rw-r--r--test/ruby/test_rand.rb7
-rw-r--r--test/ruby/test_rational.rb5
3 files changed, 17 insertions, 0 deletions
diff --git a/test/ruby/test_complex.rb b/test/ruby/test_complex.rb
index f6d65de6de..b2894610f7 100644
--- a/test/ruby/test_complex.rb
+++ b/test/ruby/test_complex.rb
@@ -633,6 +633,11 @@ class Complex_Test < Test::Unit::TestCase
assert_equal(c, c2)
assert_instance_of(Complex, c2)
end
+
+ bug3656 = '[ruby-core:31622]'
+ assert_raise(TypeError, bug3656) {
+ Complex(1,2).marshal_load(0)
+ }
end
def test_parse
diff --git a/test/ruby/test_rand.rb b/test/ruby/test_rand.rb
index 8ef360bd49..40b291f959 100644
--- a/test/ruby/test_rand.rb
+++ b/test/ruby/test_rand.rb
@@ -427,4 +427,11 @@ END
assert_equal(x0, x2)
end
end
+
+ def test_marshal
+ bug3656 = '[ruby-core:31622]'
+ assert_raise(TypeError, bug3656) {
+ Random.new.marshal_load(0)
+ }
+ end
end
diff --git a/test/ruby/test_rational.rb b/test/ruby/test_rational.rb
index 02d8bd61ed..2f33ec2039 100644
--- a/test/ruby/test_rational.rb
+++ b/test/ruby/test_rational.rb
@@ -797,6 +797,11 @@ class Rational_Test < Test::Unit::TestCase
assert_raise(ZeroDivisionError){
Marshal.load("\x04\bU:\rRational[\ai\x06i\x05")
}
+
+ bug3656 = '[ruby-core:31622]'
+ assert_raise(TypeError, bug3656) {
+ Rational(1,2).marshal_load(0)
+ }
end
def test_parse