Skip to content

Commit

Permalink
fixup! add cli tooling for update review in depdive
Browse files Browse the repository at this point in the history
  • Loading branch information
nasifimtiazohi committed Jul 27, 2021
1 parent 0071d4e commit 7be4ff1
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 27 deletions.
22 changes: 0 additions & 22 deletions depdive/src/lib.rs
Expand Up @@ -643,28 +643,6 @@ impl UpdateAnalyzer {
let post_graph = MetadataCommand::new().current_dir(path_b).build_graph()?;
UpdateAnalyzer::get_summary_report(&prior_graph, &post_graph)
}

pub fn cmd_update_analyzer_from_paths(prior: &str, post: &str) -> Result<()> {
let report = Self::run_update_analyzer_from_paths(Path::new(prior), Path::new(post))?
.unwrap_or_default();
println!("{}", report);
Ok(())
}

pub fn cmd_update_analyzer_from_repo_commits(
path: &str,
prior_commit: &str,
post_commit: &str,
) -> Result<()> {
let report = Self::run_update_analyzer_from_repo_commits(
Path::new(path),
prior_commit,
post_commit,
)?
.unwrap_or_default();
println!("{}", report);
Ok(())
}
}

#[cfg(test)]
Expand Down
39 changes: 34 additions & 5 deletions depdive/src/main.rs
@@ -1,5 +1,6 @@
use anyhow::Result;
use depdive::UpdateAnalyzer;
use std::path::Path;
use structopt::StructOpt;

#[derive(Debug, StructOpt)]
Expand All @@ -21,26 +22,54 @@ enum Command {
#[derive(Debug, StructOpt)]
enum UpdateReviewCommand {
#[structopt(name = "paths")]
Paths { prior: String, post: String },
Paths {
/// Path to repository old state
prior: String,
/// Path to repository new state post update
post: String,
},

#[structopt(name = "commits")]
Commits {
/// Path to the git repository
path: String,
/// Commit sha prior to update
prior: String,
/// Commit sha post update
post: String,
},
}

fn update_analyzer_from_paths(prior: &str, post: &str) -> Result<()> {
let report = UpdateAnalyzer::run_update_analyzer_from_paths(Path::new(prior), Path::new(post))?
.unwrap_or_default();
println!("{}", report);
Ok(())
}

fn update_analyzer_from_repo_commits(
path: &str,
prior_commit: &str,
post_commit: &str,
) -> Result<()> {
let report = UpdateAnalyzer::run_update_analyzer_from_repo_commits(
Path::new(path),
prior_commit,
post_commit,
)?
.unwrap_or_default();
println!("{}", report);
Ok(())
}

fn main() -> Result<()> {
let args = Args::from_iter(std::env::args());

match args.cmd {
Command::UpdateReview { cmd } => match cmd {
UpdateReviewCommand::Paths { prior, post } => {
UpdateAnalyzer::cmd_update_analyzer_from_paths(&prior, &post)
}
UpdateReviewCommand::Paths { prior, post } => update_analyzer_from_paths(&prior, &post),
UpdateReviewCommand::Commits { path, prior, post } => {
UpdateAnalyzer::cmd_update_analyzer_from_repo_commits(&path, &prior, &post)
update_analyzer_from_repo_commits(&path, &prior, &post)
}
},
}
Expand Down

0 comments on commit 7be4ff1

Please sign in to comment.