t/test-lib-functions.sh: implement `test_trace2_data` helper
Introduce a helper function which looks for a specific (category, key, value) tuple in the output of a trace2 event stream. We will use this function in a future patch to ensure that the expected number of objects are reused from an expected number of packs. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Taylor Blau committed
Dec 14, 2023 at 17:24 UTC
3bea0c0611f1539b552c8255cffbe27932d0582f
1 file changed
+14
t/test-lib-functions.sh
+14
@@ -1874,6 +1874,20 @@ test_region () {
1874
return 0
1875
}
1876
1877
+# Check that the given data fragment was included as part of the
1878
+# trace2-format trace on stdin.
1879
+#
1880
+# test_trace2_data <category> <key> <value>
1881
+#
1882
+# For example, to look for trace2_data_intmax("pack-objects", repo,
1883
+# "reused", N) in an invocation of "git pack-objects", run:
1884
+#
1885
+# GIT_TRACE2_EVENT="$(pwd)/trace.txt" git pack-objects ... &&
1886
+# test_trace2_data pack-objects reused N <trace2.txt
1887
+test_trace2_data () {
1888
+ grep -e '"category":"'"$1"'","key":"'"$2"'","value":"'"$3"'"'
1889
+}
1890
+
1891
# Given a GIT_TRACE2_EVENT log over stdin, writes to stdout a list of URLs
1892
# sent to git-remote-https child processes.
1893
test_remote_https_urls() {