summaryrefslogtreecommitdiff
path: root/src/registry.rs
diff options
context:
space:
mode:
authorJesper Jensen <jesper@jnsn.dev>2026-02-08 13:38:57 +0100
committerJesper Jensen <jesper@jnsn.dev>2026-02-08 13:38:57 +0100
commit7fb61dfbca0bf1ccc09d40ff2e3b76e2515ff815 (patch)
tree009242f0831679e2d44287da3cfc064e2427e58f /src/registry.rs
parentc95756dda52d8817b6955080be473073267ec17f (diff)
Avoid fetching tags multiple times
What a dumb bug
Diffstat (limited to 'src/registry.rs')
-rw-r--r--src/registry.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/registry.rs b/src/registry.rs
index b18c1eb..173f8a7 100644
--- a/src/registry.rs
+++ b/src/registry.rs
@@ -334,6 +334,7 @@ struct StubTag {
#[cfg(test)]
pub struct StubRegistry {
entries: RefCell<Vec<StubTag>>,
+ pub tags_calls: RefCell<HashMap<(String, String), usize>>,
}
#[cfg(test)]
@@ -341,6 +342,7 @@ impl Default for StubRegistry {
fn default() -> Self {
return StubRegistry {
entries: RefCell::new(vec![]),
+ tags_calls: RefCell::new(HashMap::new()),
};
}
}
@@ -369,6 +371,10 @@ impl StubRegistry {
#[cfg(test)]
impl Registries for StubRegistry {
fn get_tags(&self, registry: &str, image: &str) -> Option<Vec<String>> {
+ *self.tags_calls.borrow_mut()
+ .entry((registry.to_string(), image.to_string()))
+ .or_insert(0) += 1;
+
let mut tags = vec![];
let mut found = false;