Merge branch 'mk/complete-tcsh'
[gitweb.git] / t / t9001-send-email.sh
index 89fcedaa33728d57efdd494b0bc8f372fc7dc7ae..97d6f4c7de57c54adfd5fed6401dbd168b5f3064 100755 (executable)
@@ -191,17 +191,44 @@ test_expect_success $PREREQ 'Show all headers' '
 
 test_expect_success $PREREQ 'Prompting works' '
        clean_fake_sendmail &&
-       (echo "Example <from@example.com>"
-        echo "to@example.com"
+       (echo "to@example.com"
         echo ""
        ) | GIT_SEND_EMAIL_NOTTY=1 git send-email \
                --smtp-server="$(pwd)/fake.sendmail" \
                $patches \
                2>errors &&
-               grep "^From: Example <from@example.com>\$" msgtxt1 &&
+               grep "^From: A U Thor <author@example.com>\$" msgtxt1 &&
                grep "^To: to@example.com\$" msgtxt1
 '
 
+test_expect_success $PREREQ,AUTOIDENT 'implicit ident is allowed' '
+       clean_fake_sendmail &&
+       (sane_unset GIT_AUTHOR_NAME &&
+       sane_unset GIT_AUTHOR_EMAIL &&
+       sane_unset GIT_COMMITTER_NAME &&
+       sane_unset GIT_COMMITTER_EMAIL &&
+       GIT_SEND_EMAIL_NOTTY=1 git send-email \
+               --smtp-server="$(pwd)/fake.sendmail" \
+               --to=to@example.com \
+               $patches </dev/null 2>errors
+       )
+'
+
+test_expect_success $PREREQ,!AUTOIDENT 'broken implicit ident aborts send-email' '
+       clean_fake_sendmail &&
+       (sane_unset GIT_AUTHOR_NAME &&
+       sane_unset GIT_AUTHOR_EMAIL &&
+       sane_unset GIT_COMMITTER_NAME &&
+       sane_unset GIT_COMMITTER_EMAIL &&
+       GIT_SEND_EMAIL_NOTTY=1 && export GIT_SEND_EMAIL_NOTTY &&
+       test_must_fail git send-email \
+               --smtp-server="$(pwd)/fake.sendmail" \
+               --to=to@example.com \
+               $patches </dev/null 2>errors &&
+       test_i18ngrep "tell me who you are" errors
+       )
+'
+
 test_expect_success $PREREQ 'tocmd works' '
        clean_fake_sendmail &&
        cp $patches tocmd.patch &&
@@ -1142,6 +1169,23 @@ Dieser deutsche Text enthält einen Umlaut!
 EOF
 '
 
+test_expect_success $PREREQ 'setup expect' '
+cat >expected <<EOF
+Subject: subject goes here
+EOF
+'
+
+test_expect_success $PREREQ 'ASCII subject is not RFC2047 quoted' '
+       clean_fake_sendmail &&
+       echo bogus |
+       git send-email --from=author@example.com --to=nobody@example.com \
+                       --smtp-server="$(pwd)/fake.sendmail" \
+                       --8bit-encoding=UTF-8 \
+                       email-using-8bit >stdout &&
+       grep "Subject" msgtxt1 >actual &&
+       test_cmp expected actual
+'
+
 test_expect_success $PREREQ 'setup expect' '
 cat >content-type-decl <<EOF
 MIME-Version: 1.0