From 7df084e221ae91bd0824742fb3df620e45efae8a Mon Sep 17 00:00:00 2001 From: BryanFRD Date: Sat, 3 Oct 2026 11:24:57 +0200 Subject: [PATCH] fix(server): title a named forge's repository page as acme/game (work) --- server/src/dashboard.rs | 12 ++++++++++-- server/src/dashboard/tests.rs | 12 ++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/server/src/dashboard.rs b/server/src/dashboard.rs index 0e5ec1f3..ddb66bdb 100644 --- a/server/src/dashboard.rs +++ b/server/src/dashboard.rs @@ -21,6 +21,7 @@ pub fn render(overview: &Overview) -> String { lock_max_age, writable, } = overview; + let name = title(namespace); format!( r#" @@ -28,12 +29,12 @@ pub fn render(overview: &Overview) -> String { -{namespace} | LFSX +{name} | LFSX
-

{namespace}

+

{name}

Objects
{objects}
On disk
{}
@@ -62,6 +63,13 @@ pub fn render(overview: &Overview) -> String { // count do not. const LOCKS_SHOWN: usize = 50; +fn title(namespace: &Namespace) -> String { + match namespace.forge() { + Some(forge) => format!("{} ({forge})", namespace.upstream()), + None => namespace.upstream(), + } +} + fn locks_table(locks: &[Lock], max_age: Option) -> String { if locks.is_empty() { return "

Nothing is locked.

".to_owned(); diff --git a/server/src/dashboard/tests.rs b/server/src/dashboard/tests.rs index 17d28027..e7dcff14 100644 --- a/server/src/dashboard/tests.rs +++ b/server/src/dashboard/tests.rs @@ -127,3 +127,15 @@ fn a_pages_worth_of_locks_carries_no_summary_row() { assert!(page.contains("Assets/049.unity")); assert!(!page.contains("more, list them"), "{page}"); } + +#[test] +fn a_repository_on_a_named_forge_is_titled_as_its_forge_knows_it() { + let page = render(&Overview { + namespace: Namespace::on("work", "FerrLabs", "Blastlands").unwrap(), + ..overview(Vec::new()) + }); + + assert!(page.contains("FerrLabs/Blastlands (work) | LFSX")); + assert!(page.contains("

FerrLabs/Blastlands (work)

")); + assert!(!page.contains("work~")); +}