about summary refs log tree commit diff
path: root/third_party/git/t/perf/p0007-write-cache.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/perf/p0007-write-cache.sh')
-rwxr-xr-xthird_party/git/t/perf/p0007-write-cache.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/third_party/git/t/perf/p0007-write-cache.sh b/third_party/git/t/perf/p0007-write-cache.sh
new file mode 100755
index 0000000000..09595264f0
--- /dev/null
+++ b/third_party/git/t/perf/p0007-write-cache.sh
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+test_description="Tests performance of writing the index"
+
+. ./perf-lib.sh
+
+test_perf_default_repo
+
+test_expect_success "setup repo" '
+	if git rev-parse --verify refs/heads/p0006-ballast^{commit}
+	then
+		echo Assuming synthetic repo from many-files.sh
+		git config --local core.sparsecheckout 1
+		cat >.git/info/sparse-checkout <<-EOF
+		/*
+		!ballast/*
+		EOF
+	else
+		echo Assuming non-synthetic repo...
+	fi &&
+	nr_files=$(git ls-files | wc -l)
+'
+
+count=3
+test_perf "write_locked_index $count times ($nr_files files)" "
+	test-tool write-cache $count
+"
+
+test_done