@@ -230,4 +230,26 @@ mod nsec_rdata_test{
230
230
231
231
assert_eq ! ( nsec_rdata. get_type_bit_maps( ) , vec![ Rtype :: A , Rtype :: NS ] ) ;
232
232
}
233
+
234
+ #[ test]
235
+ fn to_bytes_test ( ) {
236
+ let mut nsec_rdata = NsecRdata :: new ( DomainName :: new ( ) , vec ! [ ] ) ;
237
+
238
+ let mut domain_name = DomainName :: new ( ) ;
239
+ domain_name. set_name ( String :: from ( "host.example.com" ) ) ;
240
+ nsec_rdata. set_next_domain_name ( domain_name) ;
241
+
242
+ nsec_rdata. set_type_bit_maps ( vec ! [ Rtype :: A , Rtype :: MX , Rtype :: RRSIG , Rtype :: NSEC , Rtype :: UNKNOWN ( 1234 ) ] ) ;
243
+
244
+ let next_domain_name_bytes = vec ! [ 4 , 104 , 111 , 115 , 116 , 7 , 101 , 120 , 97 , 109 , 112 , 108 , 101 , 3 , 99 , 111 , 109 , 0 ] ;
245
+
246
+ let bit_map_bytes_to_test = vec ! [ 0 , 6 , 64 , 1 , 0 , 0 , 0 , 3 ,
247
+ 4 , 27 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
248
+ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
249
+ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 32 ] ;
250
+
251
+ let bytes_to_test = [ next_domain_name_bytes, bit_map_bytes_to_test] . concat ( ) ;
252
+
253
+ assert_eq ! ( nsec_rdata. to_bytes( ) , bytes_to_test) ;
254
+ }
233
255
}
0 commit comments