cat-file: add remove_timestamp helper

maybe_remove_timestamp() takes arguments, but it would be useful to have a function that reads from stdin and strips the timestamp. This would allow tests to pipe data into a function to remove timestamps, and wouldn't have to always assign a variable. This is especially helpful when the data is multiple lines. Keep maybe_remove_timestamp() the same, but add a remove_timestamp helper that reads from stdin. The tests in the next patch will make use of this. Signed-off-by: John Cai <johncai86@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

John Cai committed Feb 18, 2022 at 18:23 UTC 4cf5d53b62a8e5fce64db97f830e00fa38bd0994
1 file changed +10 -5
t/t1006-cat-file.sh
+10 -5
@@ -105,13 +105,18 @@ strlen () {
105 }
106
107 maybe_remove_timestamp () {
108 - if test -z "$2"; then
109 - echo_without_newline "$1"
110 - else
111 - echo_without_newline "$(printf '%s\n' "$1" | sed -e 's/ [0-9][0-9]* [-+][0-9][0-9][0-9][0-9]$//')"
112 - fi
108 + if test -z "$2"; then
109 + echo_without_newline "$1"
110 + else
111 + echo_without_newline "$(printf '%s\n' "$1" | remove_timestamp)"
112 + fi
113 }
114
115 +remove_timestamp () {
116 + sed -e 's/ [0-9][0-9]* [-+][0-9][0-9][0-9][0-9]$//'
117 +}
118 +
119 +
120 run_tests () {
121 type=$1
122 sha1=$2