testsuite: reorg.

This commit is contained in:
Ole Tange 2012-12-28 21:30:30 +01:00
parent 40c2fcc61a
commit 2c641b47d0
16 changed files with 409 additions and 393 deletions

View file

@ -2,44 +2,146 @@
cat <<'EOF' | parallel -j0 -k cat <<'EOF' | parallel -j0 -k
echo "### Test --basenamereplace" echo "### Test --basenamereplace"
parallel -j1 -k -X --basenamereplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --basenamereplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --basenamereplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --basenamereplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test --bnr" echo "### Test --bnr"
parallel -j1 -k -X --bnr FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --bnr FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --bnr FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --bnr FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test --extensionreplace" echo "### Test --extensionreplace"
parallel -j1 -k -X --extensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --extensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --extensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --extensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test --er" echo "### Test --er"
parallel -j1 -k -X --er FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --er FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --er FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --er FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test --basenameextensionreplace" echo "### Test --basenameextensionreplace"
parallel -j1 -k -X --basenameextensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --basenameextensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --basenameextensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --basenameextensionreplace FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test --bner" echo "### Test --bner"
parallel -j1 -k -X --bner FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X --bner FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
parallel -k --bner FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b parallel -k --bner FOO echo FOO ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test {/}" echo "### Test {/}"
parallel -j1 -k -X echo {/} ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X echo {/} ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test {/.}" echo "### Test {/.}"
parallel -j1 -k -X echo {/.} ::: /a/b.c a/b.c b.c /a/b a/b b parallel -j1 -k -X echo {/.} ::: /a/b.c a/b.c b.c /a/b a/b b
echo "### Test {#/.}" echo "### Test {#/.}"
parallel -j1 -k -X echo {2/.} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6 parallel -j1 -k -X echo {2/.} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6
echo "### Test {#/}" echo "### Test {#/}"
parallel -j1 -k -X echo {2/} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6 parallel -j1 -k -X echo {2/} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6
echo "### Test {#.}" echo "### Test {#.}"
parallel -j1 -k -X echo {2.} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6 parallel -j1 -k -X echo {2.} ::: /a/number1.c a/number2.c number3.c /a/number4 a/number5 number6
echo "### bug #34241: --pipe should not spawn unneeded processes" echo "### bug #34241: --pipe should not spawn unneeded processes"
echo | parallel -r -j2 -N1 --pipe md5sum -c && echo OK echo | parallel -r -j2 -N1 --pipe md5sum -c && echo OK
echo '### Test of quoting of > bug'
echo '>/dev/null' | parallel echo
echo '### Test of quoting of > bug if line continuation'
(echo '> '; echo '> '; echo '>') | parallel --max-lines 3 echo
echo '### Test of --trim illegal'
stdout parallel --trim fj ::: echo
echo '### Test of eof string on :::'
parallel -k -E ole echo ::: foo ole bar
echo '### Test of ignore-empty string on :::'
parallel -k -r echo ::: foo '' ole bar
echo '### Test of trailing space continuation'
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | xargs -r -L2 echo
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | parallel -kr -L2 echo
parallel -kr -L2 echo ::: foo '' 'ole ' bar quux
echo '### Test of trailing space continuation with -E eof'
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | xargs -r -L2 -E bar echo
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | parallel -kr -L2 -E bar echo
parallel -kr -L2 -E bar echo ::: foo '' 'ole ' bar quux
echo '### Test of --colsep'
echo 'a%c%b' | parallel --colsep % echo {1} {3} {2}
(echo 'a%c%b'; echo a%c%b%d) | parallel -k --colsep % echo {1} {3} {2} {4}
(echo a%c%b; echo d%f%e) | parallel -k --colsep % echo {1} {3} {2}
parallel -k --colsep % echo {1} {3} {2} ::: a%c%b d%f%e
parallel -k --colsep % echo {1} {3} {2} ::: a%c%b
parallel -k --colsep % echo {1} {3} {2} {4} ::: a%c%b a%c%b%d
echo '### Test of tab as colsep'
printf 'def\tabc\njkl\tghi' | parallel -k --colsep '\t' echo {2} {1}
parallel -k -a <(printf 'def\tabc\njkl\tghi') --colsep '\t' echo {2} {1}
echo '### Test of multiple -a plus colsep'
parallel --xapply -k -a <(printf 'def\njkl\n') -a <(printf 'abc\tghi\nmno\tpqr') --colsep '\t' echo {2} {1}
echo '### Test of multiple -a no colsep'
parallel --xapply -k -a <(printf 'ghi\npqr\n') -a <(printf 'abc\tdef\njkl\tmno') echo {2} {1}
echo '### Test of quoting after colsplit'
parallel --colsep % echo {2} {1} ::: '>/dev/null%>/tmp/null'
echo '### Test of --colsep as regexp'
(echo 'a%c%%b'; echo a%c%b%d) | parallel -k --colsep %+ echo {1} {3} {2} {4}
parallel -k --colsep %+ echo {1} {3} {2} {4} ::: a%c%%b a%c%b%d
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --colsep %+ echo {1} {3} {2} {4}
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --colsep %+ echo '"{1}_{3}_{2}_{4}"'
echo '### Test of -C'
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"'
echo '### Test of --trim n'
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --trim n --colsep %+ echo '"{1}_{3}_{2}_{4}"'
parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"' ::: 'a% c %%b' 'a%c% b %d'
echo '### Test of bug: If input is empty string'
(echo ; echo abcbdbebf;echo abc) | parallel -k --colsep b -v echo {1}{2}
echo '### Test bug #34241: --pipe should not spawn unneeded processes'
seq 3 | parallel -j30 --pipe --block-size 10 cat\;echo o
echo '### Test :::: mixed with :::'
echo '### Test :::: < ::: :::'
parallel -k echo {1} {2} {3} :::: <(seq 6 7) ::: 4 5 ::: 1 2 3
echo '### Test :::: < < :::: <'
parallel -k echo {1} {2} {3} :::: <(seq 6 7) <(seq 4 5) :::: <(seq 1 3)
echo '### Test -a :::: < :::: <'
parallel -k -a <(seq 6 7) echo {1} {2} {3} :::: <(seq 4 5) :::: <(seq 1 3)
echo '### Test -a -a :::'
parallel -k -a <(seq 6 7) -a <(seq 4 5) echo {1} {2} {3} ::: 1 2 3
echo '### Test -a - -a :::'
seq 6 7 | parallel -k -a - -a <(seq 4 5) echo {1} {2} {3} ::: 1 2 3
echo '### Test :::: < - :::'
seq 4 5 | parallel -k echo {1} {2} {3} :::: <(seq 6 7) - ::: 1 2 3
echo '### Test -E'
seq 1 100 | parallel -k -E 5 echo :::: - ::: 2 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E one empty'
seq 1 100 | parallel -k -E 3 echo :::: - ::: 2 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E 2 empty'
seq 1 100 | parallel -k -E 3 echo :::: - ::: 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E all empty'
seq 3 100 | parallel -k -E 3 echo :::: - ::: 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test {#}'
seq 1 10 | parallel -k echo {#}
echo '### Test --seqreplace and line too long'
seq 1 100 | stdout parallel -k --seqreplace I echo $(perl -e 'print "I"x130000') \|wc
EOF EOF

View file

@ -1,9 +1,18 @@
#!/bin/bash #!/bin/bash
# Simple jobs taking 100s that can be run in parallel # Simple jobs that never fails
cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -k -L1 # Each should be taking 100s and be possible to run in parallel
echo "### Test Force outside the file handle limit, 2009-02-17 Gave fork error"; # I.e.: No race conditions, no logins
(echo echo Start; seq 1 20000 | perl -pe 's/^/true /'; echo echo end) | parallel -uj 0 cat <<'EOF' | sed -e 's/;$/; /;s/$SERVER1/'$SERVER1'/;s/$SERVER2/'$SERVER2'/' | stdout parallel -j4 -k -L1
echo '### Test if we can deal with output > 4 GB'
echo | niceload --io 10 parallel -q perl -e '"\$a=\"x\"x1000000;for(0..4300){print \$a}"' | md5sum
# echo | parallel -q perl -e '"\$a=\"x\"x1000000;for(0..4300){print \$a}"' | md5sum
echo "### Test Force outside the file handle limit, 2009-02-17 Gave fork error"
(echo echo Start; seq 1 20000 | perl -pe 's/^/true /'; echo echo end) | stdout parallel -uj 0 | grep -v 'processes took|adjusting'
echo '### Test of --retries on unreachable host'
seq 2 | stdout parallel -k --retries 2 -v -S 4.3.2.1,: echo
echo '### Test race condition on 8 CPU (my laptop)'; echo '### Test race condition on 8 CPU (my laptop)';
seq 1 5000000 > /tmp/parallel_test; seq 1 5000000 > /tmp/parallel_test;
@ -44,5 +53,6 @@ echo '### Test last dying print --halt-on-error';
echo '### Test slow arguments generation - https://savannah.gnu.org/bugs/?32834'; echo '### Test slow arguments generation - https://savannah.gnu.org/bugs/?32834';
seq 1 3 | parallel -j1 "sleep 2; echo {}" | parallel -kj2 echo seq 1 3 | parallel -j1 "sleep 2; echo {}" | parallel -kj2 echo
EOF EOF

View file

@ -1,66 +1,2 @@
#!/bin/bash #!/bin/bash
echo '### Test of quoting of > bug'
echo '>/dev/null' | parallel echo
echo '### Test of quoting of > bug if line continuation'
(echo '> '; echo '> '; echo '>') | parallel --max-lines 3 echo
echo '### Test of --trim illegal'
stdout parallel --trim fj ::: echo
echo '### Test of eof string on :::'
parallel -k -E ole echo ::: foo ole bar
echo '### Test of ignore-empty string on :::'
parallel -k -r echo ::: foo '' ole bar
echo '### Test of trailing space continuation'
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | xargs -r -L2 echo
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | parallel -kr -L2 echo
parallel -kr -L2 echo ::: foo '' 'ole ' bar quux
echo '### Test of trailing space continuation with -E eof'
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | xargs -r -L2 -E bar echo
(echo foo; echo '';echo 'ole ';echo bar;echo quux) | parallel -kr -L2 -E bar echo
parallel -kr -L2 -E bar echo ::: foo '' 'ole ' bar quux
echo '### Test of --colsep'
echo 'a%c%b' | parallel --colsep % echo {1} {3} {2}
(echo 'a%c%b'; echo a%c%b%d) | parallel -k --colsep % echo {1} {3} {2} {4}
(echo a%c%b; echo d%f%e) | parallel -k --colsep % echo {1} {3} {2}
parallel -k --colsep % echo {1} {3} {2} ::: a%c%b d%f%e
parallel -k --colsep % echo {1} {3} {2} ::: a%c%b
parallel -k --colsep % echo {1} {3} {2} {4} ::: a%c%b a%c%b%d
echo '### Test of tab as colsep'
printf 'def\tabc\njkl\tghi' | parallel -k --colsep '\t' echo {2} {1}
parallel -k -a <(printf 'def\tabc\njkl\tghi') --colsep '\t' echo {2} {1}
echo '### Test of multiple -a plus colsep'
parallel --xapply -k -a <(printf 'def\njkl\n') -a <(printf 'abc\tghi\nmno\tpqr') --colsep '\t' echo {2} {1}
echo '### Test of multiple -a no colsep'
parallel --xapply -k -a <(printf 'ghi\npqr\n') -a <(printf 'abc\tdef\njkl\tmno') echo {2} {1}
echo '### Test of quoting after colsplit'
parallel --colsep % echo {2} {1} ::: '>/dev/null%>/tmp/null'
echo '### Test of --colsep as regexp'
(echo 'a%c%%b'; echo a%c%b%d) | parallel -k --colsep %+ echo {1} {3} {2} {4}
parallel -k --colsep %+ echo {1} {3} {2} {4} ::: a%c%%b a%c%b%d
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --colsep %+ echo {1} {3} {2} {4}
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --colsep %+ echo '"{1}_{3}_{2}_{4}"'
echo '### Test of -C'
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"'
echo '### Test of --trim n'
(echo 'a% c %%b'; echo a%c% b %d) | parallel -k --trim n --colsep %+ echo '"{1}_{3}_{2}_{4}"'
parallel -k -C %+ echo '"{1}_{3}_{2}_{4}"' ::: 'a% c %%b' 'a%c% b %d'
echo '### Test of bug: If input is empty string'
(echo ; echo abcbdbebf;echo abc) | parallel -k --colsep b -v echo {1}{2}

View file

@ -30,9 +30,3 @@ EOF
chmod 755 '/tmp/she <bang>"' chmod 755 '/tmp/she <bang>"'
seq 1 3 >/tmp/123 seq 1 3 >/tmp/123
'/tmp/she <bang>"' '/tmp/she <bang>"'
echo '### bug #36595: silent loss of input with --pipe and --sshlogin'
seq 10000 | xargs | parallel --pipe -S 10/localhost cat | wc
echo 'bug #36707: --controlmaster eats jobs'
seq 2 | parallel -k --controlmaster --sshlogin localhost echo OK{}

View file

@ -12,11 +12,11 @@ EOF
chmod 755 /tmp/basic--shebang-wrap chmod 755 /tmp/basic--shebang-wrap
/tmp/basic--shebang-wrap arg1 arg2 /tmp/basic--shebang-wrap arg1 arg2
echo "### Same as" echo "### Test basic --shebang-wrap Same as"
parallel /usr/bin/perl /tmp/basic--shebang-wrap ::: arg1 arg2 parallel /usr/bin/perl /tmp/basic--shebang-wrap ::: arg1 arg2
echo "### stdin" echo "### Test basic --shebang-wrap stdin"
(echo arg1; echo arg2) | /tmp/basic--shebang-wrap (echo arg1; echo arg2) | /tmp/basic--shebang-wrap
echo "### Same as" echo "### Test basic --shebang-wrap Same as"
(echo arg1; echo arg2) | parallel /usr/bin/perl /tmp/basic--shebang-wrap (echo arg1; echo arg2) | parallel /usr/bin/perl /tmp/basic--shebang-wrap
rm /tmp/basic--shebang-wrap rm /tmp/basic--shebang-wrap
@ -30,18 +30,18 @@ EOF
chmod 755 /tmp/with-parser--shebang-wrap chmod 755 /tmp/with-parser--shebang-wrap
/tmp/with-parser--shebang-wrap /tmp/in12 /tmp/in45 /tmp/with-parser--shebang-wrap /tmp/in12 /tmp/in45
echo "### Same as" echo "### Test --shebang-wrap with parser options Same as"
parallel -k /usr/bin/perl -p /tmp/with-parser--shebang-wrap ::: /tmp/in12 /tmp/in45 parallel -k /usr/bin/perl -p /tmp/with-parser--shebang-wrap ::: /tmp/in12 /tmp/in45
echo "### stdin" echo "### Test --shebang-wrap with parser options stdin"
(echo /tmp/in12; echo /tmp/in45) | /tmp/with-parser--shebang-wrap (echo /tmp/in12; echo /tmp/in45) | /tmp/with-parser--shebang-wrap
echo "### Same as" echo "### Test --shebang-wrap with parser options Same as"
(echo /tmp/in12; echo /tmp/in45) | parallel -k /usr/bin/perl /tmp/with-parser--shebang-wrap (echo /tmp/in12; echo /tmp/in45) | parallel -k /usr/bin/perl /tmp/with-parser--shebang-wrap
rm /tmp/with-parser--shebang-wrap rm /tmp/with-parser--shebang-wrap
echo "### Test --shebang-wrap --pipe with parser options" echo "### Test --shebang-wrap --pipe with parser options"
cat <<EOF > /tmp/pipe--shebang-wrap cat <<EOF > /tmp/pipe--shebang-wrap
#!/usr/local/bin/parallel --shebang-wrap --pipe /usr/bin/perl -p #!/usr/local/bin/parallel --shebang-wrap -k --pipe /usr/bin/perl -p
print "Shebang from perl with args @ARGV\n"; print "Shebang from perl with args @ARGV\n";
EOF EOF
@ -51,12 +51,12 @@ echo Suboptimal
/tmp/pipe--shebang-wrap :::: /tmp/in12 /tmp/in45 /tmp/pipe--shebang-wrap :::: /tmp/in12 /tmp/in45
echo Optimal echo Optimal
/tmp/pipe--shebang-wrap /tmp/in12 /tmp/in45 /tmp/pipe--shebang-wrap /tmp/in12 /tmp/in45
echo "### Same as" echo "### Test --shebang-wrap --pipe with parser options Same as"
parallel --pipe /usr/bin/perl\ -p /tmp/pipe--shebang-wrap :::: /tmp/in12 /tmp/in45 parallel -k --pipe /usr/bin/perl\ -p /tmp/pipe--shebang-wrap :::: /tmp/in12 /tmp/in45
echo "### stdin" echo "### Test --shebang-wrap --pipe with parser options stdin"
cat /tmp/in12 /tmp/in45 | /tmp/pipe--shebang-wrap cat /tmp/in12 /tmp/in45 | /tmp/pipe--shebang-wrap
echo "### Same as" echo "### Test --shebang-wrap --pipe with parser options Same as"
cat /tmp/in12 /tmp/in45 | parallel --pipe /usr/bin/perl\ -p /tmp/pipe--shebang-wrap cat /tmp/in12 /tmp/in45 | parallel -k --pipe /usr/bin/perl\ -p /tmp/pipe--shebang-wrap
rm /tmp/pipe--shebang-wrap rm /tmp/pipe--shebang-wrap
rm /tmp/in12 rm /tmp/in12

View file

@ -1,15 +1,9 @@
#!/bin/bash #!/bin/bash
cat <<'EOF' | parallel -j0 -vk cat <<'EOF' | parallel -j0 -vk
echo '### Test if we can deal with output > 4 GB' echo '### bug #36595: silent loss of input with --pipe and --sshlogin'
echo | niceload --io 9 -H parallel -q perl -e '"\$a=\"x\"x1000000;for(0..4300){print \$a}"' | md5sum seq 10000 | xargs | parallel --pipe -S 10/localhost cat | wc
echo '### Test {#}' echo 'bug #36707: --controlmaster eats jobs'
seq 1 10 | parallel -k echo {#} seq 2 | parallel -k --controlmaster --sshlogin localhost echo OK{}
echo '### Test --seqreplace and line too long'
seq 1 100 | stdout parallel -k --seqreplace I echo $(perl -e 'print "I"x130000') \|wc
echo '### Test of --retries on unreachable host'
seq 2 | stdout parallel -k --retries 2 -v -S 4.3.2.1,: echo
EOF EOF

View file

@ -1,32 +1,2 @@
#!/bin/bash #!/bin/bash
echo '### Test :::: mixed with :::'
echo '### Test :::: < ::: :::'
parallel -k echo {1} {2} {3} :::: <(seq 6 7) ::: 4 5 ::: 1 2 3
echo '### Test :::: < < :::: <'
parallel -k echo {1} {2} {3} :::: <(seq 6 7) <(seq 4 5) :::: <(seq 1 3)
echo '### Test -a :::: < :::: <'
parallel -k -a <(seq 6 7) echo {1} {2} {3} :::: <(seq 4 5) :::: <(seq 1 3)
echo '### Test -a -a :::'
parallel -k -a <(seq 6 7) -a <(seq 4 5) echo {1} {2} {3} ::: 1 2 3
echo '### Test -a - -a :::'
seq 6 7 | parallel -k -a - -a <(seq 4 5) echo {1} {2} {3} ::: 1 2 3
echo '### Test :::: < - :::'
seq 4 5 | parallel -k echo {1} {2} {3} :::: <(seq 6 7) - ::: 1 2 3
echo '### Test -E'
seq 1 100 | parallel -k -E 5 echo :::: - ::: 2 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E one empty'
seq 1 100 | parallel -k -E 3 echo :::: - ::: 2 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E 2 empty'
seq 1 100 | parallel -k -E 3 echo :::: - ::: 3 4 5 6 7 8 9 10 :::: <(seq 3 11)
echo '### Test -E all empty'
seq 3 100 | parallel -k -E 3 echo :::: - ::: 3 4 5 6 7 8 9 10 :::: <(seq 3 11)

View file

@ -83,18 +83,22 @@ echo '### Test bug https://savannah.gnu.org/bugs/index.php?33352'
# read(STDIN) to take a long time - thus being interrupted by a dead # read(STDIN) to take a long time - thus being interrupted by a dead
# child. # child.
perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | md5sum echo "# md5sum - directly"
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 | perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | md5sum
echo "# parallel | md5sum"
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
$PAR cat | md5sum $PAR cat | md5sum
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 | echo "# --recend ''"
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
$PAR --recend '' cat | md5sum $PAR --recend '' cat | md5sum
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 | echo "# --recend '' --files"
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
$PAR --recend '' --files cat | parallel -Xj1 cat {} ';' rm {} | md5sum $PAR --recend '' --files cat | parallel -Xj1 cat {} ';' rm {} | md5sum
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 | echo "# --recend '' --files --tmpdir"
$PAR --recend '' --files cat | parallel -Xj1 cat {} ';' rm {} | md5sum nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
$PAR --recend '' --files --tmpdir /dev/shm cat | parallel -Xj1 cat {} ';' rm {} | md5sum $PAR --recend '' --files --tmpdir /dev/shm cat | parallel -Xj1 cat {} ';' rm {} | md5sum
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 | echo "# --recend '' --files --halt-on-error"
nice nice perl -e '@x=1 .. 17000; for(1..100) { print "@x\n"}' | pv -qL 1000000 |
$PAR --recend '' --files --halt-on-error 2 cat | parallel -Xj1 cat {} ';' rm {} | md5sum $PAR --recend '' --files --halt-on-error 2 cat | parallel -Xj1 cat {} ';' rm {} | md5sum
echo '### Test of -j filename - non-existent file'; echo '### Test of -j filename - non-existent file';

View file

@ -57,3 +57,211 @@ number2.c
### Test {#.} ### Test {#.}
a/number2 a/number2
### bug #34241: --pipe should not spawn unneeded processes ### bug #34241: --pipe should not spawn unneeded processes
### Test of quoting of > bug
>/dev/null
### Test of quoting of > bug if line continuation
> > >
### Test of --trim illegal
parallel: Error: --trim must be one of: r l rl lr.
### Test of eof string on :::
foo
### Test of ignore-empty string on :::
foo
ole
bar
### Test of trailing space continuation
foo ole bar
quux
foo ole bar
quux
foo ole bar
quux
### Test of trailing space continuation with -E eof
foo ole
foo ole
foo ole
### Test of --colsep
a b c
a b c {4}
a b c d
a b c
d e f
a b c
d e f
a b c
a b c {4}
a b c d
### Test of tab as colsep
abc def
ghi jkl
abc def
ghi jkl
### Test of multiple -a plus colsep
abc def
mno jkl
### Test of multiple -a no colsep
abc def ghi
jkl mno pqr
### Test of quoting after colsplit
>/tmp/null >/dev/null
### Test of --colsep as regexp
a b c {4}
a b c d
a b c {4}
a b c d
a b c {4}
a b c d
a_b_c_{4}
a_b_c_d
### Test of -C
a_b_c_{4}
a_b_c_d
### Test of --trim n
a_b_\ c\ _{4}
a_\ b\ _c_d
a_b_c_{4}
a_b_c_d
### Test of bug: If input is empty string
echo {2}
{2}
echo ac
ac
echo ac
ac
### Test bug #34241: --pipe should not spawn unneeded processes
1
2
3
o
### Test :::: mixed with :::
### Test :::: < ::: :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test :::: < < :::: <
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a :::: < :::: <
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a -a :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a - -a :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test :::: < - :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -E
1 2 3
1 2 4
1 3 3
1 3 4
1 4 3
1 4 4
2 2 3
2 2 4
2 3 3
2 3 4
2 4 3
2 4 4
3 2 3
3 2 4
3 3 3
3 3 4
3 4 3
3 4 4
4 2 3
4 2 4
4 3 3
4 3 4
4 4 3
4 4 4
### Test -E one empty
1 2
2 2
### Test -E 2 empty
1
2
### Test -E all empty
### Test {#}
1
2
3
4
5
6
7
8
9
10
### Test --seqreplace and line too long
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
parallel: Command line too long (260009 >= 131071) at number 9: 10...

View file

@ -1,7 +1,16 @@
parallel: Warning: Only enough filehandles to run 507 jobs in parallel. Raising ulimit -n may help. ### Test if we can deal with output > 4 GB
46a318993dfc8e2afd71ff2bc6f605f1 -
### Test Force outside the file handle limit, 2009-02-17 Gave fork error ### Test Force outside the file handle limit, 2009-02-17 Gave fork error
parallel: Warning: Only enough filehandles to run 507 jobs in parallel. Raising ulimit -n may help.
Start Start
end end
### Test of --retries on unreachable host
ssh: connect to host 4.3.2.1 port 22: Connection timed out
parallel: Warning: Could not figure out number of cpus on 4.3.2.1 (). Using 1.
echo 1
1
echo 2
2
### Test race condition on 8 CPU (my laptop) ### Test race condition on 8 CPU (my laptop)
1 1
2 2

View file

@ -1,71 +0,0 @@
### Test of quoting of > bug
>/dev/null
### Test of quoting of > bug if line continuation
> > >
### Test of --trim illegal
parallel: Error: --trim must be one of: r l rl lr.
### Test of eof string on :::
foo
### Test of ignore-empty string on :::
foo
ole
bar
### Test of trailing space continuation
foo ole bar
quux
foo ole bar
quux
foo ole bar
quux
### Test of trailing space continuation with -E eof
foo ole
foo ole
foo ole
### Test of --colsep
a b c
a b c {4}
a b c d
a b c
d e f
a b c
d e f
a b c
a b c {4}
a b c d
### Test of tab as colsep
abc def
ghi jkl
abc def
ghi jkl
### Test of multiple -a plus colsep
abc def
mno jkl
### Test of multiple -a no colsep
abc def ghi
jkl mno pqr
### Test of quoting after colsplit
>/tmp/null >/dev/null
### Test of --colsep as regexp
a b c {4}
a b c d
a b c {4}
a b c d
a b c {4}
a b c d
a_b_c_{4}
a_b_c_d
### Test of -C
a_b_c_{4}
a_b_c_d
### Test of --trim n
a_b_\ c\ _{4}
a_\ b\ _c_d
a_b_c_{4}
a_b_c_d
### Test of bug: If input is empty string
echo {2}
{2}
echo ac
ac
echo ac
ac

View file

@ -10,8 +10,3 @@ C
A 1 A 1
B 2 B 2
C 3 C 3
### bug #36595: silent loss of input with --pipe and --sshlogin
1 10000 48894
bug #36707: --controlmaster eats jobs
OK1
OK2

View file

@ -1,13 +1,13 @@
### Test basic --shebang-wrap ### Test basic --shebang-wrap
Shebang from perl with args arg1 Shebang from perl with args arg1
Shebang from perl with args arg2 Shebang from perl with args arg2
### Same as ### Test basic --shebang-wrap Same as
Shebang from perl with args arg1 Shebang from perl with args arg1
Shebang from perl with args arg2 Shebang from perl with args arg2
### stdin ### Test basic --shebang-wrap stdin
Shebang from perl with args arg1 Shebang from perl with args arg1
Shebang from perl with args arg2 Shebang from perl with args arg2
### Same as ### Test basic --shebang-wrap Same as
Shebang from perl with args arg1 Shebang from perl with args arg1
Shebang from perl with args arg2 Shebang from perl with args arg2
### Test --shebang-wrap with parser options ### Test --shebang-wrap with parser options
@ -19,7 +19,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### Same as ### Test --shebang-wrap with parser options Same as
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args
@ -28,7 +28,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### stdin ### Test --shebang-wrap with parser options stdin
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args
@ -37,7 +37,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### Same as ### Test --shebang-wrap with parser options Same as
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args
@ -65,7 +65,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### Same as ### Test --shebang-wrap --pipe with parser options Same as
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args
@ -74,7 +74,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### stdin ### Test --shebang-wrap --pipe with parser options stdin
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args
@ -83,7 +83,7 @@ Shebang from perl with args
4 4
Shebang from perl with args Shebang from perl with args
5 5
### Same as ### Test --shebang-wrap --pipe with parser options Same as
Shebang from perl with args Shebang from perl with args
1 1
Shebang from perl with args Shebang from perl with args

View file

@ -1,38 +1,9 @@
echo '### Test if we can deal with output > 4 GB' echo '### bug #36595: silent loss of input with --pipe and --sshlogin'
### Test if we can deal with output > 4 GB ### bug #36595: silent loss of input with --pipe and --sshlogin
echo | niceload --io 9 -H parallel -q perl -e '"\$a=\"x\"x1000000;for(0..4300){print \$a}"' | md5sum seq 10000 | xargs | parallel --pipe -S 10/localhost cat | wc
46a318993dfc8e2afd71ff2bc6f605f1 - 1 10000 48894
echo '### Test {#}' echo 'bug #36707: --controlmaster eats jobs'
### Test {#} bug #36707: --controlmaster eats jobs
seq 1 10 | parallel -k echo {#} seq 2 | parallel -k --controlmaster --sshlogin localhost echo OK{}
1 OK1
2 OK2
3
4
5
6
7
8
9
10
echo '### Test --seqreplace and line too long'
### Test --seqreplace and line too long
seq 1 100 | stdout parallel -k --seqreplace I echo $(perl -e 'print "I"x130000') \|wc
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
1 1 130001
parallel: Command line too long (260009 >= 131071) at number 9: 10...
echo '### Test of --retries on unreachable host'
### Test of --retries on unreachable host
seq 2 | stdout parallel -k --retries 2 -v -S 4.3.2.1,: echo
ssh: connect to host 4.3.2.1 port 22: Connection timed out
parallel: Warning: Could not figure out number of cpus on 4.3.2.1 (). Using 1.
echo 1
1
echo 2
2

View file

@ -1,111 +0,0 @@
### Test :::: mixed with :::
### Test :::: < ::: :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test :::: < < :::: <
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a :::: < :::: <
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a -a :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -a - -a :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test :::: < - :::
6 4 1
6 4 2
6 4 3
6 5 1
6 5 2
6 5 3
7 4 1
7 4 2
7 4 3
7 5 1
7 5 2
7 5 3
### Test -E
1 2 3
1 2 4
1 3 3
1 3 4
1 4 3
1 4 4
2 2 3
2 2 4
2 3 3
2 3 4
2 4 3
2 4 4
3 2 3
3 2 4
3 3 3
3 3 4
3 4 3
3 4 4
4 2 3
4 2 4
4 3 3
4 3 4
4 4 3
4 4 4
### Test -E one empty
1 2
2 2
### Test -E 2 empty
1
2
### Test -E all empty

View file

@ -50,12 +50,17 @@ a b stdout-a stdout-b
a a
b b
### Test bug https://savannah.gnu.org/bugs/index.php?33352 ### Test bug https://savannah.gnu.org/bugs/index.php?33352
# md5sum - directly
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
# parallel | md5sum
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
# --recend ''
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
# --recend '' --files
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
# --recend '' --files --tmpdir
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
350eda13a37912d755c9d733d149bdaf - # --recend '' --files --halt-on-error
350eda13a37912d755c9d733d149bdaf - 350eda13a37912d755c9d733d149bdaf -
### Test of -j filename - non-existent file ### Test of -j filename - non-existent file
Usage: Usage: