MANIFEST | 1 + devel/longest-tests | 7 +++++++ t/run.perl | 4 ++++ diff --git a/MANIFEST b/MANIFEST index f22f60aa217fa6b95825830a81cf0bfc64e6b47c..aba32762a4073b2018684e1dfcd0e542266dacae 100644 --- a/MANIFEST +++ b/MANIFEST @@ -121,6 +121,7 @@ contrib/css/README contrib/selinux/el7/publicinbox.fc contrib/selinux/el7/publicinbox.te devel/README +devel/longest-tests devel/syscall-list examples/README examples/README.unsubscribe diff --git a/devel/longest-tests b/devel/longest-tests new file mode 100755 index 0000000000000000000000000000000000000000..bf46e1660875e6501efdaa66e360bc9f57fa3fff --- /dev/null +++ b/devel/longest-tests @@ -0,0 +1,7 @@ +eval 'exec perl -wS $0 ${1+"$@"}' # this script is too short to copyright +if 0; # running under some shell +use v5.12; use autodie; use YAML::XS qw(Load); +open(my $fh, '<', shift // '.prove'); +my $t = Load(do { local $/; <$fh> })->{tests}; +my @t = sort { $t->{$b}->{elapsed} <=> $t->{$a}->{elapsed} } keys %$t; +printf "%0.6f %s\n", $t->{$_}->{elapsed}, $_ for @t; diff --git a/t/run.perl b/t/run.perl index b90715a6ffe09ce86d04e84ad7d7b1f5b71c604d..f68dab607f2693c53edb9d517b9ff93150fbae5a 100755 --- a/t/run.perl +++ b/t/run.perl @@ -85,6 +85,10 @@ my $t = $state->{tests}; @tests = sort { ($t->{$b}->{elapsed} // 0) <=> ($t->{$a}->{elapsed} // 0) } @tests; + say "# top 10 longest tests (`make check' regenerates)"; + for (@tests[0..9]) { + printf "# %0.6f %s\n", $t->{$_}->{elapsed}, $_; + } } our $tb = Test::More->builder;