summaryrefslogtreecommitdiffstats
path: root/t/perf/p1400-update-ref.sh
blob: a75969cbb1571ba5da46438c94397ee2130b9be9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/bin/sh

test_description="Tests performance of update-ref"

. ./perf-lib.sh

test_perf_fresh_repo

test_expect_success "setup" '
	test_commit PRE &&
	test_commit POST &&
	for i in $(test_seq 5000)
	do
		printf "start\ncreate refs/heads/%d PRE\ncommit\n" $i &&
		printf "start\nupdate refs/heads/%d POST PRE\ncommit\n" $i &&
		printf "start\ndelete refs/heads/%d POST\ncommit\n" $i || return 1
	done >instructions
'

test_perf "update-ref" '
	for i in $(test_seq 1000)
	do
		git update-ref refs/heads/branch PRE &&
		git update-ref refs/heads/branch POST PRE &&
		git update-ref -d refs/heads/branch || return 1
	done
'

test_perf "update-ref --stdin" '
	git update-ref --stdin <instructions >/dev/null
'

test_done