diff --git a/src/cortex-cli/src/models_cmd.rs b/src/cortex-cli/src/models_cmd.rs index 9632aede..c0609de8 100644 --- a/src/cortex-cli/src/models_cmd.rs +++ b/src/cortex-cli/src/models_cmd.rs @@ -533,7 +533,9 @@ async fn run_list( }; for (provider, models) in by_provider { - println!("\n{} ({} models)", provider, models.len()); + let model_count = models.len(); + let model_label = model_count_label(model_count); + println!("\n{} ({} {})", provider, model_count, model_label); println!("{}", "-".repeat(40)); println!( "{: &'static str { + if count == 1 { + "model" + } else { + "models" + } +} + #[cfg(test)] mod tests { use super::*; @@ -631,6 +641,13 @@ mod tests { assert_eq!(result, ModelSortOrder::Provider); } + #[test] + fn test_model_count_label() { + assert_eq!(model_count_label(0), "models"); + assert_eq!(model_count_label(1), "model"); + assert_eq!(model_count_label(2), "models"); + } + #[test] fn test_model_sort_order_from_str_case_insensitive() { let upper: ModelSortOrder = "ID".parse().expect("parsing 'ID' should succeed");