Skip to content

Commit a008901

Browse files
romtsnclaude
andcommitted
ref(code-mappings): Simplify result display and extract table helper
Simplify the status match per review feedback and extract the table building logic into a print_results_table function. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent b3d7831 commit a008901

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

src/commands/code_mappings/upload.rs

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use anyhow::{bail, Context as _, Result};
44
use clap::{Arg, ArgMatches, Command};
55
use log::debug;
66

7-
use crate::api::{Api, BulkCodeMapping, BulkCodeMappingsRequest};
7+
use crate::api::{Api, BulkCodeMapping, BulkCodeMappingResult, BulkCodeMappingsRequest};
88
use crate::config::Config;
99
use crate::utils::formatting::Table;
1010
use crate::utils::vcs;
@@ -158,21 +158,34 @@ pub fn execute(matches: &ArgMatches) -> Result<()> {
158158
.authenticated()?
159159
.bulk_upload_code_mappings(&org, &request)?;
160160

161-
// Display results
161+
print_results_table(response.mappings);
162+
println!(
163+
"Created: {}, Updated: {}, Errors: {}",
164+
response.created, response.updated, response.errors
165+
);
166+
167+
if response.errors > 0 {
168+
bail!(
169+
"{} mapping(s) failed to upload. See errors above.",
170+
response.errors
171+
);
172+
}
173+
174+
Ok(())
175+
}
176+
177+
fn print_results_table(mappings: Vec<BulkCodeMappingResult>) {
162178
let mut table = Table::new();
163179
table
164180
.title_row()
165181
.add("Stack Root")
166182
.add("Source Root")
167183
.add("Status");
168184

169-
for result in &response.mappings {
170-
let status = match result.status.as_str() {
171-
"error" => match &result.detail {
172-
Some(detail) => format!("error: {detail}"),
173-
None => "error".to_owned(),
174-
},
175-
s => s.to_owned(),
185+
for result in mappings {
186+
let status = match result.detail {
187+
Some(detail) if result.status == "error" => format!("error: {detail}"),
188+
_ => result.status,
176189
};
177190
table
178191
.add_row()
@@ -183,17 +196,4 @@ pub fn execute(matches: &ArgMatches) -> Result<()> {
183196

184197
table.print();
185198
println!();
186-
println!(
187-
"Created: {}, Updated: {}, Errors: {}",
188-
response.created, response.updated, response.errors
189-
);
190-
191-
if response.errors > 0 {
192-
bail!(
193-
"{} mapping(s) failed to upload. See errors above.",
194-
response.errors
195-
);
196-
}
197-
198-
Ok(())
199199
}

0 commit comments

Comments
 (0)