diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-01-27 05:01:18 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-01-27 05:01:18 +0000 |
commit | 640bcdf217f69d83e96483a59ae7f9af4d534f43 (patch) | |
tree | acf57cfc4bcebf04751a99f8035f0a6b14e20691 | |
parent | 70410163f55bacb7995204b8cc1b8d09dffe79fb (diff) |
leakchecker.rb: get rid of uninitialized Tempfile
* test/lib/leakchecker.rb (LeakChecker#find_tempfiles): get rid of
errors on uninitialized Tempfile, which can be left when
Dir.tmpdir failed or by Tempfile.allocate.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | test/lib/leakchecker.rb | 4 | ||||
-rw-r--r-- | test/test_tempfile.rb | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/test/lib/leakchecker.rb b/test/lib/leakchecker.rb index 355f93dc79..c0cf718635 100644 --- a/test/lib/leakchecker.rb +++ b/test/lib/leakchecker.rb @@ -114,7 +114,9 @@ class LeakChecker if prev_count == count [prev_count, []] else - tempfiles = ObjectSpace.each_object(Tempfile).find_all {|t| t.path } + tempfiles = ObjectSpace.each_object(Tempfile).find_all {|t| + t.instance_variable_defined?(:@tmpfile) and t.path + } [count, tempfiles] end end diff --git a/test/test_tempfile.rb b/test/test_tempfile.rb index 361613173f..7f7f75c7db 100644 --- a/test/test_tempfile.rb +++ b/test/test_tempfile.rb @@ -20,6 +20,10 @@ class TestTempfile < Test::Unit::TestCase end end + def test_leackchecker + assert_instance_of(Tempfile, Tempfile.allocate) + end + def test_basic t = tempfile("foo") path = t.path |