annotate vendor/plugins/ruby-net-ldap-0.0.4/tests/.svn/text-base/testber.rb.svn-base @ 864:2465362d1b56
bug_145
Close obsolete branch bug_145
author |
Chris Cannam |
date |
Wed, 11 May 2011 11:57:41 +0100 |
parents |
513646585e45 |
children |
|
rev |
line source |
Chris@0
|
1 # $Id: testber.rb 57 2006-04-18 00:18:48Z blackhedd $
|
Chris@0
|
2 #
|
Chris@0
|
3 #
|
Chris@0
|
4
|
Chris@0
|
5
|
Chris@0
|
6 $:.unshift "lib"
|
Chris@0
|
7
|
Chris@0
|
8 require 'net/ldap'
|
Chris@0
|
9 require 'stringio'
|
Chris@0
|
10
|
Chris@0
|
11
|
Chris@0
|
12 class TestBer < Test::Unit::TestCase
|
Chris@0
|
13
|
Chris@0
|
14 def setup
|
Chris@0
|
15 end
|
Chris@0
|
16
|
Chris@0
|
17 # TODO: Add some much bigger numbers
|
Chris@0
|
18 # 5000000000 is a Bignum, which hits different code.
|
Chris@0
|
19 def test_ber_integers
|
Chris@0
|
20 assert_equal( "\002\001\005", 5.to_ber )
|
Chris@0
|
21 assert_equal( "\002\002\203t", 500.to_ber )
|
Chris@0
|
22 assert_equal( "\002\003\203\206P", 50000.to_ber )
|
Chris@0
|
23 assert_equal( "\002\005\222\320\227\344\000", 5000000000.to_ber )
|
Chris@0
|
24 end
|
Chris@0
|
25
|
Chris@0
|
26 def test_ber_parsing
|
Chris@0
|
27 assert_equal( 6, "\002\001\006".read_ber( Net::LDAP::AsnSyntax ))
|
Chris@0
|
28 assert_equal( "testing", "\004\007testing".read_ber( Net::LDAP::AsnSyntax ))
|
Chris@0
|
29 end
|
Chris@0
|
30
|
Chris@0
|
31
|
Chris@0
|
32 def test_ber_parser_on_ldap_bind_request
|
Chris@0
|
33 s = StringIO.new "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus"
|
Chris@0
|
34 assert_equal( [1, [3, "Administrator", "ad_is_bogus"]], s.read_ber( Net::LDAP::AsnSyntax ))
|
Chris@0
|
35 end
|
Chris@0
|
36
|
Chris@0
|
37
|
Chris@0
|
38
|
Chris@0
|
39
|
Chris@0
|
40 end
|
Chris@0
|
41
|
Chris@0
|
42
|