test/test_ber.rb in snmp-1.3.0 vs test/test_ber.rb in snmp-1.3.1

- old
+ new

@@ -4,11 +4,12 @@ require 'snmp/varbind' require 'snmp/ber' class ASN1_Test < Minitest::Test - include SNMP::BER + include SNMP::BER::Encode + include SNMP::BER::Decode def test_decode_tlv_empty tag, value, data = decode_tlv("\001\000") assert_equal(1, tag) assert_equal("", value) @@ -54,24 +55,24 @@ assert_equal("\123\123\123", data) end # Check invalid length - ASN.1 says that first length octet can't be 255. def test_bad_length - assert_raises(InvalidLength) { + assert_raises(BER::InvalidLength) { decode_tlv("\001\377\001") } end # Check if input data is too short def test_out_of_data - assert_raises(OutOfData) { + assert_raises(BER::OutOfData) { decode_tlv("\001\001") } - assert_raises(OutOfData) { + assert_raises(BER::OutOfData) { decode_tlv("\001") } - assert_raises(OutOfData) { + assert_raises(BER::OutOfData) { decode_tlv("") } end # Decode single-octet ASN.1 integer. @@ -101,41 +102,41 @@ i, data = decode_integer("\002\002\000\377") assert_equal(255, i) assert_equal("", data) - assert_raises(InvalidTag) { + assert_raises(BER::InvalidTag) { decode_integer("\001\004\001\002\003\004") } end def test_decode_timeticks i, data = decode_timeticks("\103\004\001\002\003\004") assert_equal(16909060, i) assert_equal("", data) - assert_raises(InvalidTag) { + assert_raises(BER::InvalidTag) { decode_timeticks("\002\004\001\002\003\004") } end # Decode ASN.1 octet string def test_decode_octet_string s, _ = decode_octet_string("\004\202\000\005hello") assert_equal("hello",s) - assert_raises(InvalidTag) { + assert_raises(BER::InvalidTag) { decode_octet_string("\005\202\000\005hello") } end def test_decode_ip_address ip, _ = decode_ip_address("@\004\001\002\003\004") assert_equal(ip, "\001\002\003\004") - assert_raises(InvalidTag) { + assert_raises(BER::InvalidTag) { decode_ip_address("\004\004\001\002\003\004") } - assert_raises(InvalidLength) { + assert_raises(BER::InvalidLength) { decode_ip_address("@\005\001\002\003\004\005") } end # Decode ASN.1 sequence @@ -146,11 +147,11 @@ seq, data = decode_sequence("\060\003\002\001\077\002\001\001") assert_equal("\002\001\077", seq) assert_equal("\002\001\001", data) - assert_raises(InvalidTag) { + assert_raises(BER::InvalidTag) { decode_sequence("\061\003\002\001\077") } end def test_decode_object_id @@ -178,22 +179,22 @@ object_id, remainder = decode_object_id("\006\001\000") assert_equal([0,0], object_id); assert_equal("", remainder) - assert_raises(InvalidTag) do + assert_raises(BER::InvalidTag) do decode_object_id("\007\001+") end end def test_encode_length assert_equal("\000", encode_length(0)) assert_equal("\001", encode_length(1)) assert_equal("\177", encode_length(127)) assert_equal("\201\200", encode_length(128)) assert_equal("\202\002\001", encode_length(513)) - assert_raises(InvalidLength) { encode_length(-1) } + assert_raises(BER::InvalidLength) { encode_length(-1) } end def test_encode_integer assert_equal("\002\001\000", encode_integer(0)) assert_equal("\002\001\001", encode_integer(1)) @@ -230,11 +231,11 @@ assert_equal("\006\001\000", encode_object_id([0,0])) assert_equal("\006\001+", encode_object_id([1,3])) assert_equal("\006\002+\006", encode_object_id([1,3,6])) assert_equal("\006\003+\202\001", encode_object_id([1,3,257])) assert_equal("\006\003" << 82.chr << "\202\001", encode_object_id([2,2,257])) - assert_raises(InvalidObjectId) { encode_object_id([3,2,257]) } - assert_raises(InvalidObjectId) { encode_object_id([]) } + assert_raises(BER::InvalidObjectId) { encode_object_id([3,2,257]) } + assert_raises(BER::InvalidObjectId) { encode_object_id([]) } assert_equal("\006\a+\203\377\177\203\377\177", encode_object_id(SNMP::ObjectId.new("1.3.65535.65535"))) end end