Radish alpha
r
rad:zwTxygwuz5LDGBq255RA2CbNGrz8
Radicle CI broker
Radicle
Git
feat: add count of recent failures to front page
Merged liw opened 1 year ago

Signed-off-by: Lars Wirzenius liw@liw.fi

1 file changed +18 -1 d5f65204 b707c812
modified src/pages.rs
@@ -399,6 +399,20 @@ impl PageData {
            .count();
        let total = runs.len();

+
        fn failed_recently(runs: &[&Run], n: usize) -> usize {
+
            let recent = if runs.len() >= n {
+
                &runs[runs.len() - N..]
+
            } else {
+
                runs
+
            };
+
            recent
+
                .iter()
+
                .filter(|run| run.result() == Some(&RunResult::Failure))
+
                .count()
+
        }
+

+
        const N: usize = 5;
+

        Element::new(Tag::Span)
            .with_child(
                Element::new(Tag::A)
@@ -410,7 +424,10 @@ impl PageData {
                    .with_attribute("href", &format!("{}.html", rid_to_basename(repo_id))),
            )
            .with_child(Element::new(Tag::Br))
-
            .with_child(Element::new(Tag::Span).with_text(&format!("{failed} failed runs")))
+
            .with_child(Element::new(Tag::Span).with_text(&format!(
+
                "{failed} failed runs ({} recently)",
+
                failed_recently(&runs, N)
+
            )))
            .with_child(Element::new(Tag::Br))
            .with_child(Element::new(Tag::Span).with_text(&format!("{total} total runs")))
    }