summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-22 06:22:00 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-22 06:22:00 +0000
commit8837f5948551444299fe5a13d06fa210dce01c65 (patch)
tree216cbc3dab14a166b6faff8fbcc51dfdc0469a3a /test
parent48df11da1c6a53a34881649d49fa1bfaf9abdb61 (diff)
merge revision(s) 19078,20097:
* gc.c (rb_mark_set): new function to mark keys. * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark data entries. backport from trunk r13527,r13528,r13961,r16533. [ruby-dev:36082] * marshal.c (marshal_load): arg.data is no longer a VALUE but a st_table, and freed in load_ensure. pointed out by pegacorn. [ruby-dev:37008] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_7@21731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/ruby/marshaltestlib.rb6
-rw-r--r--test/ruby/test_marshal.rb6
2 files changed, 12 insertions, 0 deletions
diff --git a/test/ruby/marshaltestlib.rb b/test/ruby/marshaltestlib.rb
index 891f43b1f7..ae60cd8479 100644
--- a/test/ruby/marshaltestlib.rb
+++ b/test/ruby/marshaltestlib.rb
@@ -193,6 +193,12 @@ module MarshalTestLib
1.instance_eval { remove_instance_variable("@iv") }
end
+ def test_fixnum_64bit
+ obj = [1220278665, 1220278662, 1220278661, 1220278661, 1220278656]
+
+ marshal_equal(obj)
+ end
+
def test_float
marshal_equal(-1.0)
marshal_equal(0.0)
diff --git a/test/ruby/test_marshal.rb b/test/ruby/test_marshal.rb
index 11f3583076..68f50ff728 100644
--- a/test/ruby/test_marshal.rb
+++ b/test/ruby/test_marshal.rb
@@ -12,11 +12,17 @@ class TestMarshal < Test::Unit::TestCase
include MarshalTestLib
def encode(o)
+ stress, GC.stress = GC.stress, true
Marshal.dump(o)
+ ensure
+ GC.stress = stress
end
def decode(s)
+ stress, GC.stress = GC.stress, true
Marshal.load(s)
+ ensure
+ GC.stress = stress
end
def fact(n)