about summary refs log tree commit diff
path: root/third_party/git/t/t3307-notes-man.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/t3307-notes-man.sh')
-rwxr-xr-xthird_party/git/t/t3307-notes-man.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/third_party/git/t/t3307-notes-man.sh b/third_party/git/t/t3307-notes-man.sh
new file mode 100755
index 0000000000..1aa366a410
--- /dev/null
+++ b/third_party/git/t/t3307-notes-man.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+test_description='Examples from the git-notes man page
+
+Make sure the manual is not full of lies.'
+
+. ./test-lib.sh
+
+test_expect_success 'setup' '
+	test_commit A &&
+	test_commit B &&
+	test_commit C
+'
+
+test_expect_success 'example 1: notes to add an Acked-by line' '
+	cat <<-\EOF >expect &&
+	    B
+
+	Notes:
+	    Acked-by: A C Ker <acker@example.com>
+	EOF
+	git notes add -m "Acked-by: A C Ker <acker@example.com>" B &&
+	git show -s B^{commit} >log &&
+	tail -n 4 log >actual &&
+	test_cmp expect actual
+'
+
+test_expect_success 'example 2: binary notes' '
+	cp "$TEST_DIRECTORY"/test-binary-1.png . &&
+	git checkout B &&
+	blob=$(git hash-object -w test-binary-1.png) &&
+	git notes --ref=logo add -C "$blob" &&
+	git notes --ref=logo copy B C &&
+	git notes --ref=logo show C >actual &&
+	test_cmp test-binary-1.png actual
+'
+
+test_done