summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* tests: Refactor implementation into separate filesTavian Barnes2023-10-1913-823/+906
|
* tests: Update bash coding styleTavian Barnes2023-10-191-32/+32
|
* tests: Clean up colorizationTavian Barnes2023-10-191-76/+102
|
* tests: Use the ERR trap to print the failing commandTavian Barnes2023-10-191-4/+46
|
* tests: Fix uses of $? with set -eTavian Barnes2023-10-191-10/+12
|
* tests: New defer functionTavian Barnes2023-10-1918-34/+54
|
* tests: Rename --noclean -> --no-cleanTavian Barnes2023-10-191-3/+3
|
* parse: Set BFTW_WHITEOUTS when parsing -type wTavian Barnes2023-10-172-0/+102
|
* dir: Fix FreeBSD union mountsTavian Barnes2023-10-174-0/+28
|
* tests: Move closed_std* tests out of the POSIX groupTavian Barnes2023-10-146-2/+8
| | | | | | | | | | | | | POSIX actually says > If the utility would be executed with file descriptor 0, 1, or 2 > closed, implementations may execute the utility with the file > descriptor open to an unspecified file. So we're not guaranteed to be able to detect the situation in the first place. Add a best-effort check for these platforms and skip the test. Link: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_09_01_01
* tests: Always create the scratch directoryTavian Barnes2023-10-131-0/+2
| | | | | | | | | | | | | | | | Otherwise, some tests that try to check for flag support like invoke_bfs scratch -quit -xattr || skip can be accidentally skipped if ./scratch doesn't exist yet: $ ./tests/tests.sh bsd/xattr tests skipped: 1 After this patch, we get the expected $ ./tests/tests.sh bsd/xattr tests passed: 1
* tests: Don't crash if unbuffer isn't installedTavian Barnes2023-10-121-1/+1
|
* diag: Move enum debug_flags out of ctx.hTavian Barnes2023-10-121-0/+1
|
* alloc: Test allocation size overflowsTavian Barnes2023-10-061-2/+10
|
* tests/bfs/status: Try to test SIGWINCHTavian Barnes2023-10-061-1/+1
|
* tests: Check for expect_unbuffer tooTavian Barnes2023-10-061-2/+8
| | | | That's where FreeBSD installs it.
* tests: New bfs_pty wrapper for unbufferTavian Barnes2023-10-064-7/+17
|
* tests/bfs: Add a test that runs -statusTavian Barnes2023-10-051-0/+3
|
* tests/bfs: Add tests for color autodetectionTavian Barnes2023-10-054-0/+65
|
* tests: Respect $NO_COLORTavian Barnes2023-10-051-9/+15
|
* bfstd: Add a thread-safe wrapper for strerror()Tavian Barnes2023-10-053-6/+6
|
* tests: Fix make_deep() on FreeBSDTavian Barnes2023-10-021-9/+10
| | | | I keep forgetting that PATH_MAX is only 1024 there.
* Merge branch 'benchmarks'Tavian Barnes2023-10-021-15/+24
|\
| * tests/xtouch: Try creating the immediate parent firstTavian Barnes2023-09-291-15/+24
| |
* | tests: Don't cd into paths longer than PATH_MAXTavian Barnes2023-10-021-12/+8
|/ | | | | | This fixes a warning on at least Alpine Linux that looks like cd: error retrieving current directory: getcwd: cannot access parent directories: Filename too long
* Formatting fixesTavian Barnes2023-09-274-7/+7
|
* Use the new list macrosTavian Barnes2023-09-251-2/+2
|
* bfstd: Fix printable_len() off-by-oneTavian Barnes2023-09-061-0/+15
| | | | | | | If xmbrtowc() fails, or if xiswprint() is false, then we shouldn't include that wide char in the printable length. Fixes: 19c96abe0a1ee56cf206fd5e87defb1fd3e0daa5
* bfstd: Fix an OOB string index in xmbrtowc()Tavian Barnes2023-09-062-0/+22
| | | | | | | | | | | | | | | | | | | | | | This bug could be reproduced with something like $ bfs -samefile $'\xFA\xFA' bfs: error: bfs: dstrnescat@src/dstring.c:252: wordesc() result truncated or worse, with -DNDEBUG, $ bfs -samefile $'.....................\xFA\xFA' bfs: error: bfs -samefile $'.....................\xFA\xFA\x00\x55\x53\x45\x52\x3D\x74\x61\x76\x69\x61\x6E\x61\x74\x6F\x72 bfs: error: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bfs: error: No such file or directory. which prints the memory after the end of the string (in this case, the environment variable USER=tavianator). The bug was caused by the line `*i += len`, which was intended to be `*i = len`. But actually, the right behaviour seems to be `*i += 1`. Fixes: 19c96abe0a1ee56cf206fd5e87defb1fd3e0daa5
* Work around https://github.com/llvm/llvm-project/issues/64946Tavian Barnes2023-08-231-0/+3
|
* tests: Add missing .out fileTavian Barnes2023-08-141-0/+0
|
* parse: Allow -files0-from an empty set of pathsTavian Barnes2023-08-141-1/+1
| | | | This follows a behaviour change in GNU findutils 4.9.0.
* color: Only highlight the trailing slash on ENOTDIRTavian Barnes2023-07-132-5/+5
|
* color: Don't break up leading and trailing dirsTavian Barnes2023-07-1339-61/+63
|
* color: TTY-escape filenamesTavian Barnes2023-07-1340-0/+78
|
* color: Get rid of EXT_MAXTavian Barnes2023-07-132-0/+23
|
* parse: Reject -j0Tavian Barnes2023-07-121-0/+1
|
* tests/bfs: Add tests for -jTavian Barnes2023-07-125-0/+41
|
* color: Compare values too when deciding to smart-caseTavian Barnes2023-06-302-2/+7
|
* color: Implement smart casingTavian Barnes2023-06-295-10/+12
| | | | | | | | | Since coreutils 9.2, ls does case-sensitive extension matching if the same extension is capitalized differently in $LS_COLORS. Implement the same logic. Link: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33123 Link: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=9086
* tests/bfs/color: Add mixed-case extensionsTavian Barnes2023-06-2940-118/+315
|
* tests: Get more tests passing with --bfs=tests/find-color.shTavian Barnes2023-06-271-5/+32
|
* tests/gnu/printf_times: Correct %T@ to %A@Tavian Barnes2023-06-221-1/+1
|
* alloc: Implement an arena for flexible structsTavian Barnes2023-06-201-1/+13
|
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-202-11/+26
|
* color: `fi=0` should not fall back to `no`Tavian Barnes2023-06-088-0/+84
|
* tests/bfstd: Use bfs_verify() over explicit abort()Tavian Barnes2023-05-191-14/+5
|
* Switch from assert() to bfs_assert()/bfs_verify()Tavian Barnes2023-05-183-86/+83
|
* bit: Rename int.h to bit.hTavian Barnes2023-05-181-1/+1
|
* config: Align after saturating in flex_sizeof()Tavian Barnes2023-05-161-1/+2
| | | | | This ensures that it's legal to call aligned_alloc() with the result, which requires a multiple of the alignment.