diff options
Diffstat (limited to 't')
-rwxr-xr-x | t/t3301-notes.sh | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh index f49879e034..e820a6bc70 100755 --- a/t/t3301-notes.sh +++ b/t/t3301-notes.sh @@ -455,6 +455,26 @@ test_expect_success 'removing is atomic' ' test "$before" = "$after" ' +test_expect_success 'removing with --ignore-missing' ' + before=$(git rev-parse --verify refs/notes/commits) && + test_when_finished "git update-ref refs/notes/commits $before" && + + # We have only two -- add another and make sure it stays + git notes add -m "extra" && + git notes list HEAD >after-removal-expect && + git notes remove --ignore-missing HEAD^^ HEAD^^^ HEAD^ && + git notes list | sed -e "s/ .*//" >actual && + test_cmp after-removal-expect actual +' + +test_expect_success 'removing with --ignore-missing but bogus ref' ' + before=$(git rev-parse --verify refs/notes/commits) && + test_when_finished "git update-ref refs/notes/commits $before" && + test_must_fail git notes remove --ignore-missing HEAD^^ HEAD^^^ NO-SUCH-COMMIT && + after=$(git rev-parse --verify refs/notes/commits) && + test "$before" = "$after" +' + test_expect_success 'list notes with "git notes list"' ' git notes list > output && test_cmp expect output |