in rust-create-cascade/src/main.rs [1096:1163]
fn test_count_all() {
let env = TestEnv::new();
let issuer = env.add_issuer();
for _ in 1..=86 {
env.add_serial(&issuer);
}
for _ in 1..=75 {
env.add_revoked_serial(&issuer, Reason::Unspecified);
}
for _ in 1..=30 {
env.add_revoked_serial(&issuer, Reason::KeyCompromise);
}
for _ in 1..=9 {
env.add_revoked_serial(&issuer, Reason::PrivilegeWithdrawn);
}
let stats = count_all(&env.revoked_dir(), &env.known_dir(), ReasonSet::All, None);
assert_eq!(stats.approx_ok_count, 86);
assert_eq!(stats.exact_revoked_count, 75 + 30 + 9);
assert_eq!(stats.reasons.unspecified, 75);
assert_eq!(stats.reasons.key_compromise, 30);
assert_eq!(stats.reasons.ca_compromise, 0);
assert_eq!(stats.reasons.affiliation_changed, 0);
assert_eq!(stats.reasons.superseded, 0);
assert_eq!(stats.reasons.cessation_of_operation, 0);
assert_eq!(stats.reasons.certificate_hold, 0);
assert_eq!(stats.reasons.remove_from_crl, 0);
assert_eq!(stats.reasons.privilege_withdrawn, 9);
assert_eq!(stats.reasons.aa_compromise, 0);
let stats = count_all(
&env.revoked_dir(),
&env.known_dir(),
ReasonSet::Specified,
None,
);
assert_eq!(stats.approx_ok_count, 86 + 75);
assert_eq!(stats.exact_revoked_count, 30 + 9);
assert_eq!(stats.reasons.unspecified, 0);
assert_eq!(stats.reasons.key_compromise, 30);
assert_eq!(stats.reasons.ca_compromise, 0);
assert_eq!(stats.reasons.affiliation_changed, 0);
assert_eq!(stats.reasons.superseded, 0);
assert_eq!(stats.reasons.cessation_of_operation, 0);
assert_eq!(stats.reasons.certificate_hold, 0);
assert_eq!(stats.reasons.remove_from_crl, 0);
assert_eq!(stats.reasons.privilege_withdrawn, 9);
assert_eq!(stats.reasons.aa_compromise, 0);
let stats = count_all(
&env.revoked_dir(),
&env.known_dir(),
ReasonSet::Priority,
None,
);
assert_eq!(stats.approx_ok_count, 86 + 75);
assert_eq!(stats.exact_revoked_count, 30 + 9);
assert_eq!(stats.reasons.unspecified, 0);
assert_eq!(stats.reasons.key_compromise, 30);
assert_eq!(stats.reasons.ca_compromise, 0);
assert_eq!(stats.reasons.affiliation_changed, 0);
assert_eq!(stats.reasons.superseded, 0);
assert_eq!(stats.reasons.cessation_of_operation, 0);
assert_eq!(stats.reasons.certificate_hold, 0);
assert_eq!(stats.reasons.remove_from_crl, 0);
assert_eq!(stats.reasons.privilege_withdrawn, 9);
assert_eq!(stats.reasons.aa_compromise, 0);
}