mv: Adding fixes for i-3 GNU tests related to tty output when file is not writeable
Discovered when automating the stty test discovery on the github CI that the reason this test was failing was because it required to be run with an interactive tty, the logic is that when the -i flag is not provided and a file is piped in but it is not writable the GNU implementation prints an output to the tty.
Its exciting that this is the last mv test thats not passing.
GNU testsuite comparison:
Congrats! The gnu test tests/mv/i-3 is no longer failing!
CodSpeed Performance Report
Merging #9599 will not alter performance
Comparing ChrisDryden:mv_prompt (470ef16) with main (2000af8)
Summary
✅ 127 untouched
⏩ 6 skipped[^skipped]
[^skipped]: 6 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.
GNU testsuite comparison:
Congrats! The gnu test tests/mv/i-3 is no longer failing!
Same as with the other PR's that codspeed is just being flaky. Should be ready for another round of review
I'm curious on your take with the cleaning up of the readability of the tests?
I'm finding that theres a mismatch of integration test styles in every folder and that its cleaner when you do something like:
let (at, mut ucmd) = at_and_ucmd!();
.stderr_contains("replace 'target', overriding mode 0000")
compared to:
let scene = TestScenario::new(util_name!());
let at = &scene.fixtures;
let result = scene
.ucmd()
assert!(
result
.stderr_str()
.contains("replace 'target', overriding mode 0000")
);
But I know its frowned upon to do these types of large scale refactors on projects like this, would you mind if I go through the tests and make them match the top format with the stderr matching on the ucmd and adding the macros for creating the test env?
GNU testsuite comparison:
Congrats! The gnu test tests/mv/i-3 is no longer failing!
GNU testsuite comparison:
Congrats! The gnu test tests/mv/i-3 is no longer failing!
GNU testsuite comparison:
Skipping an intermittent issue tests/tail/overlay-headers (passes in this run but fails in the 'main' branch)
Congrats! The gnu test tests/mv/i-3 is no longer failing!
Congrats! The gnu test tests/tail/inotify-dir-recreate is now passing!