httpd: Update stats to count all repos

Instead of filtering private repos for a total count, we should count
all repos.
This commit is contained in:
Sebastian Martinez 2024-03-08 15:32:14 +01:00 committed by cloudhead
parent 955c942c18
commit 98bb91680d
No known key found for this signature in database
1 changed files with 3 additions and 17 deletions

View File

@ -2,7 +2,6 @@ use axum::extract::State;
use axum::response::IntoResponse;
use axum::routing::get;
use axum::{Json, Router};
use radicle::storage::ReadStorage as _;
use serde_json::json;
use crate::api::error::Error;
@ -17,12 +16,9 @@ pub fn router(ctx: Context) -> Router {
/// Return the stats for the node.
/// `GET /stats`
async fn stats_handler(State(ctx): State<Context>) -> impl IntoResponse {
let storage = &ctx.profile.storage;
let projects = storage.inventory()?.len();
let total = ctx.profile.storage.repositories()?.len();
Ok::<_, Error>(Json(
json!({ "projects": { "count": projects }, "users": { "count": 0 } }),
))
Ok::<_, Error>(Json(json!({ "repos": { "total": total } })))
}
#[cfg(test)]
@ -39,16 +35,6 @@ mod routes {
let response = get(&app, "/stats").await;
assert_eq!(response.status(), StatusCode::OK);
assert_eq!(
response.json().await,
json!({
"projects": {
"count": 1
},
"users": {
"count": 0
}
})
);
assert_eq!(response.json().await, json!({ "repos": { "total": 2 } }));
}
}