summaryrefslogtreecommitdiffstats
path: root/tests.sh
AgeCommit message (Collapse)Author
2019-01-02posix1e: Split out ACL and capability handling from utilTavian Barnes
2019-01-02color: Fix more incompatibilities with GNU lsTavian Barnes
2018-12-28tests: Fix test_exit() to not depend on breadth-first orderingTavian Barnes
2018-12-17tests.sh: Add a --help with usage informationTavian Barnes
2018-11-14exec: Reject -exec \; without a commandTavian Barnes
Prior to this, we'd fork and then segfault on every file as NULL was passed to execvpe(). Found while looking through old FreeBSD find bugs: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=36521 bfs still supports the (dubious, possibly unintentional?) GNU find extension to POSIX that allows $ bfs -exec {} \;
2018-11-14tests: Don't assume BSD find has the "implicit ."Tavian Barnes
Also, FreeBSD find rejects -L -delete, so don't test it under --bsd.
2018-11-14tests: Don't assume find continues after filesystem loopsTavian Barnes
POSIX says > When it detects an infinite loop, find shall write a diagnostic > message to standard error and shall either recover its position in the > hierarchy or terminate. So make the 'links' folder not have any loops, and add a new 'loops' folder for testing the GNU/bfs behaviour.
2018-11-01tests: Make the weird names tests POSIX-compliantTavian Barnes
2018-11-01tests: Add testcases for -pruneTavian Barnes
2018-09-27tests: Sort test listsTavian Barnes
2018-09-27tests: Move test for -H -newer out of POSIXTavian Barnes
The POSIX spec implies that -newer is actually not supposed to respect -H/-L. But all implementations I know about do anyway.
2018-09-26tests: Remove non-POSIX features from POSIX testsTavian Barnes
Credit to http://core.suckless.org/sbase/ for identifying these.
2018-09-26Update some more copyright datesTavian Barnes
2018-09-18spawn: New posix_spawn()-like API for execTavian Barnes
2018-08-18opt: Re-run optimizations after reordering expressionsTavian Barnes
This catches new data flow inferences that can be made after swapping the children of an expression.
2018-07-24printf: Support %B, GNU find's undocumented birth time specifierTavian Barnes
2018-07-20tests: Add tests for mode 000Tavian Barnes
2018-07-20printf: Output ? for errors in %YTavian Barnes
2018-07-12eval: Fix -delete when following symlinks.Tavian Barnes
Same bug as https://savannah.gnu.org/bugs/?46305. Please don't ever do this though.
2018-07-07tests: Add some more tests for broken symlinksTavian Barnes
2018-07-07tests: Use -maxdepth 0 instead of | head -n1Tavian Barnes
This avoids the potential for "broken pipe" errors observed on some systems, e.g. http://build.alpinelinux.org/buildlogs/build-edge-s390x/testing/bfs/bfs-1.2.2-r0.log
2018-06-24tests: Relax test_depth_errorTavian Barnes
Whether bfs can return children of a directory without search permission depends on whether d_type is filled in, which can't be guaranteed.
2018-06-23tests: New test for -depth in the presence of read errorsTavian Barnes
2018-03-18tests: Work around broken rm in cleanupTavian Barnes
BusyBox rm, for example, doesn't handle long paths properly, so give it some help. C.f. http://lists.busybox.net/pipermail/busybox/2018-March/086302.html
2018-03-18tests: Don't use process substitution for diffTavian Barnes
This frees up an extra FD for some diff implementations like openbox that need it when ulimit -n is low.
2018-03-18tests: Be robust to ls -i implementation that output a leading spaceTavian Barnes
2018-03-18tests: Add a --noclean option to preserve the test directoryTavian Barnes
Useful for debugging testsuite failures.
2018-01-20printf: Add %w and %Wk for file birth timesTavian Barnes
%w and %W were chosen to match the format specifiers for file birth times from stat(1)
2017-11-12exec: Recover from E2BIGTavian Barnes
2017-11-05parse: Support -perm +7777, for compatibility with BSD and old GNU findTavian Barnes
2017-10-21parse: Keep track of what files are already openTavian Barnes
Fixes #22
2017-10-21Report errors that occur when closing filesTavian Barnes
Otherwise we miss write errors that occur when flushing the cache.
2017-09-20tests: -quit is not POSIXTavian Barnes
2017-09-17opt: Fix -depth with arguments bigger than INT_MAXTavian Barnes
2017-09-16tests: Add tests that trigger some optimizationsTavian Barnes
2017-09-09tests: Silence error messages while creating deep/Tavian Barnes
Some platforms will print errors like "cannot access parent directories: Result too large"
2017-09-09Try /proc/self/fd before /dev/fdTavian Barnes
On Solaris, /proc/self/fd is dynamic while /dev/fd is static.
2017-09-07Revert "tests: Test hardlinks to symlinks"Tavian Barnes
Apparently macOS doesn't support ln -P. This reverts commit 80eec18020f531abbdb2abbb919ab6c6fa34107c.
2017-09-06parse: Don't reorder or remove tests with potential side effectsTavian Barnes
-empty and -xtype may have side effects like reporting permission errors, which even affect the exit status of bfs. We shouldn't remove these effects without -Ofast.
2017-09-06tests: Test hardlinks to symlinksTavian Barnes
2017-09-04tests: Make test_deep pass with other find implementationsTavian Barnes
And move test_deep_strict to the bfs-specific tests, since it's not likely to ever pass for other implementations.
2017-09-02tests: Use human-readable filenames in links/Tavian Barnes
2017-08-16tests: Remove unnecessary sort-args.sh invocationsTavian Barnes
2017-08-12tests: Add some syntax highlighting to --verboseTavian Barnes
2017-08-12Unify broken symlink handlingTavian Barnes
Rather than open-code the fallback logic for broken symlinks everywhere it's needed, introduce a new xfstatat() utility function that performs the fallback automatically. Using xfstatat() consistently fixes a few bugs, including cases where broken symlinks are given as arguments to predicates like -samefile.
2017-08-12tests: Add a test for -exec ... {} + with a failing commandTavian Barnes
2017-07-29exec: Fix more corner cases with -ok ... +Tavian Barnes
-ok should look for a ; even if it sees {} +, according to POSIX.
2017-07-29tests.sh: Add a --verbose modeTavian Barnes
2017-07-29exec: Don't allow anything between {} and +Tavian Barnes
POSIX explicitly forbids this extension: > Only a <plus-sign> that immediately follows an argument containing > only the two characters "{}" shall punctuate the end of the primary > expression. Other uses of the <plus-sign> shall not be treated as > special.
2017-07-27Re-license under the BSD Zero Clause LicenseTavian Barnes