summaryrefslogtreecommitdiffstats
path: root/tests
AgeCommit message (Collapse)Author
2022-10-21tests/gnu/inum_automount: Work around systemd-mount raceTavian Barnes
This test used systemd-mount to set up an automount on scratch/mnt. If a previous test mounted something there, systemd will notice that asynchronously and may not have noticed the unmount by the time that test runs. This led to the test randomly being skipped sometimes when systemd-mount failed. It could be reproduced with a loop like this: $ for _ in {1..10}; ./tests/tests.sh common/L_mount gnu/inum_automount Work around it by using scratch/automnt instead to avoid conflicts.
2022-10-20tests: Always clean scratch before using itTavian Barnes
2022-10-20tests: Add a helper for cleaning scratchTavian Barnes
And try to unmount things if the a test left them mounted.
2022-10-19tests: Coverage number go upTavian Barnes
2022-10-19tests: Split test cases into separate filesTavian Barnes
2022-10-05tests: Test -exec with a nonexistent commandTavian Barnes
2022-09-18tests: POSIX doesn't *require* -ok ... {} + to be unsupportedTavian Barnes
2022-07-18tests: Don't pass NUL bytes to sortTavian Barnes
The tests now pass with busybox instead of coreutils.
2022-07-13tests: Limit path lengths passed to mkdirTavian Barnes
FreeBSD limits mkdir() to 1023 bytes, not 4096.
2022-07-13tests: Set colors to the empty string for non-ttysTavian Barnes
2022-07-13tests: Use set -uTavian Barnes
2022-07-13tests: Optimize startupTavian Barnes
./tests.sh is about 110ms faster on my machine with this patch.
2022-07-13tests: Add tests for parsing failures in more locationsTavian Barnes
2022-07-12tests: New test for -exec with unset $PATHTavian Barnes
2022-07-12tests: Simplify snapshot testing without bfs_diffTavian Barnes
2022-06-01tests: Add a test for every printf directiveTavian Barnes
2022-05-29tests: Add tests for -warn/-nowarnTavian Barnes
2022-05-20tests: Don't print test names to non-ttys without --verbose=testsTavian Barnes
This should shrink the CI logs appreciably.
2022-05-20Makefile: Add a BUILDDIR variable for out-of-tree buildsTavian Barnes
bfs can now be built from a read-only source tree.
2022-05-16Makefile: Split build into bin and obj directoriesTavian Barnes
This also moves the main binary from ./bfs to ./bin/bfs, and ./tests.sh to ./tests/tests.sh, with the goal of keeping the repository root clean.
2022-05-12tests: Use skip_if for sudo testsTavian Barnes
This lets us categorize the sudo tests properly, which fixes e.g. $ ./tests.sh --posix --sudo
2022-05-12stat: Pass AT_NO_AUTOMOUNT if possibleTavian Barnes
Previously bfs would trigger automounts even when it didn't descend into the mount directory, while GNU find does not.
2022-04-16Source / Include Folder (#88)トトも
Moved Source Files Into `src` Folder
2022-03-15tests: Use bfs_diff in more casesTavian Barnes
2022-03-14tests: Shell style fixesTavian Barnes
We now support `./tests.sh --bfs="path/with\ spaces/bfs"`
2022-03-13tests: Use -print0 instead of -printf '%p ' for exec flush testsTavian Barnes
2022-03-13tests: Use plain sort, not bfs_sortTavian Barnes
bfs_sort existed to keep the test outputs nicely in breadth-first order. Unfortunately the implementation using awk didn't support NUL bytes.
2022-03-12Don't shadow standard headersTavian Barnes
@italic on the AUR stated that bfs from the AUR fails to build on Manjaro. From the build log, it seems like <time.h> doesn't get included properly. I assume it's picking up ./time.h instead. I couldn't reproduce the build issue in the default configuration, but it does fail with EXTRA_CFLAGS="-I." which isn't good. So rename everything with an x prefix to stop clashing. Link: https://aur.archlinux.org/packages/bfs#comment-856102 Link: https://paste.rs/eqR
2022-02-24regex: Use the encoding from the current localeTavian Barnes
2022-02-11exec: Flush I/O streams before executing anythingTavian Barnes
Otherwise output from commands may appear unexpectedly earlier than output from bfs. We use fflush(NULL) to flush all streams, which is more than GNU find does, but seems to be a useful extension.
2022-02-10tests: Add a test that -exit suppresses the implicit -printTavian Barnes
2022-02-04regex: Add support for emacs and grep typesTavian Barnes
2022-02-02tests: Add tests for syntactically invalid globsTavian Barnes
2022-02-01tests: New tests for -i?wholenameTavian Barnes
2022-02-01tests: New test for ** in a globTavian Barnes
2022-02-01tests: New test for -prune on a non-directoryTavian Barnes
2022-01-30parse: Add support for ed and sed regexesTavian Barnes
They're apparently the same as POSIX basic regexes.
2022-01-29Revert "tests: Add a test for posix-basic alternation"Tavian Barnes
Turns out alternation is not actually part of the POSIX basic regular expression language, it's just a glibc extension. This reverts commit c898af13a671ee92a056467d324f16823594eb1c.
2022-01-29tests: Add a test for posix-basic alternationTavian Barnes
2022-01-18tests: Add missing license headersTavian Barnes
2022-01-18tests/trie: Fix "handling" typoTavian Barnes
2021-10-09printf: Colorize file names/paths in simple casesTavian Barnes
2021-09-26Don't truncate files until we know they're not duplicatesTavian Barnes
2021-09-21ctx: Also deduplicate the standard streamsTavian Barnes
This fixes some potential missing output when the same file is used in a redirection and something like -fprint. The main benefit is smarter handling of /dev/stdout, which will now share the CFILE* with cout.
2021-09-15tests: Make the -files0-from tests weirderTavian Barnes
2021-09-15Implement -files0-from FILETavian Barnes
See https://savannah.gnu.org/bugs/?60383 for the development of the corresponding GNU find feature.
2021-08-05Use /usr/bin/env bash as the shebang in scriptsTavian Barnes
This should reduce the need for patches on the BSDs.
2021-06-02Implement time units for -{a,B,c,m}timeTavian Barnes
From FreeBSD find. Closes #75.
2021-04-18tests: Add a test for deleting large directoriesTavian Barnes
This serves as a test for https://github.com/tavianator/bfs/issues/67
2021-03-28test: Add more tests for -H/-L and -type lTavian Barnes