1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-03-04 12:05:23 +02:00
Files
coreutils/tests/misc/sort-benchmark-random
Eric Blake d4f304d721 tests: output --version of program under test
This touches all new tests added since commit b062bbd9, when
init.cfg was added.  Older tests still exist that could use
conversion, but we can address those later.

* tests/sample-test: Restore hint for --version output.
* tests/misc/stat-birthtime: Include --version if verbose.
* tests/misc/tr-case-class: Likewise.
* tests/misc/stat-mount: Likewise.
* tests/misc/sort-unique: Likewise.
* tests/misc/sort-benchmark-random: Likewise.
Suggested by Jim Meyering.
2010-10-01 15:43:23 -06:00

54 lines
1.4 KiB
Bash
Executable File

#!/bin/sh
# Benchmark sort on randomly generated data.
# Copyright (C) 2010 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 3 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, see <http://www.gnu.org/licenses/>.
# Written by Glen Lenker.
. "${srcdir=.}/init.sh"; path_prepend_ ../src
test "$VERBOSE" = yes && sort --version
very_expensive_
perl -e '
my $num_lines = 500000;
my $length = 100;
for (my $i=0; $i < $num_lines; $i++)
{
for (my $j=0; $j < $length; $j++)
{
printf "%c", 32 + rand(94);
}
print "\n";
}' > in || framework_failure
# We need to generate a lot of data for sort to show a noticeable
# improvement in performance. Sorting it in PERL may take awhile.
perl -e '
open (FILE, "<in");
my @list = <FILE>;
print sort(@list);
close (FILE);
' > exp || framework_failure
time sort in > out || fail=1
compare out exp || fail=1
Exit $fail