#! /bin/sh # Test "nice". # Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # This program 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 General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # This script takes no arguments. if test -n "$DJDIR"; then echo "$0: cannot test nice on DJGPP" >&2 exit 77 fi tests=' 0 empty 10 1 -1 1 2 -12 12 3 -1:-2 2 4 -n:1 1 5 -n:1:-2 2 6 -n:1:-+12 12 7 -2:-n:1 1 8 -2:-n:12 12 9 -+1 1 10 -+12 12 11 -+1:-+12 12 12 -n:+1 1 13 --1:-2 2 14 --1:-2:-13 13 15 --1:-n:2 2 16 --1:-n:2:-3 3 17 --1:-n:2:-13 13 18 -n:-1:-12 12 19 --1:-12 12 NA LAST NA ' set $tests if test "$VERBOSE" = yes; then nice --version set -x fi # Require that this test be run at `nice' level 0. niceness=`nice` if test "$niceness" = 0; then : ok else echo "$0: this test must be run at nice level 0" 1>&2 exit 77 fi fail=0 while :; do test_name=$1 args=$2 expected_result=$3 test $args = empty && args='' test x$args = xLAST && break args=`echo x$args|tr : ' '|sed 's/^x//'` if test "$VERBOSE" = yes; then #echo "testing \`nice $args nice\` = $expected_result ..." echo "test $test_name... " | tr -d '\n' fi test x`nice $args nice 2> /dev/null` = x$expected_result \ && ok=ok || ok=FAIL fail=1 test "$VERBOSE" = yes && echo $ok test x`nice $args nice 2> /dev/null` = x$expected_result || fail=1 shift; shift; shift done exit $fail