40 lines
795 B
Bash
40 lines
795 B
Bash
|
#!/bin/sh
|
||
|
|
||
|
test_description='test scalar performance'
|
||
|
. ./perf-lib.sh
|
||
|
|
||
|
test_perf_large_repo "$TRASH_DIRECTORY/to-clone"
|
||
|
|
||
|
test_expect_success 'enable server-side partial clone' '
|
||
|
git -C to-clone config uploadpack.allowFilter true &&
|
||
|
git -C to-clone config uploadpack.allowAnySHA1InWant true
|
||
|
'
|
||
|
|
||
|
test_perf 'scalar clone' '
|
||
|
rm -rf scalar-clone &&
|
||
|
scalar clone "file://$(pwd)/to-clone" scalar-clone
|
||
|
'
|
||
|
|
||
|
test_perf 'git clone' '
|
||
|
rm -rf git-clone &&
|
||
|
git clone "file://$(pwd)/to-clone" git-clone
|
||
|
'
|
||
|
|
||
|
test_compare_perf () {
|
||
|
command=$1
|
||
|
shift
|
||
|
args=$*
|
||
|
test_perf "$command $args (scalar)" "
|
||
|
$command -C scalar-clone/src $args
|
||
|
"
|
||
|
|
||
|
test_perf "$command $args (non-scalar)" "
|
||
|
$command -C git-clone $args
|
||
|
"
|
||
|
}
|
||
|
|
||
|
test_compare_perf git status
|
||
|
test_compare_perf test_commit --append --no-tag A
|
||
|
|
||
|
test_done
|