From 1e853a64dd2fc9f9106003de138de3c284bc79b5 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Thu, 21 Mar 2024 14:52:05 +0100 Subject: [PATCH] tests: Drop 'test-lib.sh' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We no longer have any shell-based tests that use it. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- tests/test-lib.sh | 280 ---------------------------------------------- 1 file changed, 280 deletions(-) delete mode 100644 tests/test-lib.sh diff --git a/tests/test-lib.sh b/tests/test-lib.sh deleted file mode 100644 index 67065a9362..0000000000 --- a/tests/test-lib.sh +++ /dev/null @@ -1,280 +0,0 @@ -# test-lib.sh: source this file; set up for tests - -# Copyright (C) 2008-2013, 2016 Red Hat, Inc. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library. If not, see -# . -# -# Based on an idea from GNU coreutils - -_scriptdir="$(unset CDPATH; cd $(dirname $0) && pwd)" -test -z "$abs_srcdir" && abs_srcdir=$_scriptdir -test -z "$abs_builddir" && abs_builddir=$_scriptdir -test -z "$abs_top_srcdir" && abs_top_srcdir=$_scriptdir/.. -test -z "$abs_top_builddir" && abs_top_builddir=$_scriptdir/.. -test -z "$LC_ALL" && LC_ALL=C - -# Skip this test if the shell lacks support for functions. -unset function_test -eval 'function_test() { return 11; }; function_test' -if test $? != 11; then - echo "$0: /bin/sh lacks support for functions; skipping this test." 1>&2 - (exit 77); exit 77 -fi - -test_intro() -{ - name=$1 - if test "$verbose" = "0" ; then - echo "TEST: $name" - printf " " - fi -} - -test_skip_case() -{ - counter=$1 - name=$2 - reason=$3 - if test "$verbose" = "0" ; then - mod=`expr \( $counter + 40 - 1 \) % 40` - if test "$counter" != 1 && test "$mod" = 0 ; then - printf " %-3d\n" `expr $counter - 1` - printf " " - fi - printf "_" - else - printf "%3d) %-60s ... SKIP\n" "$counter" "$name" - printf " case skipped: %s\n" "$reason" - fi -} - -test_result() -{ - counter=$1 - name=$2 - status=$3 - if test "$verbose" = "0" ; then - mod=`expr \( $counter + 40 - 1 \) % 40` - if test "$counter" != 1 && test "$mod" = 0 ; then - printf " %-3d\n" `expr $counter - 1` - printf " " - fi - if test "$status" = "0" ; then - printf "." - else - printf "!" - fi - else - if test "$status" = "0" ; then - printf "%3d) %-60s ... OK\n" "$counter" "$name" - else - printf "%3d) %-60s ... FAILED\n" "$counter" "$name" - fi - fi -} - -test_final() -{ - counter=$1 - status=$2 - - if test "$verbose" = "0" ; then - len=`expr 39 - \( \( $counter - 1 \) % 40 \)` - printf "%${len}s" "" - if test "$status" = "0" ; then - printf " %-3d OK\n" $counter - else - printf " %-3d FAILED\n" $counter - fi - fi -} - -skip_test_() -{ - echo "$0: skipping test: $@" 1>&2 - (exit 77); exit 77 -} - -require_acl_() -{ - getfacl --version < /dev/null > /dev/null 2>&1 \ - && setfacl --version < /dev/null > /dev/null 2>&1 \ - || skip_test_ "This test requires getfacl and setfacl." - - id -u bin > /dev/null 2>&1 \ - || skip_test_ "This test requires a local user named bin." -} - -require_ulimit_() -{ - ulimit_works=yes - # Expect to be able to exec a program in 10MB of virtual memory, - # but not in 20KB. I chose "date". It must not be a shell built-in - # function, so you can't use echo, printf, true, etc. - # Of course, in coreutils, I could use $top_builddir/src/true, - # but this should be able to work for other projects, too. - ( ulimit -v 10000; date ) > /dev/null 2>&1 || ulimit_works=no - ( ulimit -v 20; date ) > /dev/null 2>&1 && ulimit_works=no - - test $ulimit_works = no \ - && skip_test_ "this shell lacks ulimit support" -} - -require_readable_root_() -{ - test -r / || skip_test_ "/ is not readable" -} - -# Skip the current test if strace is not available or doesn't work. -require_strace_() -{ - strace -V < /dev/null > /dev/null 2>&1 || - skip_test_ 'no strace program' - - strace -qe unlink echo > /dev/null 2>&1 || - skip_test_ 'strace does not work' -} - -require_built_() -{ - skip_=no - for i in "$@"; do - case " $built_programs " in - *" $i "*) ;; - *) echo "$i: not built" 1>&2; skip_=yes ;; - esac - done - - test $skip_ = yes && skip_test_ "required program(s) not built" -} - -uid_is_privileged_() -{ - # Make sure id -u succeeds. - my_uid=$(id -u) \ - || { echo "$0: cannot run \`id -u'" 1>&2; return 1; } - - # Make sure it gives valid output. - case $my_uid in - 0) ;; - *[!0-9]*) - echo "$0: invalid output (\`$my_uid') from \`id -u'" 1>&2 - return 1 ;; - *) return 1 ;; - esac -} - -skip_if_() -{ - case $1 in - root) skip_test_ must be run as root ;; - non-root) skip_test_ must be run as non-root ;; - *) ;; # FIXME? - esac -} - -require_selinux_() -{ - case `ls -Zd .` in - '? .'|'unlabeled .') - skip_test_ "this system (or maybe just" \ - "the current file system) lacks SELinux support" - ;; - esac -} - -test_expensive() -{ - if test "$VIR_TEST_EXPENSIVE" != 1; then - skip_test_ ' -This test is very expensive, so it is disabled by default. -To change the default, configure with: meson -Dexpensive_tests=enabled -' - fi -} - -require_root_() { uid_is_privileged_ || skip_test_ "must be run as root"; } -skip_if_root_() { uid_is_privileged_ && skip_test_ "must be run as non-root"; } -error_() { echo "$0: $@" 1>&2; (exit 1); exit 1; } -framework_failure() { error_ 'failure in testing framework'; } - -mkfifo_or_skip_() -{ - test $# = 1 || framework_failure - if ! mkfifo "$1"; then - # Make an exception of this case -- usually we interpret framework-creation - # failure as a test failure. However, in this case, when running on a SunOS - # system using a disk NFS mounted from OpenBSD, the above fails like this: - # mkfifo: cannot make fifo `fifo-10558': Not owner - skip_test_ 'NOTICE: unable to create test prerequisites' - fi -} - -# Create mock XDG files/directories to avoid permission problems. -# As it points inside $test_dir_, it is automatically cleaned. -mock_xdg_() -{ - export XDG_CONFIG_HOME="$t_/.config" - export XDG_CACHE_HOME="$t_/.cache" - export XDG_RUNTIME_HOME="$XDG_CACHE_HOME" - - mkdir -p "$XDG_CONFIG_HOME/libvirt" "$XDG_CONFIG_HOME/virsh" - mkdir -p "$XDG_CACHE_HOME/libvirt" "$XDG_CACHE_HOME/virsh" - mkdir -p "$XDG_RUNTIME_HOME/libvirt" "$XDG_RUNTIME_HOME/virsh" -} - -test_dir_=$(pwd) - -this_test_() { echo "./$0" | sed 's,.*/,,'; } -this_test=$(this_test_) - -verbose=0 -if test -n "$VIR_TEST_DEBUG" || test -n "$VIR_TEST_VERBOSE" ; then - verbose=1 -fi - -debug() { :; } - -if test "$VIR_TEST_DEBUG" = "2"; then - debug() { echo "$@"; } -fi - -# This is a stub function that is run upon trap (upon regular exit and -# interrupt). Override it with a per-test function, e.g., to unmount -# a partition, or to undo any other global state changes. -cleanup_() { :; } - -t_=$("mktemp" "-d" "$test_dir_/lv-$this_test.XXXXXXXXXX") \ - || error_ "failed to create temporary directory in $test_dir_" - -# Run each test from within a temporary sub-directory named after the -# test itself, and arrange to remove it upon exception or normal exit. -trap 'st=$?; cleanup_; d='"$t_"'; - cd '"$test_dir_"' && chmod -R u+rwx "$d" && rm -rf "$d" && exit $st' 0 -trap '(exit $?); exit $?' 1 2 13 15 - -cd "$t_" || error_ "failed to cd to $t_" - -if ( diff --version < /dev/null 2>&1 | grep GNU ) > /dev/null 2>&1; then - compare() { diff -u "$@"; } -elif ( cmp --version < /dev/null 2>&1 | grep GNU ) > /dev/null 2>&1; then - compare() { cmp -s "$@"; } -else - compare() { cmp "$@"; } -fi - -# Local Variables: -# indent-tabs-mode: nil -# End: