Nits: rename test, move cfg(test) imports, simplify registry construction
- Rename test from fallback_result_is_cached_in_declared to fetcher_result_is_cached
- Move `use crate::fennel::Fennel` from secret.rs module level into mod tests
- Keep `#[cfg(test)] use crate::secret::SecretString` at module level in runtime.rs
(for_test lives in a cfg(test) impl block outside mod tests); remove the
redundant copy that was inside mod tests
- Simplify filesystem registry construction in main.rs to SecretRegistry::from(secrets)
https://claude.ai/code/session_01VCCZYDCHDbr4LgadiJ6QAi
diff --git a/quire-ci/src/main.rs b/quire-ci/src/main.rs
index 97d45c7..eed9858 100644
--- a/quire-ci/src/main.rs
+++ b/quire-ci/src/main.rs
@@ -237,14 +237,11 @@ fn main() -> miette::Result<()> {
let miette_layer = MietteLayer::new();
telemetry::init_tracing(miette_layer, FmtMode::Plain)?;
- let session = transport.session.clone();
- let registry = {
- let base = SecretRegistry::new(move |name| fetch_secret_from_api(&session, name));
- if transport.mode == TransportMode::Filesystem {
- base.seed(secrets)
- } else {
- base
- }
+ let registry = if transport.mode == TransportMode::Filesystem {
+ SecretRegistry::from(secrets)
+ } else {
+ let session = transport.session.clone();
+ SecretRegistry::new(move |name| fetch_secret_from_api(&session, name))
};
run_pipeline(
diff --git a/quire-core/src/secret.rs b/quire-core/src/secret.rs
index 89a456e..ab6b826 100644
--- a/quire-core/src/secret.rs
+++ b/quire-core/src/secret.rs
@@ -2,9 +2,6 @@ use std::collections::HashMap;
use std::path::PathBuf;
use std::sync::OnceLock;
-#[cfg(test)]
-use crate::fennel::Fennel;
-
/// Errors produced by secret resolution.
#[derive(Debug, Clone, thiserror::Error)]
pub enum Error {
@@ -325,6 +322,7 @@ pub fn redact(text: &str, registry: &SecretRegistry) -> String {
#[cfg(test)]
mod tests {
use super::*;
+ use crate::fennel::Fennel;
#[test]
fn debug_redacts_value() {
@@ -474,7 +472,7 @@ mod tests {
}
#[test]
- fn fallback_result_is_cached_in_declared() {
+ fn fetcher_result_is_cached() {
use std::sync::Arc;
use std::sync::atomic::{AtomicUsize, Ordering};