c32815f903
Also as suggested by Junio, in order to try to catch other MIME problems, test cases from the "8. Examples" section of RFC2047 are added to t5100 testsuite as well. Signed-off-by: Kirill Smelkov <kirr@landau.phys.spbu.ru>
80 lines
1.9 KiB
Bash
Executable File
80 lines
1.9 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2005 Junio C Hamano
|
|
#
|
|
|
|
test_description='git mailinfo and git mailsplit test'
|
|
|
|
. ./test-lib.sh
|
|
|
|
test_expect_success 'split sample box' \
|
|
'git mailsplit -o. ../t5100/sample.mbox >last &&
|
|
last=`cat last` &&
|
|
echo total is $last &&
|
|
test `cat last` = 13'
|
|
|
|
for mail in `echo 00*`
|
|
do
|
|
test_expect_success "mailinfo $mail" \
|
|
"git mailinfo -u msg$mail patch$mail <$mail >info$mail &&
|
|
echo msg &&
|
|
diff ../t5100/msg$mail msg$mail &&
|
|
echo patch &&
|
|
diff ../t5100/patch$mail patch$mail &&
|
|
echo info &&
|
|
diff ../t5100/info$mail info$mail"
|
|
done
|
|
|
|
|
|
test_expect_success 'split box with rfc2047 samples' \
|
|
'mkdir rfc2047 &&
|
|
git mailsplit -orfc2047 "$TEST_DIRECTORY"/t5100/rfc2047-samples.mbox \
|
|
>rfc2047/last &&
|
|
last=`cat rfc2047/last` &&
|
|
echo total is $last &&
|
|
test `cat rfc2047/last` = 11'
|
|
|
|
for mail in `echo rfc2047/00*`
|
|
do
|
|
test_expect_success "mailinfo $mail" '
|
|
git mailinfo -u $mail-msg $mail-patch <$mail >$mail-info &&
|
|
echo msg &&
|
|
test_cmp "$TEST_DIRECTORY"/t5100/empty $mail-msg &&
|
|
echo patch &&
|
|
test_cmp "$TEST_DIRECTORY"/t5100/empty $mail-patch &&
|
|
echo info &&
|
|
test_cmp "$TEST_DIRECTORY"/t5100/rfc2047-info-$(basename $mail) $mail-info
|
|
'
|
|
done
|
|
|
|
test_expect_success 'respect NULs' '
|
|
|
|
git mailsplit -d3 -o. ../t5100/nul-plain &&
|
|
cmp ../t5100/nul-plain 001 &&
|
|
(cat 001 | git mailinfo msg patch) &&
|
|
test 4 = $(wc -l < patch)
|
|
|
|
'
|
|
|
|
test_expect_success 'Preserve NULs out of MIME encoded message' '
|
|
|
|
git mailsplit -d5 -o. ../t5100/nul-b64.in &&
|
|
cmp ../t5100/nul-b64.in 00001 &&
|
|
git mailinfo msg patch <00001 &&
|
|
cmp ../t5100/nul-b64.expect patch
|
|
|
|
'
|
|
|
|
test_expect_success 'mailinfo on from header without name works' '
|
|
|
|
mkdir info-from &&
|
|
git mailsplit -oinfo-from "$TEST_DIRECTORY"/t5100/info-from.in &&
|
|
test_cmp "$TEST_DIRECTORY"/t5100/info-from.in info-from/0001 &&
|
|
git mailinfo info-from/msg info-from/patch \
|
|
<info-from/0001 >info-from/out &&
|
|
test_cmp "$TEST_DIRECTORY"/t5100/info-from.expect info-from/out
|
|
|
|
'
|
|
|
|
test_done
|