mod common;
use assert_cmd::prelude::*;
use common::dircat_cmd;
use predicates::prelude::*;
use std::fs;
use tempfile::tempdir;
#[test]
fn test_dry_run() -> Result<(), Box<dyn std::error::Error>> {
let temp = tempdir()?;
let sub = temp.path().join("sub");
fs::create_dir(&sub)?;
fs::write(temp.path().join("a.txt"), "A")?;
fs::write(sub.join("b.rs"), "B")?;
dircat_cmd()
.arg("-D") .current_dir(temp.path())
.assert()
.success()
.stdout(predicate::str::contains(
"--- Dry Run: Files that would be processed ---",
))
.stdout(predicate::str::contains("- a.txt")) .stdout(predicate::str::contains("- sub/b.rs"))
.stdout(predicate::str::contains("--- End Dry Run ---")) .stdout(predicate::str::contains("```").not()) .stdout(predicate::str::contains("## File:").not());
temp.close()?;
Ok(())
}