1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
require File.expand_path('../../../spec_helper', __FILE__)
ruby_version_is "1.9" do
describe "File#reopen" do
before :each do
@name_a = tmp("file_reopen_a.txt")
@name_b = tmp("file_reopen_b.txt")
@content_a = "File#reopen a"
@content_b = "File#reopen b"
touch(@name_a) { |f| f.write @content_a }
touch(@name_b) { |f| f.write @content_b }
@file = nil
end
after :each do
@file.close unless @file.closed?
rm_r @name_a, @name_b
end
it "resets the stream to a new file path" do
file = File.new @name_a, "r"
file.read.should == @content_a
@file = file.reopen(@name_b, "r")
@file.read.should == @content_b
end
it "calls #to_path to convern an Object" do
@file = File.new(@name_a).reopen(mock_to_path(@name_b), "r")
@file.read.should == @content_b
end
end
end
|