зеркало из https://github.com/github/ruby.git
Fix `Leaked tempfile`s
http://rubyci.s3.amazonaws.com/debian10/ruby-master/log/20200930T033004Z.diff.html.gz ``` [n/n] JSONCommonInterfaceTest#test_load = <elapsed> s [n/n] JSONCommonInterfaceTest#test_load_file = <elapsed> s +Leaked tempfile: JSONCommonInterfaceTest#test_load_file: #<Tempfile:<build-dir>/tmp/20200930-7601-ptnv6i (closed)> [n/n] JSONCommonInterfaceTest#test_load_file! = <elapsed> s +Leaked tempfile: JSONCommonInterfaceTest#test_load_file!: #<Tempfile:<build-dir>/tmp/20200930-7601-1la6m9 (closed)> [n/n] JSONCommonInterfaceTest#test_load_file_with_option = <elapsed> s +Leaked tempfile: JSONCommonInterfaceTest#test_load_file_with_option: #<Tempfile:<build-dir>/tmp/20200930-7601-blf9hz (closed)> [n/n] JSONCommonInterfaceTest#test_load_file_with_option! = <elapsed> s +Leaked tempfile: JSONCommonInterfaceTest#test_load_file_with_option!: #<Tempfile:<build-dir>/tmp/20200930-7601-b5gsdb (closed)> ```
This commit is contained in:
Родитель
1484b786ae
Коммит
30bb040ea4
|
@ -157,27 +157,15 @@ class JSONCommonInterfaceTest < Test::Unit::TestCase
|
|||
end
|
||||
end
|
||||
|
||||
# Copied and slightly modified from https://github.com/keithrbennett/trick_bag
|
||||
# (https://github.com/keithrbennett/trick_bag/blob/master/lib/trick_bag/io/temp_files.rb).
|
||||
#
|
||||
# For the easy creation and deletion of a temp file populated with text,
|
||||
# wrapped around the code block you provide.
|
||||
#
|
||||
# @param text the text to write to the temporary file
|
||||
# @param file_prefix optional prefix for the temporary file's name
|
||||
# @yield filespec of the temporary file
|
||||
def temp_file_containing(text, file_prefix = '')
|
||||
raise "This method must be called with a code block." unless block_given?
|
||||
|
||||
filespec = nil
|
||||
begin
|
||||
Tempfile.open(file_prefix) do |file|
|
||||
Tempfile.create(file_prefix) do |file|
|
||||
file << text
|
||||
filespec = file.path
|
||||
end
|
||||
yield(filespec)
|
||||
ensure
|
||||
File.delete(filespec) if filespec && File.exist?(filespec)
|
||||
file.close
|
||||
yield file.path
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Загрузка…
Ссылка в новой задаче