ruby-net-ldap/spec/unit/ldap_spec.rb
Kaspar Schiess 31ba47cf1d ! A proper fix for the error I've found yesterday.
We should further look for empty rescue statements, as they may
sometimes catch stuff that we don't want to be caught.
2010-03-18 08:44:58 +01:00

48 lines
1.3 KiB
Ruby

require 'spec_helper'
describe Net::LDAP::Connection do
describe "initialize" do
context "when host is not responding" do
before(:each) do
flexmock(TCPSocket).
should_receive(:new).and_raise(Errno::ECONNREFUSED)
end
it "should raise LdapError" do
lambda {
Net::LDAP::Connection.new(
:server => 'test.mocked.com',
:port => 636)
}.should raise_error(Net::LDAP::LdapError)
end
end
context "when host is blocking the port" do
before(:each) do
flexmock(TCPSocket).
should_receive(:new).and_raise(SocketError)
end
it "should raise LdapError" do
lambda {
Net::LDAP::Connection.new(
:server => 'test.mocked.com',
:port => 636)
}.should raise_error(Net::LDAP::LdapError)
end
end
context "on other exceptions" do
before(:each) do
flexmock(TCPSocket).
should_receive(:new).and_raise(NameError)
end
it "should rethrow the exception" do
lambda {
Net::LDAP::Connection.new(
:server => 'test.mocked.com',
:port => 636)
}.should raise_error(NameError)
end
end
end
end