@@ -541,3 +541,60 @@ fn empty_file_leads_to_empty_output_with_grid_enabled() {
541541 .success()
542542 .stdout("");
543543}
544+
545+#[test]
546+fn filename_basic() {
547+ bat()
548+ .arg("test.txt")
549+ .arg("--decorations=always")
550+ .arg("--style=header")
551+ .arg("-r=0:0")
552+ .arg("--file-name=foo")
553+ .assert()
554+ .success()
555+ .stdout("File: foo\n")
556+ .stderr("");
557+}
558+
559+#[test]
560+fn filename_binary() {
561+ bat()
562+ .arg("test.binary")
563+ .arg("--decorations=always")
564+ .arg("--style=header")
565+ .arg("-r=0:0")
566+ .arg("--file-name=foo")
567+ .assert()
568+ .success()
569+ .stdout("File: foo <BINARY>\n")
570+ .stderr("");
571+}
572+
573+#[test]
574+fn filename_stdin() {
575+ bat()
576+ .arg("--decorations=always")
577+ .arg("--style=header")
578+ .arg("-r=0:0")
579+ .arg("-")
580+ .write_stdin("stdin\n")
581+ .arg("--file-name=foo")
582+ .assert()
583+ .success()
584+ .stdout("File: foo\n")
585+ .stderr("");
586+}
587+
588+#[test]
589+fn filename_stdin_binary() {
590+ let vec = vec![0; 1];
591+ bat_with_config()
592+ .arg("--decorations=always")
593+ .arg("--style=header")
594+ .write_stdin(vec)
595+ .arg("--file-name=foo")
596+ .assert()
597+ .success()
598+ .stdout("File: foo <BINARY>\n")
599+ .stderr("");
600+}