diff --git a/examples/cosign/verify/main.rs b/examples/cosign/verify/main.rs index 24980d1b04..8978c827dc 100644 --- a/examples/cosign/verify/main.rs +++ b/examples/cosign/verify/main.rs @@ -237,10 +237,8 @@ async fn fulcio_and_rekor_data(cli: &Cli) -> anyhow::Result { pub fulcio_certs: Option>>, - pub rekor_key: Option>, + pub rekor_keys: Option>>, } #[cfg(not(target_arch = "wasm32"))] @@ -47,8 +47,8 @@ impl TrustRoot for ManualTrustRoot<'_> { } async fn rekor_keys(&self) -> crate::errors::Result> { - Ok(match &self.rekor_key { - Some(key) => vec![&key[..]], + Ok(match &self.rekor_keys { + Some(keys) => keys.iter().map(|k| k.as_slice()).collect(), None => Vec::new(), }) } diff --git a/src/trust/sigstore/mod.rs b/src/trust/sigstore/mod.rs index b843b9b783..509a57279c 100644 --- a/src/trust/sigstore/mod.rs +++ b/src/trust/sigstore/mod.rs @@ -312,15 +312,24 @@ fn is_local_file_outdated( #[cfg(test)] mod tests { - use crate::trust::sigstore::SigstoreTrustRoot; + use super::*; #[tokio::test] async fn prefetch() { - let _repo = SigstoreTrustRoot::new(None) + let repo = SigstoreTrustRoot::new(None) .await .expect("initialize SigstoreRepository") .prefetch() .await .expect("prefetch"); + + let fulcio_certs = repo + .fulcio_certs() + .await + .expect("cannot fetch Fulcio certs"); + assert!(!fulcio_certs.is_empty()); + + let rekor_keys = repo.rekor_keys().await.expect("cannot fetch Rekor keys"); + assert!(!rekor_keys.is_empty()); } }