summaryrefslogtreecommitdiff
path: root/tests/misc
AgeCommit message (Collapse)Author
2008-03-28Perform explicit exit-nonzero if the embedded Perl script fails.Jim Meyering
* tests/misc/pwd-long: Add canonical '(exit $fail); exit $fail'. Signed-off-by: Jim Meyering <meyering@redhat.com>
2008-03-27paste -d\\: avoid heap overrun for backslash at end of delim listJim Meyering
* src/paste.c: Include "quotearg.h". (collapse_escapes): Handle backslash-escaped backslash explicitly. Handle unescaped backslash at end of string by returning nonzero, rather than by overrunning memory. (main): Diagnose an invalid delimiter list -- carefully. Reported by Cristian Cadar, Daniel Dunbar and Dawson Engler. * tests/misc/paste-no-nl (delim-bs): Add a test to demonstrate the heap-smashing capability. (delim-bs2): Prior to coreutils-5.1.2, this bug was a little harder to demonstrate: it would corrupt a first-argument containing e.g., \b * NEWS: Mention the bug fix. * tests/misc/Makefile.am (TESTS): Reflect renaming. * tests/misc/paste: Rename from paste-no-nl. Signed-off-by: Jim Meyering <meyering@redhat.com>
2008-03-21ptx: avoid heap overrun for backslash at end of optarg stringJim Meyering
* src/ptx.c (copy_unescaped_string): Ignore a lone backslash at end of string. Reported by Cristian Cadar, Daniel Dunbar and Dawson Engler. Details here: <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13005>. * tests/misc/Makefile.am (TESTS): Add ptx-overrun. * tests/misc/ptx-overrun: New file. Test for the above fix. * NEWS: Mention the fix. Signed-off-by: Jim Meyering <meyering@redhat.com>
2008-03-19make check: Remove /tmp/ls-creating debug code.Bob Proulx
* tests/misc/ls-misc: Remove debug code creating /tmp/ls.
2008-03-01Don't exempt "groups" from write-failure test, now that it's a C program.Jim Meyering
* tests/misc/help-version: Since groups is no longer a shell script, a buggy bourne shell can't cause trouble.
2008-02-23Avoid test failures when root (/) is not readable.Jim Meyering
* tests/test-lib.sh (require_readable_root_): New function. * tests/misc/pwd-long: Skip this test when / is unreadable. * tests/du/slash: Likewise. This is required at least for Mandrake/Mandriva in "secure" mode. Reported by Theodoros V. Kalamatianos in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/12800
2008-02-19seq: give better diagnostics for invalid formats.Steven Schubiger
* src/seq.c: (validate_format): New function. (main): Use it. * tests/misc/seq (fmt-d, fmt-e): Test for expected diagnostics with invalid formats. * NEWS: Mention this change. * TODO: Remove this item. [jm: src/seq.c: make diagnostics more consistent tests/misc/seq (fmt-eos1): adjust the expected diagnostic ]
2008-02-18seq: give a proper diagnostic for an invalid --format=% optionJim Meyering
* src/seq.c (long_double_format): Handle '%' at end of string. * tests/misc/seq [fmt-eos1, fmt-eos2]: New tests for the bug. * NEWS: Mention this. Reported by Pádraig Brady.
2008-02-17Expand "ls --color" tests to also use the dircolors defaults.Jim Meyering
* tests/misc/ls-misc: Adjust this test so each is run twice. First, as usual, and the second time with LS_COLORS set using the default settings produced by running dircolors. * tests/Coreutils.pm: See below. This required some changes: - save and restore $ENV{LS_COLORS} for each individual test that requires a specific value. - Since this is the first test to call the run_tests command more than once, it has exposed that that function erroneously modifies the \@Tests array. Fix that in tests/Coreutils.pm.
2008-02-17ls --color no longer outputs unnecessary escape sequencesEd Avis
In --color mode, plain files do not get any color, not even white. When no highlighting is required, ls outputs no escape sequence at all. * src/ls.c (print_with_color): (used_color): New global. (indicator_no) [C_RESET]: New enum value. (indicator_name) ["rs"]: Corresponding new string. (color_indicator): Make the 'normal' and 'file' markers be NULL. Use "rs" (C_RESET) to reset to ordinary colors. (process_signals): Restore default colors only if necessary. (main): Don't call prep_non_filename_text here. (print_name_with_quoting): Call it here, instead. (prep_non_filename_text): Use C_RESET, not C_NORM. (print_color_indicator): Return bool, not void. Print nothing, when possible. (put_indicator): Call prep_non_filename_text the first time. * tests/misc/ls-misc: Test for above. * tests/ls/color-dtype-dir: Adapt: no escapes around regular file name. * TODO: Remove item. * NEWS: Mention this.
2008-02-09tests: Remove priv-check. Use new require_root_ function instead.Jim Meyering
* tests/priv-check: Remove file. * tests/Makefile.am (EXTRA_DIST): Remove priv-check. * tests/test-lib.sh (require_root_): New function. Use this function rather than sourcing the priv-check file. * tests/sample-test: Use require_root_ rather than priv-check. * tests/chown/basic: Likewise. * tests/cp/cp-a-selinux: Likewise. * tests/cp/preserve-gid: Likewise. * tests/cp/special-bits: Likewise. * tests/ls/nameless-uid: Likewise. * tests/misc/chcon: Likewise. * tests/mkdir/writable-under-readonly: Likewise. * tests/mv/sticky-to-xpart: Likewise. * tests/rm/fail-2eperm: Likewise. * tests/rm/no-give-up: Likewise. * tests/rm/one-file-system: Likewise. * tests/tail-2/append-only: Likewise. * tests/touch/now-owned-by-other: Likewise. * tests/rm/fail-eperm: Use skip_if_root_ rather than priv-check. * Makefile.maint (sc_root_tests): Reflect this change: search for the new function name.
2008-02-09tests: factor out the perl-requiring code in many test scriptsJim Meyering
* tests/require-perl: New file. * tests/Makefile.am (EXTRA_DIST): Add require-perl. * tests/dd/skip-seek: Use it, and remove manual tests. * tests/du/files0-from: Likewise. * tests/ls/nameless-uid: Likewise. * tests/misc/base64: Likewise. * tests/misc/basename: Likewise. * tests/misc/cut: Likewise. * tests/misc/date: Likewise. * tests/misc/dircolors: Likewise. * tests/misc/dirname: Likewise. * tests/misc/expand: Likewise. * tests/misc/expr: Likewise. * tests/misc/factor: Likewise. * tests/misc/fmt: Likewise. * tests/misc/fold: Likewise. * tests/misc/head-elide-tail: Likewise. * tests/misc/ls-misc: Likewise. * tests/misc/md5sum: Likewise. * tests/misc/md5sum-newline: Likewise. * tests/misc/mktemp: Likewise. * tests/misc/od: Likewise. * tests/misc/paste-no-nl: Likewise. * tests/misc/pr: Likewise. * tests/misc/pwd-long: Likewise. * tests/misc/seq: Likewise. * tests/misc/sha1sum: Likewise. * tests/misc/sha1sum-vec: Likewise. * tests/misc/sha224sum: Likewise. * tests/misc/sha256sum: Likewise. * tests/misc/sha384sum: Likewise. * tests/misc/sha512sum: Likewise. * tests/misc/sort-merge: Likewise. * tests/misc/stat-printf: Likewise. * tests/misc/sum: Likewise. * tests/misc/sum-sysv: Likewise. * tests/misc/test-diag: Likewise. * tests/misc/tsort: Likewise. * tests/misc/tty-eof: Likewise. * tests/misc/unexpand: Likewise. * tests/misc/wc-files0-from: Likewise. * tests/misc/xstrtol: Likewise. * tests/mv/i-1: Likewise. * tests/rm/empty-name: Likewise. * tests/rm/fail-eperm: Likewise. * tests/rm/unreadable: Likewise. (EXTRA_DIST): *do* require require-perl as a stand-alone, 'source'able script.
2008-02-09tests: call skip_test_ in place of echo+exit 77Jim Meyering
* tests/mv/no-target-dir: Likewise. * tests/other-fs-tmpdir: Likewise. * tests/rm/empty-name: Likewise. * tests/rm/fail-eperm: Likewise. * tests/rm/inaccessible: Likewise. * tests/rm/isatty: Likewise. * tests/rm/unreadable: Likewise. * tests/setgid-check: Likewise. * tests/sparse-file: Likewise. * tests/strace: Likewise. * tests/tail-2/append-only: Likewise. * tests/tail-2/big-4gb: Likewise. * tests/tail-2/tail-n0f: Likewise. * tests/touch/dangling-symlink: Likewise. * tests/touch/fifo: Likewise. * tests/touch/not-owner: Likewise. * tests/mv/i-3: Likewise. * tests/umask-check: Likewise. * tests/mv/acl: Likewise. * tests/cp/acl: Likewise. * tests/chgrp/deref: Likewise. * tests/chmod/setgid: Likewise. * tests/cp/existing-perm-race: Likewise. * tests/cp/file-perm-race: Likewise. * tests/cp/parent-perm-race: Likewise. * tests/du/2g: Likewise. * tests/du/8gb: Likewise. * tests/du/long-from-unreadable: Likewise. * tests/du/long-sloop: Likewise. * tests/du/slink: Likewise. * tests/ls/nameless-uid: Likewise. * tests/ls/stat-dtype: Likewise. * tests/misc/cat-proc: Likewise. * tests/misc/md5sum-newline: Likewise. * tests/misc/nice: Likewise. * tests/misc/od-x8: Likewise. * tests/misc/pwd-unreadable-parent: Likewise. * tests/misc/selinux: Likewise. * tests/misc/stty-row-col: Likewise. * tests/misc/tac-continue: Likewise. * tests/misc/arch: Likewise, and source $srcdir/../test-lib.sh *before* the use of skip_test_.
2008-02-07mkdir, split: write --verbose output to stdout, not stderr.Steven Schubiger
* src/mkdir.c (verbose_output): New function. (announce_mkdir): Use it. * src/split.c (usage): Update. * src/split.c (cwrite): Write to stdout, not stderr. * doc/coreutils.texi (split invocation): Remove the mention of --verbose output being printed to stderr. * tests/mkdir/p-v: Redirect stdout, not stderr. * tests/misc/split-a: Likewise. * NEWS: Mention this change. * TODO: Remove this item.
2008-01-07Make a racy test failure less likely to happen.Jim Meyering
* tests/misc/tty-eof: Uncomment a debug "warn". This change happens to make this test far less likely to fail. With that statement commented out, this test would fail about 20% of the time on my desktop. Now, it's gone 100 iterations in a row with no failure.
2007-12-20Avoid another "make check" failure due to omitted programs.Jim Meyering
* tests/test-lib.sh (require_built_): New function. * tests/misc/groups-version: Use it to skip this test if either groups or id is not built.
2007-12-11Add a test to exercise today's bug fix.Jim Meyering
* tests/misc/selinux: Test for today's bug fix. * NEWS: Mention the SELinux "ls -l" fix.
2007-12-01Change comments: say bug present up to coreutils-6.9, not fixed in 6.10.Jim Meyering
* tests/cut/Test.pm: Adjust comment. * tests/misc/cut: Likewise. * tests/misc/ls-misc: Likewise. * tests/misc/od: Likewise. * tests/misc/stty-invalid: Likewise. * tests/tr/Test.pm: Likewise.
2007-11-30Be extra careful to quote $abs_top_builddir-derived names.Jim Meyering
* tests/misc/ls-misc (shell_quote): New function. Use it to quote file names derived from $abs_top_builddir, in case it contains shell meta-characters. This is not currently needed, since CuTmpdir detects the fishy name and skips the test. But it's important enough to add the extra protection. Reported by Ralf Wildenhues.
2007-11-30Add quotes to protect against white space in build dir name.Ralf Wildenhues
* tests/check.mk (TESTS_ENVIRONMENT): Quote $(abs_srcdir). * tests/chmod/setgid: Quote absolute names. * tests/misc/help-version: Likewise. * tests/misc/pwd-unreadable-parent: Likewise. * tests/rmdir/ignore: Likewise. * tests/test-lib.sh: Likewise.
2007-11-23Add tests to show new class of strings accepted by date -d.Jim Meyering
* tests/misc/date (rel-1day, rel-plus1): New tests for the recent change in gnulib's getdate.y. * NEWS: Mention the fix.
2007-11-17Correct preceding patch.Jim Meyering
* src/seq.c (print_numbers): Also handle first < last && step < 0. * tests/misc/seq [empty-rev]: New test for this case.
2007-11-16Port readlink-fp-loop to Solaris.Paul Eggert
* tests/misc/readlink-fp-loop (symlink_loop_msg): New var, which records the symlink-loop message, whose wording is not standardized by Posix. Do not rely on "echo x > p/1" to work when p/1 has a lot of indirect symlinks. (I'm surprised that it works on Linux. Perhaps a Linux bug?)
2007-11-16Port to Solaris 8 perl, which does not support "use warnings;".Paul Eggert
* tests/dd/skip-seek: Skip test if "use warnings;" fails. * tests/du/files0-from: Likewise. * tests/misc/base64: Likewise. * tests/misc/basename: Likewise. * tests/misc/cut: Likewise. * tests/misc/date: Likewise. * tests/misc/dircolors: Likewise. * tests/misc/dirname: Likewise. * tests/misc/expand: Likewise. * tests/misc/expr: Likewise. * tests/misc/factor: Likewise. * tests/misc/fmt: Likewise. * tests/misc/fold: Likewise. * tests/misc/head-elide-tail: Likewise. * tests/misc/ls-misc: Likewise. * tests/misc/md5sum: Likewise. * tests/misc/md5sum-newline: Likewise. * tests/misc/mktemp: Likewise. * tests/misc/od: Likewise. * tests/misc/paste-no-nl: Likewise. * tests/misc/pr: Likewise. * tests/misc/seq: Likewise. * tests/misc/sha1sum: Likewise. * tests/misc/sha1sum-vec: Likewise. * tests/misc/sha224sum: Likewise. * tests/misc/sha256sum: Likewise. * tests/misc/sha384sum: Likewise. * tests/misc/sha512sum: Likewise. * tests/misc/sort-merge: Likewise. * tests/misc/stat-printf: Likewise. * tests/misc/sum: Likewise. * tests/misc/test-diag: Likewise. * tests/misc/tsort: Likewise. * tests/misc/unexpand: Likewise. * tests/misc/wc-files0-from: Likewise. * tests/misc/xstrtol: Likewise. * tests/mv/i-1: Likewise. * tests/rm/empty-name: Likewise. * tests/rm/unreadable: Likewise.
2007-11-03seq: add another test for the %% bugJim Meyering
* tests/misc/seq (fmt-c): Test the other fixed case, too.
2007-11-03Fix bug with "seq 10.8 0.1 10.95", plus another bug with %% in format.Paul Eggert
* NEWS: Mention the %%-in-format bug fix. * src/seq.c (struct layout): New type. (long_double_format): New arg LAYOUT. Fill it in. Fix mishandling of %% in formats. (print_numbers): New arg LAYOUT. Don't convert LAST to output format when deciding whether to go slightly past LAST. Instead, convert X to output format and back. This fixes a bug reported by Andreas Schwab in <http://lists.gnu.org/archive/html/bug-coreutils/2007-10/msg00237.html> where "seq 10.8 0.1 10.95" would output 11.0 on platforms where 10.95 rounds to a value that prints as 11.0 when only one digit past the decimal point is asked for. (main): Compute layout, for benefit of print_numbers. * tests/misc/seq (float-3): Undo previous change, since the bug should be fixed now. (fmt-b): New test, for the %% bug.
2007-11-01tests/misc/printf-surprise: Correct sed transform.Jim Meyering
Reported by Bob Proulx.
2007-11-01Adjust a seq subtest not to depend on the vagaries of floating point.Jim Meyering
* tests/misc/seq (float-3): Use 10.94 as the endpoint, not 10.95, since 10.95 was precisely in the middle of the interval, and with a %.1f format could map to either 10.9 or 11.0. Reported by Mike Frysinger
2007-11-01Make the new printf-surprise test more precise.Jim Meyering
* tests/test-lib.sh (require_ulimit_): New function. * tests/misc/printf-surprise: Use ulimit -v to trigger the fixed bug, and rather than checking printf's exit status (which would go wrong on FreeBSD 6.1, since their printf(3) function doesn't require lots of memory in this case) simply test whether it outputs the first 10 bytes.
2007-10-30Avoid seq floating-point test failure on FreeBSD 6.1.Jim Meyering
* tests/misc/seq (float-4): Also accept -0.0.
2007-10-27Add a test for the printf fix of 2007-10-21.Jim Meyering
* tests/misc/printf-surprise: New file. Test for 2007-10-21's fix. * tests/misc/Makefile.am (TESTS): Add printf-surprise.
2007-10-21Reorder tests to run more basic ones earlier.Jim Meyering
* tests/misc/Makefile.am (TESTS): Reorder. * tests/Makefile.am (SUBDIRS): Reorder. Signed-off-by: Jim Meyering <meyering@redhat.com>
2007-10-21* tests/misc/help-version: Add a comment.Jim Meyering
Signed-off-by: Jim Meyering <meyering@redhat.com>
2007-10-20Prevent "make check" from leaving mktemp /tmp/tmp.* files behind.Bob Proulx
* tests/misc/help-version (mktemp_args): Tell mktemp to create its temporary file in the current directory.
2007-10-14Pull all TESTS_ENVIRONMENT settings "up" into tests/check.mk.Jim Meyering
* tests/Makefile.am.in (TESTS_ENVIRONMENT): Remove definition. * tests/chgrp/Makefile.am: Likewise. * tests/chmod/Makefile.am: Likewise. * tests/chown/Makefile.am: Likewise. * tests/cp/Makefile.am: Likewise. * tests/dd/Makefile.am: Likewise. * tests/du/Makefile.am: Likewise. * tests/install/Makefile.am: Likewise. * tests/ln/Makefile.am: Likewise. * tests/ls/Makefile.am: Likewise. * tests/misc/Makefile.am: Likewise. * tests/mkdir/Makefile.am: Likewise. * tests/mv/Makefile.am: Likewise. * tests/readlink/Makefile.am: Likewise. * tests/rm/Makefile.am: Likewise. * tests/rmdir/Makefile.am: Likewise. * tests/tail-2/Makefile.am: Likewise. * tests/touch/Makefile.am: Likewise. * tests/check.mk (TESTS_ENVIRONMENT) [EXEEXT, EGREP, MAKE, PERL]: [CONFIG_HEADER, build_programs, host_os, host_triplet, PATH]: [REPLACE_GETCWD, CU_TEST_NAME]: Add definitions here. * tests/misc/pwd-long: Use $abs_top_builddir/src, not $BUILD_SRC_DIR. * tests/dd/skip-seek: Don't use $ENV{PROG}. * tests/rm/empty-name: Likewise. * tests/rm/unreadable: Likewise. * tests/mv/i-1: Likewise.
2007-10-09Move the help-version test into misc/.Jim Meyering
* tests/help-version: Move to... * tests/misc/help-version: ...here. Source test-lib.sh, as usual. Use $abs_top_builddir, rather than ".." and "../..".
2007-10-09Make the runcon-no-reorder test slightly more general.Jim Meyering
* tests/misc/runcon-no-reorder: Don't hard-code "unconstrained_t". Use slightly more general "runcon $(id -Z)". Suggestion from Stephen Smalley.
2007-10-09Skip the chcon test on a system with no SELinux support.Jim Meyering
* tests/test-lib.sh (require_selinux_): New function. * tests/misc/chcon: Use it. * tests/misc/selinux: Use it here, too. * tests/cp/cp-a-selinux: and here. * tests/selinux: Remove file. * tests/Makefile.am (EXTRA_DIST): Remove selinux. Reported by Mike Frysinger and Bauke Jan Douma.
2007-10-07New program: mktemp.Jim Meyering
* NEWS: Mention this. * README: Add mktemp to the list. * AUTHORS: Add this: mktemp: Jim Meyering * src/mktemp.c: New file. * src/Makefile.am (bin_PROGRAMS): Add mktemp. (mktemp_LDADD): Add $(LIB_GETHRXTIME). * man/mktemp.x: New file. * man/Makefile.am (dist_man_MANS): Add mktemp.1. (mktemp.1): New dependency. * man/.cvsignore: Add mktemp.1. * man/.gitignore: New file. * src/.cvsignore, src/.gitignore: Add mktemp. * tests/misc/mktemp: New file. * tests/misc/Makefile.am (TESTS): Add mktemp. * tests/Coreutils.pm (run_tests): Give the POST-test function access to stdout and stderr contents, so it can verify that the named-on-stdout file/dir does indeed exist and has proper permissions, etc. [po/ChangeLog] * POTFILES.in: Add src/mktemp.c.
2007-10-05Add PACKAGE_VERSION to TESTS_ENVIRONMENT via check.mk.Jim Meyering
* tests/check.mk (TESTS_ENVIRONMENT): Add PACKAGE_VERSION here, rather than in every Makefile.am that needs it. * tests/rm/Makefile.am (TESTS_ENVIRONMENT): Remove PACKAGE_VERSION. * tests/misc/Makefile.am (TESTS_ENVIRONMENT): Likewise.
2007-10-03* tests/misc/selinux: Skip this test if the initial chcon fails.Jim Meyering
2007-09-30Test previous patch.Eric Blake
* tests/misc/groups-dash: New test. * tests/misc/Makefile.am (TESTS): Add it. Signed-off-by: Eric Blake <ebb9@byu.net>
2007-09-27Add a test to exercise a readlink bug.Jim Meyering
* tests/misc/readlink-fp-loop: New file. Test for the readlink bug fixed through today's change to Gnulib's canonicalize module. * tests/misc/Makefile.am (TESTS): Add readlink-fp-loop. Bug report and a test case from mpb.mail@gmail.com.
2007-09-16tests/misc/tac-continue: Arrange to remove a temporary file.Jim Meyering
Signed-off-by: Jim Meyering <jim@meyering.net>
2007-09-15Factor out definitions in TESTS_ENVIRONMENT of srcdir, top_srcdir, etc.Jim Meyering
tests/check.mk (top_srcdir): Define. tests/*/Makefile.am: Remove definitions of $(srcdir), $(top_srcdir), $(abs_top_srcdir), and $(abs_top_builddir), since they're defined via the included tests/check.mk.
2007-09-15Move the sole test in tests/ls-2/ to tests/misc/.Jim Meyering
* tests/ls-2/basic-1: Move this file to ... * tests/misc/ls-misc: ...here. Don't rely on $PROG in env. * tests/misc/Makefile.am (TESTS): Add ls-misc. * tests/Makefile.am (SUBDIRS): Remove ls-2. * tests/ls-2: Remove the directory. * configure.ac (AC_CONFIG_FILES): Remove tests/ls-2/Makefile.
2007-09-15More misc, test-related changes. (some to allow running tests as root)Jim Meyering
2007-09-15Move all tests from test/{od,sha1sum,shred,stty} to tests/misc/.Jim Meyering
Reflect these renamings: od/od-N misc/od-N od/x8 misc/od-x8 sha1sum/basic-1 misc/sha1sum sha1sum/sample-vec misc/sha1sum-vec shred/exact misc/shred-exact shred/remove misc/shred-remove stty/basic-1 misc/stty stty/invalid misc/stty-invalid stty/row-col-1 misc/stty-row-col * tests/misc/Makefile.am (TESTS): Add the new files. * tests/Makefile.am (SUBDIRS): Remove the dir names. * tests/od, tests/sha1sum, tests/shred, tests/stty: Remove the directories. * configure.ac (AC_CONFIG_FILES): Remove the corresponding Makefile names.
2007-09-15Move the two tests in tests/tee to tests/misc/.Jim Meyering
* tests/tee/basic: Move this file to ... * tests/misc/tee: ...here. Don't rely on $PROG in env. * tests/tee/dash: Move this file to ... * tests/misc/tee-dash: ...here. Don't rely on $PROG in env. * tests/misc/Makefile.am (TESTS): Add tee. * tests/Makefile.am (SUBDIRS): Remove tee. * tests/tee: Remove the directory. * configure.ac (AC_CONFIG_FILES): Remove tests/tee/Makefile
2007-09-15Move the two tests in tests/sum/ to tests/misc/.Jim Meyering
* tests/sum/basic-1: Move this file to ... * tests/misc/sum: ...here. Don't rely on $PROG in env. * tests/sum/sysv: Move this file to ... * tests/misc/sum-sysv: ...here. Adapt it to use test-lib.sh. * tests/misc/Makefile.am (TESTS): Add sum and sum-sysv. * tests/Makefile.am (SUBDIRS): Remove sum. * tests/sum: Remove the directory. * configure.ac (AC_CONFIG_FILES): Remove tests/sum/Makefile.