client: display show-db output with human readable sizes
All checks were successful
Build and test / check-license (push) Successful in 55s
Build and test / check (push) Successful in 1m55s
Build and test / build (push) Successful in 3m25s
Build and test / test (push) Successful in 3m4s
Build and test / docs (push) Successful in 5m54s

This commit is contained in:
2025-12-16 14:36:49 +09:00
parent 256c1d1176
commit 57ac26b120
4 changed files with 30 additions and 4 deletions

View File

@@ -30,7 +30,10 @@ pub enum ListDatabasesError {
MySqlError(String),
}
pub fn print_list_databases_output_status(output: &ListDatabasesResponse) {
pub fn print_list_databases_output_status(
output: &ListDatabasesResponse,
display_size_as_bytes: bool,
) {
let mut final_database_list: Vec<&DatabaseRow> = Vec::new();
for (db_name, db_result) in output {
match db_result {
@@ -52,7 +55,11 @@ pub fn print_list_databases_output_status(output: &ListDatabasesResponse) {
"Users",
"Collation",
"Character Set",
"Size (Bytes)"
if display_size_as_bytes {
"Size (Bytes)"
} else {
"Size"
}
]);
for db in final_database_list {
table.add_row(row![
@@ -61,7 +68,11 @@ pub fn print_list_databases_output_status(output: &ListDatabasesResponse) {
db.users.iter().map(|user| user.as_str()).join("\n"),
db.collation.as_deref().unwrap_or("N/A"),
db.character_set.as_deref().unwrap_or("N/A"),
db.size_bytes,
if display_size_as_bytes {
db.size_bytes.to_string()
} else {
humansize::format_size(db.size_bytes, humansize::DECIMAL)
}
]);
}