test-patchbomb
208 lines
| 6.2 KiB
| text/plain
|
TextLexer
/ tests / test-patchbomb
Bryan O'Sullivan
|
r4420 | #!/bin/sh | ||
Patrick Mezard
|
r5753 | fixheaders() | ||
{ | ||||
sed -e 's/\(Message-Id:.*@\).*/\1/' \ | ||||
-e 's/\(In-Reply-To:.*@\).*/\1/' \ | ||||
Benoit Allard
|
r7413 | -e 's/\(References:.*@\).*/\1/' \ | ||
Henrik Stuart
|
r8160 | -e 's/\(User-Agent:.*\)\/.*/\1/' \ | ||
Patrick Mezard
|
r5753 | -e 's/===.*/===/' | ||
} | ||||
Bryan O'Sullivan
|
r4420 | echo "[extensions]" >> $HGRCPATH | ||
echo "patchbomb=" >> $HGRCPATH | ||||
Patrick Mezard
|
r5753 | hg init t | ||
cd t | ||||
Bryan O'Sullivan
|
r4420 | echo a > a | ||
hg commit -Ama -d '1 0' | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -r tip | \ | ||
Patrick Mezard
|
r5753 | fixheaders | ||
Bryan O'Sullivan
|
r4420 | |||
echo b > b | ||||
hg commit -Amb -d '2 0' | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:2' -n -f quux -t foo -c bar -s test -r 0:tip | \ | ||
Patrick Mezard
|
r5753 | fixheaders | ||
Bryan O'Sullivan
|
r4565 | |||
Thomas Arendsen Hein
|
r4567 | hg email -m test.mbox -f quux -t foo -c bar -s test 0:tip | ||
Patrick Mezard
|
r5753 | |||
cd .. | ||||
hg clone -q t t2 | ||||
cd t2 | ||||
echo c > c | ||||
hg commit -Amc -d '3 0' | ||||
cat > description <<EOF | ||||
a multiline | ||||
description | ||||
EOF | ||||
Peter Arrenbrecht
|
r7357 | echo "% test bundle and description" | ||
Patrick Mezard
|
r5753 | hg email --date '1970-1-1 0:3' -n -f quux -t foo \ | ||
-c bar -s test -r tip -b --desc description | \ | ||||
fixheaders | ||||
Peter Arrenbrecht
|
r7357 | echo "% utf-8 patch" | ||
Patrick Mezard
|
r7265 | python -c 'fp = open("utf", "wb"); fp.write("h\xC3\xB6mma!\n"); fp.close();' | ||
Christian Ebert
|
r7193 | hg commit -A -d '4 0' -m 'charset=utf-8; content-transfer-encoding: base64' | ||
Peter Arrenbrecht
|
r7357 | echo "% no mime encoding for email --test" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -n | \ | ||
fixheaders > mailtest | ||||
Peter Arrenbrecht
|
r7357 | echo "% md5sum of 8-bit output" | ||
Christian Ebert
|
r7193 | $TESTDIR/md5sum.py mailtest | ||
rm mailtest | ||||
Rocco Rutte
|
r8332 | echo "% mime encoded mbox (base64)" | ||
hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox | ||||
cat mbox | fixheaders | ||||
rm mbox | ||||
echo "% mime encoded mbox (quoted-printable)" | ||||
python -c 'fp = open("qp", "wb"); fp.write("%s\nfoo\n\nbar\n" % \ | ||||
("x" * 1024)); fp.close();' | ||||
Rocco Rutte
|
r8351 | hg commit -A -d '4 0' -m \ | ||
'charset=utf-8; content-transfer-encoding: quoted-printable' | ||||
Rocco Rutte
|
r8332 | |||
echo "% no mime encoding for email --test" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -n | \ | ||
fixheaders > mailtest | ||||
Rocco Rutte
|
r8332 | echo "% md5sum of qp output" | ||
$TESTDIR/md5sum.py mailtest | ||||
rm mailtest | ||||
echo "% mime encoded mbox (quoted-printable)" | ||||
Patrick Mezard
|
r7265 | hg email --date '1970-1-1 0:4' -f quux -t foo -c bar -r tip -m mbox | ||
Christian Ebert
|
r7193 | cat mbox | fixheaders | ||
rm mbox | ||||
Peter Arrenbrecht
|
r7357 | echo "% iso-8859-1 patch" | ||
Patrick Mezard
|
r7265 | python -c 'fp = open("isolatin", "wb"); fp.write("h\xF6mma!\n"); fp.close();' | ||
Christian Ebert
|
r7193 | hg commit -A -d '5 0' -m 'charset=us-ascii; content-transfer-encoding: 8bit' | ||
Peter Arrenbrecht
|
r7357 | echo "% fake ascii mbox" | ||
Patrick Mezard
|
r7265 | hg email --date '1970-1-1 0:5' -f quux -t foo -c bar -r tip -m mbox | ||
Christian Ebert
|
r7193 | fixheaders < mbox > mboxfix | ||
Peter Arrenbrecht
|
r7357 | echo "% md5sum of 8-bit output" | ||
Christian Ebert
|
r7193 | $TESTDIR/md5sum.py mboxfix | ||
Peter Arrenbrecht
|
r7358 | |||
echo "% test diffstat for single patch" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -d -y -r 2 | \ | ||
Peter Arrenbrecht
|
r7358 | fixheaders | ||
echo "% test diffstat for multiple patches" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -d -y \ | ||
-r 0:1 | fixheaders | ||||
Peter Arrenbrecht
|
r7358 | |||
echo "% test inline for single patch" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 2 | \ | ||
Peter Arrenbrecht
|
r7358 | fixheaders | ||
Rocco Rutte
|
r8332 | echo "% test inline for single patch (quoted-printable)" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 4 | \ | ||
Rocco Rutte
|
r8332 | fixheaders | ||
Peter Arrenbrecht
|
r7358 | echo "% test inline for multiple patches" | ||
Rocco Rutte
|
r8332 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i \ | ||
-r 0:1 -r 4 | fixheaders | ||||
Peter Arrenbrecht
|
r7358 | |||
echo "% test attach for single patch" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a -r 2 | \ | ||
Peter Arrenbrecht
|
r7358 | fixheaders | ||
Rocco Rutte
|
r8332 | echo "% test attach for single patch (quoted-printable)" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a -r 4 | \ | ||
Rocco Rutte
|
r8332 | fixheaders | ||
Peter Arrenbrecht
|
r7358 | echo "% test attach for multiple patches" | ||
Rocco Rutte
|
r8332 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -a \ | ||
-r 0:1 -r 4 | fixheaders | ||||
Peter Arrenbrecht
|
r7358 | |||
Chris Winter
|
r7360 | echo "% test intro for single patch" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test \ | ||
-r 2 | fixheaders | ||||
Chris Winter
|
r7360 | |||
Cédric Duval
|
r10734 | echo "% test --desc without --intro for a single patch" | ||
echo foo > intro.text | ||||
hg email --date '1970-1-1 0:1' -n --desc intro.text -f quux -t foo -c bar \ | ||||
-s test -r 2 | fixheaders | ||||
Chris Winter
|
r7360 | echo "% test intro for multiple patches" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n --intro -f quux -t foo -c bar -s test \ | ||
-r 0:1 | fixheaders | ||||
Chris Winter
|
r7360 | |||
Cédric Duval
|
r11150 | echo "% test reply-to via config" | ||
hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -r 2 \ | ||||
--config patchbomb.reply-to='baz@example.com' | fixheaders | ||||
echo "% test reply-to via command line" | ||||
hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -r 2 \ | ||||
--reply-to baz --reply-to fred | fixheaders | ||||
Peter Arrenbrecht
|
r7358 | echo "% tagging csets" | ||
hg tag -r0 zero zero.foo | ||||
hg tag -r1 one one.patch | ||||
hg tag -r2 two two.diff | ||||
echo "% test inline for single named patch" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 2 | \ | ||
Peter Arrenbrecht
|
r7358 | fixheaders | ||
echo "% test inline for multiple named/unnamed patches" | ||||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar -s test -i -r 0:1 | \ | ||
Peter Arrenbrecht
|
r7358 | fixheaders | ||
Henrik Stuart <henrik.stuart at edlund.dk>
|
r8025 | echo "% test inreplyto" | ||
Rocco Rutte
|
r8351 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ | ||
-r tip | fixheaders | ||||
Cédric Duval
|
r8514 | |||
hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ | ||||
-r 0:1 | fixheaders | ||||
Nicolas Dumazet
|
r9346 | |||
Alexander Solovyov
|
r9612 | hg email --date '1970-1-1 0:1' -n -f quux -t foo -c bar --in-reply-to baz \ | ||
-s test -r 0:1 | fixheaders | ||||
Nicolas Dumazet
|
r9346 | echo "% test single flag for single patch" | ||
hg email --date '1970-1-1 0:1' -n --flag fooFlag -f quux -t foo -c bar -s test \ | ||||
-r 2 | fixheaders | ||||
echo "% test single flag for multiple patches" | ||||
hg email --date '1970-1-1 0:1' -n --flag fooFlag -f quux -t foo -c bar -s test \ | ||||
-r 0:1 | fixheaders | ||||
echo "% test mutiple flags for single patch" | ||||
hg email --date '1970-1-1 0:1' -n --flag fooFlag --flag barFlag -f quux -t foo \ | ||||
-c bar -s test -r 2 | fixheaders | ||||
echo "% test multiple flags for multiple patches" | ||||
hg email --date '1970-1-1 0:1' -n --flag fooFlag --flag barFlag -f quux -t foo \ | ||||
-c bar -s test -r 0:1 | fixheaders | ||||
Marti Raudsepp
|
r9715 | |||
Marti Raudsepp
|
r9947 | echo "% test multi-address parsing" | ||
hg email --date '1980-1-1 0:1' -m tmp.mbox -f quux -t 'spam<spam><eggs>' \ | ||||
-t toast -c 'foo,bar@example.com' -c '"A, B <>" <a@example.com>' -s test -r 0 \ | ||||
--config email.bcc='"Quux, A." <quux>' | ||||
cat tmp.mbox | fixheaders | ||||
Marti Raudsepp
|
r9715 | echo "% test multi-byte domain parsing" | ||
Jim Hague
|
r10253 | UUML=`python -c 'import sys; sys.stdout.write("\374")'` | ||
Benoit Boissinot
|
r9800 | HGENCODING=iso-8859-1 | ||
export HGENCODING | ||||
Marti Raudsepp
|
r9715 | hg email --date '1980-1-1 0:1' -m tmp.mbox -f quux -t "bar@${UUML}nicode.com" \ | ||
-s test -r 0 | ||||
cat tmp.mbox | fixheaders | ||||
Sune Foldager
|
r10018 | |||
Sune Foldager
|
r10022 | echo "% test outgoing" | ||
Sune Foldager
|
r10018 | hg up 1 | ||
hg branch test | ||||
echo d > d | ||||
hg add d | ||||
hg ci -md -d '4 0' | ||||
Sune Foldager
|
r10022 | hg email --date '1980-1-1 0:1' -n -t foo -s test -o ../t | fixheaders | ||
echo "% dest#branch URIs" | ||||
Sune Foldager
|
r10018 | hg email --date '1980-1-1 0:1' -n -t foo -s test -o ../t#test | fixheaders | ||