summaryrefslogtreecommitdiff
path: root/src/subcommands/diff.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/subcommands/diff.rs')
-rw-r--r--src/subcommands/diff.rs25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/subcommands/diff.rs b/src/subcommands/diff.rs
index 215d45e..53a36c7 100644
--- a/src/subcommands/diff.rs
+++ b/src/subcommands/diff.rs
@@ -172,11 +172,10 @@ where
#[cfg(test)]
mod main_tests {
+ use std::ffi::OsString;
use std::io::Cursor;
- use std::path::PathBuf;
- use super::{diff, diff_args_set_unified_context};
- use crate::tests::integration_test_utils;
+ use super::diff_args_set_unified_context;
use rstest::rstest;
@@ -215,20 +214,24 @@ mod main_tests {
&str,
>,
) {
- let config = integration_test_utils::make_config_from_args(&args);
let mut writer = Cursor::new(vec![]);
- let exit_code = diff(
- &PathBuf::from(file_a),
- &PathBuf::from(file_b),
- &config,
- &mut writer,
- );
+ let mut runargs = vec![OsString::from(file_a), OsString::from(file_b)];
+ runargs.extend(args.iter().map(OsString::from));
+ let exit_code = crate::run_app(runargs, Some(&mut writer));
+
assert_eq!(
- exit_code,
+ exit_code.unwrap(),
match expect_diff {
ExpectDiff::Yes => 1,
ExpectDiff::No => 0,
}
);
+ assert_eq!(
+ std::str::from_utf8(writer.get_ref()).unwrap() != "",
+ match expect_diff {
+ ExpectDiff::Yes => true,
+ ExpectDiff::No => false,
+ }
+ );
}
}