p0071: measure sorting of already sorted and reversed files

Check if sorting takes advantage of already sorted or reversed content,
or if that corner case actually decreases performance, like it would for
a simplistic quicksort implementation.

Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
René Scharfe 2021-10-01 11:19:04 +02:00 committed by Junio C Hamano
parent f1ed4ce9e3
commit 84edc40676
1 changed files with 22 additions and 7 deletions

View File

@ -11,16 +11,31 @@ test_expect_success 'setup' '
git cat-file --batch >unsorted git cat-file --batch >unsorted
' '


test_perf 'sort(1)' ' test_perf 'sort(1) unsorted' '
sort <unsorted >expect sort <unsorted >sorted
' '


test_perf 'string_list_sort()' ' test_expect_success 'reverse' '
test-tool string-list sort <unsorted >actual sort -r <unsorted >reversed
' '


test_expect_success 'string_list_sort() sorts like sort(1)' ' for file in sorted reversed
test_cmp_bin expect actual do
' test_perf "sort(1) $file" "
sort <$file >actual
"
done

for file in unsorted sorted reversed
do

test_perf "string_list_sort() $file" "
test-tool string-list sort <$file >actual
"

test_expect_success "string_list_sort() $file sorts like sort(1)" "
test_cmp_bin sorted actual
"
done


test_done test_done