Bonus: Cross-CA Rejection Test
#[test]
fn test_rejects_cert_from_different_ca() {
let root_a = Ca::new_root("Root A").unwrap();
let root_b = Ca::new_root("Root B").unwrap();
let inter_a = Ca::new_intermediate("Intermediate A", &root_a).unwrap();
let (server_cert, _) = issue_server_cert(&["localhost"], &inter_a).unwrap();
let result = validate_chain(&[server_cert, inter_a.cert, root_b.cert], &root_b, now);
assert!(result.is_err());
}