Add a basic test case for git send-email, and fix some real bugs discovered.
authorRyan Anderson <rda@google.com>
Mon, 29 May 2006 19:30:15 +0000 (12:30 -0700)
committerJunio C Hamano <junkio@cox.net>
Tue, 30 May 2006 06:15:37 +0000 (23:15 -0700)
Signed-off-by: Ryan Anderson <rda@google.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
t/t9001-send-email.sh [new file with mode: 0755]

diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh
new file mode 100755 (executable)
index 0000000..276cbac
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+test_description='git-send-email'
+. ./test-lib.sh
+
+PROG='git send-email'
+test_expect_success \
+    'prepare reference tree' \
+    'echo "1A quick brown fox jumps over the" >file &&
+     echo "lazy dog" >>file &&
+     git add file
+     GIT_AUTHOR_NAME="A" git commit -a -m "Initial."'
+
+test_expect_success \
+    'Setup helper tool' \
+    'echo "#!/bin/sh" > fake.sendmail
+     echo "shift" >> fake.sendmail
+     echo "echo \"\$*\" > commandline" >> fake.sendmail
+     echo "cat > msgtxt" >> fake.sendmail
+     chmod +x ./fake.sendmail
+     git add fake.sendmail
+     GIT_AUTHOR_NAME="A" git commit -a -m "Second."'
+
+test_expect_success \
+    'Extract patches and send' \
+    'git format-patch -n HEAD^1
+     git send-email -from="Example <nobody@example.com>" --to=nobody@example.com --smtp-server="$(pwd)/fake.sendmail" ./0001*txt'
+
+test_expect_success \
+    'Verify commandline' \
+    'cline=$(cat commandline)
+     [ "$cline" == "nobody@example.com author@example.com" ]'
+
+test_done