Sha256: 0877cbc24880871165c0f078446c2313189fbd7ccfa1130752e1ece7a88e5b42
Contents?: true
Size: 1.37 KB
Versions: 2
Compression:
Stored size: 1.37 KB
Contents
require 'net/ftp' describe "Net::FTP.open" do before(:each) do @ftp = mock("Net::FTP instance") Net::FTP.stub!(:new).and_return(@ftp) end describe "when passed no block" do it "returns a new Net::FTP instance" do Net::FTP.open("localhost").should equal(@ftp) end it "passes the passed arguments down to Net::FTP.new" do Net::FTP.should_receive(:new).with("localhost", "user", "password", "account") Net::FTP.open("localhost", "user", "password", "account") end end describe "when passed a block" do before(:each) do @ftp.stub!(:close) end it "yields a new Net::FTP instance to the passed block" do yielded = false Net::FTP.open("localhost") do |ftp| yielded = true ftp.should equal(@ftp) end yielded.should be_true end it "closes the Net::FTP instance after yielding" do Net::FTP.open("localhost") do |ftp| ftp.should_receive(:close) end end it "closes the Net::FTP instance even if an exception is raised while yielding" do begin Net::FTP.open("localhost") do |ftp| ftp.should_receive(:close) raise ArgumentError, "some exception" end rescue ArgumentError end end it "returns the block's return value" do Net::FTP.open("localhost") { :test }.should == :test end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rubysl-net-ftp-2.0.1 | spec/open_spec.rb |
rubysl-net-ftp-1.0.0 | spec/open_spec.rb |