@@ -29,8 +29,8 @@ const EXAMPLE_OID_LARGE_ARC_0: ObjectIdentifier =
2929 ObjectIdentifier :: new_unwrap ( crate :: EXAMPLE_OID_LARGE_ARC_0_STR ) ;
3030
3131/// Example OID value with a large arc
32- const EXAMPLE_OID_LARGE_ARC_1_STR : & str = "0.9.2342.19200300.100.1 .1" ;
33- const EXAMPLE_OID_LARGE_ARC_1_BER : & [ u8 ] = & hex ! ( "0992268993F22C640101 " ) ;
32+ const EXAMPLE_OID_LARGE_ARC_1_STR : & str = "1.1.1.60817410 .1" ;
33+ const EXAMPLE_OID_LARGE_ARC_1_BER : & [ u8 ] = & hex ! ( "29019D80800201 " ) ;
3434const EXAMPLE_OID_LARGE_ARC_1 : ObjectIdentifier =
3535 ObjectIdentifier :: new_unwrap ( EXAMPLE_OID_LARGE_ARC_1_STR ) ;
3636
@@ -45,54 +45,69 @@ pub fn oid(s: &str) -> ObjectIdentifier {
4545 ObjectIdentifier :: new ( s) . unwrap ( )
4646}
4747
48+ /// 0.9.2342.19200300.100.1.1
4849#[ test]
49- fn from_bytes ( ) {
50- // 0.9.2342.19200300.100.1.1
51- let oid0 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_0_BER ) . unwrap ( ) ;
52- assert_eq ! ( oid0 . arc( 0 ) . unwrap( ) , 0 ) ;
53- assert_eq ! ( oid0 . arc( 1 ) . unwrap( ) , 9 ) ;
54- assert_eq ! ( oid0 . arc( 2 ) . unwrap( ) , 2342 ) ;
55- assert_eq ! ( oid0 , EXAMPLE_OID_0 ) ;
50+ fn from_bytes_oid_0 ( ) {
51+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_0_BER ) . unwrap ( ) ;
52+ assert_eq ! ( oid , EXAMPLE_OID_0 ) ;
53+ assert_eq ! ( oid . arc( 0 ) . unwrap( ) , 0 ) ;
54+ assert_eq ! ( oid . arc( 1 ) . unwrap( ) , 9 ) ;
55+ assert_eq ! ( oid . arc( 2 ) . unwrap( ) , 2342 ) ;
56+ }
5657
57- // 1.2.840.10045.2.1
58- let oid1 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_1_BER ) . unwrap ( ) ;
59- assert_eq ! ( oid1. arc( 0 ) . unwrap( ) , 1 ) ;
60- assert_eq ! ( oid1. arc( 1 ) . unwrap( ) , 2 ) ;
61- assert_eq ! ( oid1. arc( 2 ) . unwrap( ) , 840 ) ;
62- assert_eq ! ( oid1, EXAMPLE_OID_1 ) ;
58+ /// 1.2.840.10045.2.1
59+ #[ test]
60+ fn from_bytes_oid_1 ( ) {
61+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_1_BER ) . unwrap ( ) ;
62+ assert_eq ! ( oid, EXAMPLE_OID_1 ) ;
63+ assert_eq ! ( oid. arc( 0 ) . unwrap( ) , 1 ) ;
64+ assert_eq ! ( oid. arc( 1 ) . unwrap( ) , 2 ) ;
65+ assert_eq ! ( oid. arc( 2 ) . unwrap( ) , 840 ) ;
66+ }
6367
64- // 2.16.840.1.101.3.4.1.42
65- let oid2 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_2_BER ) . unwrap ( ) ;
66- assert_eq ! ( oid2. arc( 0 ) . unwrap( ) , 2 ) ;
67- assert_eq ! ( oid2. arc( 1 ) . unwrap( ) , 16 ) ;
68- assert_eq ! ( oid2. arc( 2 ) . unwrap( ) , 840 ) ;
69- assert_eq ! ( oid2, EXAMPLE_OID_2 ) ;
68+ /// 2.16.840.1.101.3.4.1.42
69+ #[ test]
70+ fn from_bytes_oid_2 ( ) {
71+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_2_BER ) . unwrap ( ) ;
72+ assert_eq ! ( oid, EXAMPLE_OID_2 ) ;
73+ assert_eq ! ( oid. arc( 0 ) . unwrap( ) , 2 ) ;
74+ assert_eq ! ( oid. arc( 1 ) . unwrap( ) , 16 ) ;
75+ assert_eq ! ( oid. arc( 2 ) . unwrap( ) , 840 ) ;
76+ }
7077
71- // 1.2.16384
72- let oid_largearc0 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_0_BER ) . unwrap ( ) ;
73- assert_eq ! ( oid_largearc0. arc( 0 ) . unwrap( ) , 1 ) ;
74- assert_eq ! ( oid_largearc0. arc( 1 ) . unwrap( ) , 2 ) ;
75- assert_eq ! ( oid_largearc0. arc( 2 ) . unwrap( ) , 16384 ) ;
76- assert_eq ! ( oid_largearc0. arc( 3 ) , None ) ;
77- assert_eq ! ( oid_largearc0, EXAMPLE_OID_LARGE_ARC_0 ) ;
78+ /// 1.2.16384
79+ #[ test]
80+ fn from_bytes_oid_largearc_0 ( ) {
81+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_0_BER ) . unwrap ( ) ;
82+ assert_eq ! ( oid, EXAMPLE_OID_LARGE_ARC_0 ) ;
83+ assert_eq ! ( oid. arc( 0 ) . unwrap( ) , 1 ) ;
84+ assert_eq ! ( oid. arc( 1 ) . unwrap( ) , 2 ) ;
85+ assert_eq ! ( oid. arc( 2 ) . unwrap( ) , 16384 ) ;
86+ assert_eq ! ( oid. arc( 3 ) , None ) ;
87+ }
7888
79- // 0.9.2342.19200300.100.1.1
80- let oid_largearc1 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_1_BER ) . unwrap ( ) ;
81- assert_eq ! ( oid_largearc1. arc( 0 ) . unwrap( ) , 0 ) ;
82- assert_eq ! ( oid_largearc1. arc( 1 ) . unwrap( ) , 9 ) ;
83- assert_eq ! ( oid_largearc1. arc( 2 ) . unwrap( ) , 2342 ) ;
84- assert_eq ! ( oid_largearc1. arc( 3 ) . unwrap( ) , 19200300 ) ;
85- assert_eq ! ( oid_largearc1. arc( 4 ) . unwrap( ) , 100 ) ;
86- assert_eq ! ( oid_largearc1. arc( 5 ) . unwrap( ) , 1 ) ;
87- assert_eq ! ( oid_largearc1. arc( 6 ) . unwrap( ) , 1 ) ;
88- assert_eq ! ( oid_largearc1, EXAMPLE_OID_LARGE_ARC_1 ) ;
89+ /// 1.1.1.60817410.1
90+ #[ test]
91+ fn from_bytes_oid_largearc_1 ( ) {
92+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_1_BER ) . unwrap ( ) ;
93+ assert_eq ! ( oid, EXAMPLE_OID_LARGE_ARC_1 ) ;
94+ assert_eq ! ( oid. arc( 0 ) . unwrap( ) , 1 ) ;
95+ assert_eq ! ( oid. arc( 1 ) . unwrap( ) , 1 ) ;
96+ assert_eq ! ( oid. arc( 2 ) . unwrap( ) , 1 ) ;
97+ assert_eq ! ( oid. arc( 3 ) . unwrap( ) , 60817410 ) ;
98+ assert_eq ! ( oid. arc( 4 ) . unwrap( ) , 1 ) ;
99+ assert_eq ! ( oid. arc( 5 ) , None ) ;
100+ }
89101
90- // 1.2.4294967295
91- let oid_largearc2 = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_2_BER ) . unwrap ( ) ;
92- assert_eq ! ( oid_largearc2. arc( 0 ) . unwrap( ) , 1 ) ;
93- assert_eq ! ( oid_largearc2. arc( 1 ) . unwrap( ) , 2 ) ;
94- assert_eq ! ( oid_largearc2. arc( 2 ) . unwrap( ) , 4294967295 ) ;
95- assert_eq ! ( oid_largearc2, EXAMPLE_OID_LARGE_ARC_2 ) ;
102+ /// 1.2.4294967295
103+ #[ test]
104+ fn from_bytes_oid_largearc_2 ( ) {
105+ let oid = ObjectIdentifier :: from_bytes ( EXAMPLE_OID_LARGE_ARC_2_BER ) . unwrap ( ) ;
106+ assert_eq ! ( oid, EXAMPLE_OID_LARGE_ARC_2 ) ;
107+ assert_eq ! ( oid. arc( 0 ) . unwrap( ) , 1 ) ;
108+ assert_eq ! ( oid. arc( 1 ) . unwrap( ) , 2 ) ;
109+ assert_eq ! ( oid. arc( 2 ) . unwrap( ) , 4294967295 ) ;
110+ assert_eq ! ( oid. arc( 3 ) , None ) ;
96111
97112 // Empty
98113 assert_eq ! ( ObjectIdentifier :: from_bytes( & [ ] ) , Err ( Error :: Empty ) ) ;
@@ -126,13 +141,11 @@ fn from_str() {
126141 let oid_largearc1 = EXAMPLE_OID_LARGE_ARC_1_STR
127142 . parse :: < ObjectIdentifier > ( )
128143 . unwrap ( ) ;
129- assert_eq ! ( oid_largearc1. arc( 0 ) . unwrap( ) , 0 ) ;
130- assert_eq ! ( oid_largearc1. arc( 1 ) . unwrap( ) , 9 ) ;
131- assert_eq ! ( oid_largearc1. arc( 2 ) . unwrap( ) , 2342 ) ;
132- assert_eq ! ( oid_largearc1. arc( 3 ) . unwrap( ) , 19200300 ) ;
133- assert_eq ! ( oid_largearc1. arc( 4 ) . unwrap( ) , 100 ) ;
134- assert_eq ! ( oid_largearc1. arc( 5 ) . unwrap( ) , 1 ) ;
135- assert_eq ! ( oid_largearc1. arc( 6 ) . unwrap( ) , 1 ) ;
144+ assert_eq ! ( oid_largearc1. arc( 0 ) . unwrap( ) , 1 ) ;
145+ assert_eq ! ( oid_largearc1. arc( 1 ) . unwrap( ) , 1 ) ;
146+ assert_eq ! ( oid_largearc1. arc( 2 ) . unwrap( ) , 1 ) ;
147+ assert_eq ! ( oid_largearc1. arc( 3 ) . unwrap( ) , 60817410 ) ;
148+ assert_eq ! ( oid_largearc1. arc( 4 ) . unwrap( ) , 1 ) ;
136149 assert_eq ! ( oid_largearc1, EXAMPLE_OID_LARGE_ARC_1 ) ;
137150
138151 let oid_largearc2 = EXAMPLE_OID_LARGE_ARC_2_STR
0 commit comments