summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorToon Claes <toon@iotcl.com>2025-08-05 11:33:57 +0200
committerJunio C Hamano <gitster@pobox.com>2025-08-28 16:44:58 -0700
commit97d5301c54152d91a4e47449f759567f83140d4f (patch)
treeeb3cd965cb3501ab15d1116507d2e45ea2150f79
parentlast-modified: new subcommand to show when files were last modified (diff)
downloadgit-97d5301c54152d91a4e47449f759567f83140d4f.tar.gz
git-97d5301c54152d91a4e47449f759567f83140d4f.zip
t/perf: add last-modified perf script
This just runs some simple last-modified commands. We already test correctness in the regular suite, so this is just about finding performance regressions from one version to another. Based-on-patch-by: Jeff King <peff@peff.net> Signed-off-by: Toon Claes <toon@iotcl.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--t/meson.build1
-rwxr-xr-xt/perf/p8020-last-modified.sh22
2 files changed, 23 insertions, 0 deletions
diff --git a/t/meson.build b/t/meson.build
index 904455e3ab..b74125b047 100644
--- a/t/meson.build
+++ b/t/meson.build
@@ -1155,6 +1155,7 @@ benchmarks = [
'perf/p7820-grep-engines.sh',
'perf/p7821-grep-engines-fixed.sh',
'perf/p7822-grep-perl-character.sh',
+ 'perf/p8020-last-modified.sh',
'perf/p9210-scalar.sh',
'perf/p9300-fast-import-export.sh',
]
diff --git a/t/perf/p8020-last-modified.sh b/t/perf/p8020-last-modified.sh
new file mode 100755
index 0000000000..cb1f98d3db
--- /dev/null
+++ b/t/perf/p8020-last-modified.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+test_description='last-modified perf tests'
+. ./perf-lib.sh
+
+test_perf_default_repo
+
+test_perf 'top-level last-modified' '
+ git last-modified HEAD
+'
+
+test_perf 'top-level recursive last-modified' '
+ git last-modified -r HEAD
+'
+
+test_perf 'subdir last-modified' '
+ git ls-tree -d HEAD >subtrees &&
+ path="$(head -n 1 subtrees | cut -f2)" &&
+ git last-modified -r HEAD -- "$path"
+'
+
+test_done