1 #![cfg(feature = "dnssec")]
2
3 use trust_dns_proto::rr::dnssec::rdata::{DNSKEY, DS};
4 use trust_dns_proto::rr::dnssec::{Algorithm, DigestType};
5 use trust_dns_proto::rr::Name;
6
7 #[test]
test_dnskey_display()8 fn test_dnskey_display() {
9 let dnskey = DNSKEY::new(
10 true,
11 false,
12 false,
13 Algorithm::RSASHA1,
14 include_bytes!("test-data/rfc4034-2.3.key").to_vec(),
15 );
16 let result = format!("{}", dnskey);
17 let exp_result = include_str!("test-data/rfc4034-2.3.rdata");
18 assert_eq!(result, exp_result);
19
20 let dnskey = DNSKEY::new(
21 true,
22 false,
23 false,
24 Algorithm::RSASHA1,
25 include_bytes!("test-data/rfc4034-5.4.key").to_vec(),
26 );
27 let result = format!("{}", dnskey);
28 let exp_result = include_str!("test-data/rfc4034-5.4.rdata");
29 assert_eq!(result, exp_result);
30 }
31
32 #[test]
test_ds_display()33 fn test_ds_display() {
34 let dnskey = DNSKEY::new(
35 true,
36 false,
37 false,
38 Algorithm::RSASHA1,
39 include_bytes!("test-data/rfc4034-5.4.key").to_vec(),
40 );
41 let digest = dnskey
42 .to_digest(
43 &Name::parse("dskey.example.com.", None).unwrap(),
44 DigestType::SHA1,
45 )
46 .unwrap();
47 let ds = DS::new(
48 dnskey.calculate_key_tag().unwrap(),
49 dnskey.algorithm(),
50 DigestType::SHA1,
51 digest.as_ref().to_vec(),
52 );
53 let result = format!("{}", ds);
54 let exp_result = "60485 5 1 2BB183AF5F22588179A53B0A98631FAD1A292118";
55 assert_eq!(result, exp_result);
56 }
57