File: test_string.rb

package info (click to toggle)
ruby-net-ldap 0.19.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 640 kB
  • sloc: ruby: 4,583; sh: 53; makefile: 4
file content (25 lines) | stat: -rw-r--r-- 823 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
require_relative '../../test_helper'

class TestBERStringExtension < Test::Unit::TestCase
  def setup
    @bind_request = "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus UNCONSUMED".b
    @result = @bind_request.read_ber!(Net::LDAP::AsnSyntax)
  end

  def test_parse_ber
    assert_equal [1, [3, "Administrator", "ad_is_bogus"]], @result
  end

  def test_unconsumed_message
    assert_equal " UNCONSUMED", @bind_request
  end

  def test_exception_does_not_modify_string
    original = "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus".b
    duplicate = original.dup
    flexmock(StringIO).new_instances.should_receive(:read_ber).and_raise(Net::BER::BerError)
    duplicate.read_ber!(Net::LDAP::AsnSyntax) rescue Net::BER::BerError

    assert_equal original, duplicate
  end
end