From: Junio C Hamano Date: Fri, 07 Nov 2014 17:48:00 GMT Subject: Re: [PATCHv3 2/5] t3301: Verify that 'git notes' removes empty notes by default Message-ID: In-Reply-To: <1415351961-31567-3-git-send-email-johan@herland.net> Johan Herland writes: > Add test cases documenting the current behavior when trying to > add/append/edit empty notes. This is in preparation for adding > --allow-empty; to allow empty notes to be stored. > > Improved-by: Eric Sunshine > Improved-by: Junio C Hamano > Signed-off-by: Johan Herland > --- > t/t3301-notes.sh | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh > index cfd67ff..33f0558 100755 > --- a/t/t3301-notes.sh > +++ b/t/t3301-notes.sh > @@ -1239,4 +1239,31 @@ test_expect_success 'git notes get-ref (--ref)' ' > test "$(GIT_NOTES_REF=refs/notes/bar git notes --ref=baz get-ref)" = "refs/notes/baz" > ' > > +test_expect_success 'setup testing of empty notes' ' > + git config --unset core.notesRef && Use "test_unconfig" instead? If the previous test failed (or a different topic that touches this same script is merged to change what the previous test leaves), this configuration variable may not be set, and "config --unset" may fail. > + test_commit 16th && > + empty_blob=$(git hash-object -w /dev/null) > +' > + > +while read cmd > +do > + test_expect_success "'git notes $cmd' removes empty note" " > + test_might_fail git notes remove HEAD && > + MSG= git notes $cmd && > + test_must_fail git notes list HEAD > + " > +done <<\EOF > +add > +add -F /dev/null > +add -m "" > +add -c "$empty_blob" > +add -C "$empty_blob" > +append > +append -F /dev/null > +append -m "" > +append -c "$empty_blob" > +append -C "$empty_blob" > +edit > +EOF > + > test_done