ruby-net-ldap/spec/integration/ssl_ber_spec.rb

36 lines
899 B
Ruby
Raw Normal View History

require 'spec_helper'
require 'net/ldap'
describe "BER serialisation (SSL)" do
# Transmits str to #to and reads it back from #from.
#
def transmit(str)
to.write(str)
to.close
from.read
end
2010-02-12 15:08:56 +01:00
attr_reader :to, :from
before(:each) do
@from, @to = IO.pipe
2010-04-19 08:57:39 +02:00
# The production code operates on sockets, which do need #connect called
# on them to work. Pipes are more robust for this test, so we'll skip
# the #connect call since it fails.
2010-02-12 15:08:56 +01:00
flexmock(OpenSSL::SSL::SSLSocket).
new_instances.should_receive(:connect => nil)
@to = Net::LDAP::Connection.wrap_with_ssl(to)
@from = Net::LDAP::Connection.wrap_with_ssl(from)
end
it "should transmit strings" do
transmit('foo').should == 'foo'
end
it "should correctly transmit numbers" do
to.write 1234.to_ber
from.read_ber.should == 1234
end
end