summaryrefslogtreecommitdiff
path: root/tests/misc/sort-rand
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc/sort-rand')
-rwxr-xr-xtests/misc/sort-rand25
1 files changed, 7 insertions, 18 deletions
diff --git a/tests/misc/sort-rand b/tests/misc/sort-rand
index c6dd597e3..8b9fb2df0 100755
--- a/tests/misc/sort-rand
+++ b/tests/misc/sort-rand
@@ -1,7 +1,7 @@
#!/bin/sh
# Ensure that sort --sort-random doesn't sort.
-# Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+# Copyright (C) 2005-2007 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
@@ -21,20 +21,9 @@ if test "$VERBOSE" = yes; then
sort --version
fi
-pwd=`pwd`
-t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$
-trap 'status=$?; cd "$pwd" && chmod -R u+rwx $t0 && rm -rf $t0 && exit $status' 0
-trap '(exit $?); exit $?' 1 2 13 15
+. $srcdir/../test-lib.sh
-framework_failure=0
-mkdir -p $tmp || framework_failure=1
-cd $tmp || framework_failure=1
-seq 100 > in || framework_failure=1
-
-if test $framework_failure = 1; then
- echo "$0: failure in testing framework" 1>&2
- (exit 1); exit 1
-fi
+seq 100 > in || framework_failure
fail=0
@@ -43,11 +32,11 @@ sort --random-sort in > out || fail=1
# Fail if the input is the same as the output.
# This is a probabilistic test :-)
# However, the odds of failure are very low: 1 in 100! (~ 1 in 10^158)
-cmp in out > /dev/null && { fail=1; echo "not random?" 1>&2; }
+compare in out > /dev/null && { fail=1; echo "not random?" 1>&2; }
# Fail if the sorted output is not the same as the input.
sort -n out > out1
-cmp in out1 || { fail=1; echo "not a permutation" 1>&2; }
+compare in out1 || { fail=1; echo "not a permutation" 1>&2; }
# If locale is available then use it to find a random non-C locale.
if (locale --version) > /dev/null 2>&1; then
@@ -56,11 +45,11 @@ if (locale --version) > /dev/null 2>&1; then
LC_ALL=$locale sort --random-sort in > out2 || fail=1
# Fail if the output "randomly" is the same twice in a row.
- cmp out1 out2 > /dev/null && { fail=1; echo "not random with LC_ALL=$locale" 1>&2; }
+ compare out1 out2 > /dev/null && { fail=1; echo "not random with LC_ALL=$locale" 1>&2; }
# Fail if the sorted output is not the same as the input.
sort -n out > out1
- cmp in out1 || { fail=1; echo "not a permutation with LC_ALL=$locale" 1>&2; }
+ compare in out1 || { fail=1; echo "not a permutation with LC_ALL=$locale" 1>&2; }
fi
(exit $fail); exit $fail