@@ -171,13 +171,16 @@ INPUT_END
}
verify_concatenated_notes () {
- git log | grep "^ " > output &&
+ git log --format="tformat:%B%N" >output &&
i=$number_of_commits &&
while [ $i -gt 0 ]; do
- echo " commit #$i" &&
- echo " first note for commit #$i" &&
- echo " " &&
- echo " second note for commit #$i" &&
+ cat <<-EOF &&
+ commit #$i
+ first note for commit #$i
+
+ second note for commit #$i
+
+ EOF
i=$(($i-1));
done > expect &&
test_cmp expect output
@@ -259,29 +259,31 @@ EOF
INPUT_END
-whitespace=" "
-
cat >expect <<EXPECT_END
- fourth commit
- pre-prefix of note for fourth commit
-$whitespace
- prefix of note for fourth commit
-$whitespace
- third note for fourth commit
- third commit
- prefix of note for third commit
-$whitespace
- third note for third commit
- second commit
- third note for second commit
- first commit
- third note for first commit
+fourth commit
+pre-prefix of note for fourth commit
+
+prefix of note for fourth commit
+
+third note for fourth commit
+
+third commit
+prefix of note for third commit
+
+third note for third commit
+
+second commit
+third note for second commit
+
+first commit
+third note for first commit
+
EXPECT_END
test_expect_success 'add concatenation notes with M command' '
git fast-import <input &&
- GIT_NOTES_REF=refs/notes/test git log | grep "^ " > actual &&
+ GIT_NOTES_REF=refs/notes/test git log --format="tformat:%B%N" >actual &&
test_cmp expect actual
'
These tests care about whether intended notes-related functionality occurred, but they check for the expected result in a brittle way by consulting the default output of `git log` which is intended for human, not machine, consumption. Make the tests more robust by requesting the desired information in a stable machine-consumable format. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> --- t/t3303-notes-subtrees.sh | 13 ++++++++----- t/t9301-fast-import-notes.sh | 36 +++++++++++++++++++----------------- 2 files changed, 27 insertions(+), 22 deletions(-)