Changed LDAP#search to return T/F instead of numeric LDAP code,

and adjusted the tests accordingly.
This commit is contained in:
blackhedd 2006-04-23 01:17:49 +00:00
parent 030bb9c6d4
commit f8649bc54e
2 changed files with 12 additions and 11 deletions

View file

@ -199,22 +199,21 @@ module Net
#
def search args
if @open_connection
result_code = @open_connection.search( args ) {|values|
@result = @open_connection.search( args ) {|values|
block_given? and yield( values )
}
result_code
else
result_code = 0
@result = 0
conn = Connection.new( :host => @host, :port => @port )
if (result_code = conn.bind( args[:auth] || @auth )) == 0
result_code = conn.search( args ) {|values|
if (@result = conn.bind( args[:auth] || @auth )) == 0
@result = conn.search( args ) {|values|
block_given? and yield( values )
}
end
conn.close
result_code
end
@result == 0
end
#

View file

@ -88,10 +88,12 @@ class TestLdapClient < Test::Unit::TestCase
ldap = Net::LDAP.new :host => @host, :port => @port, :auth => @auth
search = {:base => "dc=smalldomain,dc=com"}
assert_equal( 32, ldap.search( search ))
assert_equal( false, ldap.search( search ))
assert_equal( 32, ldap.get_operation_result.code )
search = {:base => "dc=bayshorenetworks,dc=com"}
assert_equal( 0, ldap.search( search ))
assert_equal( true, ldap.search( search ))
assert_equal( 0, ldap.get_operation_result.code )
ldap.search( search ) {|res|
assert_equal( res, @ldif )
@ -118,7 +120,7 @@ class TestLdapClient < Test::Unit::TestCase
}
}
assert_equal( 0, ldap.search( search ))
assert_equal( true, ldap.search( search ))
ldap.search( search ) {|res|
res_keys = res.keys.sort
ldif_keys = ldif.keys.sort
@ -164,7 +166,7 @@ class TestLdapClient < Test::Unit::TestCase
ldap.open {|ldap|
10.times {
rc = ldap.search( :base => "dc=bayshorenetworks,dc=com" )
assert_equal( 0, rc )
assert_equal( true, rc )
}
}
end
@ -174,7 +176,7 @@ class TestLdapClient < Test::Unit::TestCase
Net::LDAP.open( :host => @host, :port => @port, :auth => @auth ) {|ldap|
10.times {
rc = ldap.search( :base => "dc=bayshorenetworks,dc=com" )
assert_equal( 0, rc )
assert_equal( true, rc )
}
}
end