ln: Using unit test macros for ln and creating test cases for exception handling
Going through the coverlay of ln to see where we are missing coverage and found a few edge cases that I was looking to cover with tests. It was interesting to see that one of the error messages was actually impossible to reach on unix, so I ended up adding a cfg to only run it for windows.
I also updated the using of the macros in the tests since half of the tests were using them and half of them weren't
GNU testsuite comparison:
Skip an intermittent issue tests/tail/overlay-headers (fails in this run but passes in the 'main' branch)
GNU testsuite comparison:
Skipping an intermittent issue tests/tail/overlay-headers (passes in this run but fails in the 'main' branch)
GNU testsuite comparison:
Skipping an intermittent issue tests/tail/overlay-headers (passes in this run but fails in the 'main' branch)
CodSpeed Performance Report
Merging #9625 will not alter performance
Comparing ChrisDryden:ln_testing_and_cleanup (3df36e3) with main (64203e3)
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:
Skipping an intermittent issue tests/tail/overlay-headers (passes in this run but fails in the 'main' branch)