Suppress --fmt --check diff if --quiet is passed (#1457)

This commit is contained in:
Casey Rodarmor 2022-12-20 20:57:58 -08:00 committed by GitHub
parent fbe1c4c7a3
commit 9887582497
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 22 additions and 12 deletions

View file

@ -374,21 +374,23 @@ impl Subcommand {
return if formatted == src {
Ok(())
} else {
use similar::{ChangeTag, TextDiff};
if !config.verbosity.quiet() {
use similar::{ChangeTag, TextDiff};
let diff = TextDiff::configure()
.algorithm(similar::Algorithm::Patience)
.diff_lines(src, &formatted);
let diff = TextDiff::configure()
.algorithm(similar::Algorithm::Patience)
.diff_lines(src, &formatted);
for op in diff.ops() {
for change in diff.iter_changes(op) {
let (symbol, color) = match change.tag() {
ChangeTag::Delete => ("-", config.color.stderr().diff_deleted()),
ChangeTag::Equal => (" ", config.color.stderr()),
ChangeTag::Insert => ("+", config.color.stderr().diff_added()),
};
for op in diff.ops() {
for change in diff.iter_changes(op) {
let (symbol, color) = match change.tag() {
ChangeTag::Delete => ("-", config.color.stderr().diff_deleted()),
ChangeTag::Equal => (" ", config.color.stderr()),
ChangeTag::Insert => ("+", config.color.stderr().diff_added()),
};
eprint!("{}{symbol}{change}{}", color.prefix(), color.suffix());
eprint!("{}{symbol}{change}{}", color.prefix(), color.suffix());
}
}
}

View file

@ -53,6 +53,14 @@ test! {
status: EXIT_FAILURE,
}
test! {
name: check_found_diff_quiet,
justfile: "x:=``\n",
args: ("--unstable", "--fmt", "--check", "--quiet"),
stderr: "",
status: EXIT_FAILURE,
}
test! {
name: check_diff_color,
justfile: "x:=``\n",