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