Incidentally, a test for "git notes" implies a test for the whole commit notes machinery. Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx> --- t/t3301-notes.sh | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 63 insertions(+), 0 deletions(-) create mode 100755 t/t3301-notes.sh diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh new file mode 100755 index 0000000..eb50191 --- /dev/null +++ b/t/t3301-notes.sh @@ -0,0 +1,63 @@ +#!/bin/sh +# +# Copyright (c) 2007 Johannes E. Schindelin +# + +test_description='Test commit notes' + +. ./test-lib.sh + +test_expect_success setup ' + : > a1 && + git add a1 && + test_tick && + git commit -m 1st && + : > a2 && + git add a2 && + test_tick && + git commit -m 2nd +' + +cat > fake_editor.sh << EOF +echo "\$MSG" > "\$1" +echo "\$MSG" >& 2 +EOF +chmod a+x fake_editor.sh +VISUAL="$(pwd)"/fake_editor.sh +export VISUAL + + +test_expect_success 'need notes ref' ' + ! MSG=1 git notes edit && + ! MSG=2 git notes show +' + +test_expect_success 'create notes' ' + git config core.notesRef refs/notes/commits && + MSG=b1 git notes edit && +cat .git/new-notes && +test b1 = "$(cat .git/new-notes)" && + test 1 = $(git ls-tree refs/notes/commits | wc -l) && + test b1 = $(git notes show) && + git show HEAD^ && + ! git notes show HEAD^ +' + +cat > expect << EOF +commit 268048bfb8a1fb38e703baceb8ab235421bf80c5 +Author: A U Thor <author@xxxxxxxxxxx> +Date: Thu Apr 7 15:14:13 2005 -0700 + + 2nd + +Notes: + b1 +EOF + +test_expect_success 'show notes' ' + ! (git cat-file commit HEAD | grep b1) && + git log -1 > output && + git diff expect output +' + +test_done -- 1.5.3.rc1.2718.gd2dc9-dirty - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html