Skip to content

Commit 56569cb

Browse files
authored
Merge pull request #3 from featuremesh/fix/make-diff-work-on-full-columns-structure
diffs should work on each colum structure
2 parents 11f8db3 + 0032285 commit 56569cb

File tree

1 file changed

+30
-27
lines changed

1 file changed

+30
-27
lines changed

sqllogictest/src/runner.rs

Lines changed: 30 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -463,33 +463,36 @@ fn format_diff(
463463
}
464464

465465
fn format_column_diff(expected: &str, actual: &str, colorize: bool) -> String {
466-
let (expected, actual) = TextDiff::from_chars(expected, actual)
467-
.iter_all_changes()
468-
.fold(
469-
("".to_string(), "".to_string()),
470-
|(expected, actual), change| match change.tag() {
471-
ChangeTag::Equal => (
472-
format!("{}{}", expected, change.value()),
473-
format!("{}{}", actual, change.value()),
474-
),
475-
ChangeTag::Delete => (
476-
if colorize {
477-
format!("{}[{}]", expected, change.value().bright_red())
478-
} else {
479-
format!("{}[{}]", expected, change.value())
480-
},
481-
actual,
482-
),
483-
ChangeTag::Insert => (
484-
expected,
485-
if colorize {
486-
format!("{}[{}]", actual, change.value().bright_green())
487-
} else {
488-
format!("{}[{}]", actual, change.value())
489-
},
490-
),
491-
},
492-
);
466+
let (expected, actual) = TextDiff::from_slices(
467+
&expected.split(",").collect::<Vec<_>>()[..],
468+
&actual.split(",").collect::<Vec<_>>()[..],
469+
)
470+
.iter_all_changes()
471+
.fold(
472+
("".to_string(), "".to_string()),
473+
|(expected, actual), change| match change.tag() {
474+
ChangeTag::Equal => (
475+
format!("{}{}", expected, change.value()),
476+
format!("{}{}", actual, change.value()),
477+
),
478+
ChangeTag::Delete => (
479+
if colorize {
480+
format!("{}[{}]", expected, change.value().bright_red())
481+
} else {
482+
format!("{}[{}]", expected, change.value())
483+
},
484+
actual,
485+
),
486+
ChangeTag::Insert => (
487+
expected,
488+
if colorize {
489+
format!("{}[{}]", actual, change.value().bright_green())
490+
} else {
491+
format!("{}[{}]", actual, change.value())
492+
},
493+
),
494+
},
495+
);
493496
format!("[Expected] {expected}\n[Actual ] {actual}")
494497
}
495498

0 commit comments

Comments
 (0)