From da0925973ef38e1ba82dbc19d829fb11677efc74 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Thu, 5 Apr 2012 20:32:42 +0200 Subject: [PATCH] Do not mix test result with progress lines. This makes parsing of the results easier. Fixes bug#1400. * tests/openpgp/defs.inc (progress_cancel, progress_end) (progress_new): New. * tests/openpgp/conventional-mdc.test: Use progress functions * tests/openpgp/conventional.test: Ditto. * tests/openpgp/encrypt-dsa.test: Ditto. * tests/openpgp/encrypt.test: Ditto. * tests/openpgp/sigs.test: Ditto. -- The new output style is now: > MD5 SHA1 RIPEMD160 SHA256 SHA384 SHA512 SHA224 < PASS: sigs.test or if the test fails: > MD5 SHA1 sigs.test: ooops FAIL: sigs.test (cherry picked from commit f1e1387bee286c7434f0462185048872bcdb4484) --- tests/openpgp/conventional-mdc.test | 5 +++-- tests/openpgp/conventional.test | 5 +++-- tests/openpgp/defs.inc | 29 ++++++++++++++++++++++++++++- tests/openpgp/encrypt-dsa.test | 5 +++-- tests/openpgp/encrypt.test | 3 ++- tests/openpgp/sigs.test | 5 +++-- 6 files changed, 42 insertions(+), 10 deletions(-) diff --git a/tests/openpgp/conventional-mdc.test b/tests/openpgp/conventional-mdc.test index a5e5c4e44..15b525fa7 100755 --- a/tests/openpgp/conventional-mdc.test +++ b/tests/openpgp/conventional-mdc.test @@ -12,7 +12,7 @@ #info Checking conventional encryption for ciph in `all_cipher_algos`; do - echo_n "$ciph " + progress "$ciph" for i in 0 1 2 3 9 10 11 19 20 21 22 23 39 40 41 8192 32000 ; do # *BSD's dd can't cope with a count of 0 if test "$i" = "0"; then @@ -27,4 +27,5 @@ for ciph in `all_cipher_algos`; do cmp z y || error "$ciph/$i: mismatch" done done -echo_n "| " + +progress_end diff --git a/tests/openpgp/conventional.test b/tests/openpgp/conventional.test index 1464ee229..5028b2934 100755 --- a/tests/openpgp/conventional.test +++ b/tests/openpgp/conventional.test @@ -18,7 +18,7 @@ for i in plain-2 data-32000 ; do done for a in `all_cipher_algos`; do - echo_n "$a " + progress "$a" for i in plain-1 data-80000 ; do echo "Hier spricht HAL" | $GPG --passphrase-fd 0 \ --cipher-algo $a -c -o x --yes $i @@ -26,4 +26,5 @@ for a in `all_cipher_algos`; do cmp $i y || error "$i: ($a) mismatch" done done -echo_n "| " + +progress_end diff --git a/tests/openpgp/defs.inc b/tests/openpgp/defs.inc index 12e1b808e..b0115498f 100755 --- a/tests/openpgp/defs.inc +++ b/tests/openpgp/defs.inc @@ -42,18 +42,28 @@ LC_MESSAGES= # Internal use. defs_stop_on_error=no defs_error_seen=no +defs_progress_active=no #-------------------------------- #------ utility functions ------- #-------------------------------- +progress_cancel () { + if [ x$defs_progress_active = xyes ]; then + echo + defs_progress_active=no + fi +} + fatal () { + progress_cancel echo "$pgmname: fatal:" $* >&2 echo "$pgmname: fatal:" $* >&5 exit 1; } error () { + progress_cancel echo "$pgmname:" $* >&2 defs_error_seen=yes echo "$pgmname:" $* >&5 @@ -77,6 +87,7 @@ resume_error () { } info () { + progress_cancel echo "$pgmname:" $* >&2 if [ -n "${verbose+set}" ]; then echo "$pgmname:" $* >&5 @@ -87,7 +98,6 @@ linefeed () { echo >&2 } - echo_n_init=no echo_n () { if test "$echo_n_init" = "no"; then @@ -110,6 +120,23 @@ echo_n () { } +progress_end () { + if [ x$defs_progress_active = xyes ]; then + echo "<" + defs_progress_active=no + fi +} + +progress () { + if [ x$defs_progress_active != xyes ]; then + echo_n " > " + defs_progress_active=yes + fi + echo_n "$* " +} + + + #cleanup () { # rm $cleanup_files 2>/dev/null || true # echo "#empty" >./gpg.conf diff --git a/tests/openpgp/encrypt-dsa.test b/tests/openpgp/encrypt-dsa.test index 01fe33aa8..320fbd871 100755 --- a/tests/openpgp/encrypt-dsa.test +++ b/tests/openpgp/encrypt-dsa.test @@ -18,7 +18,7 @@ for i in $plain_files $data_files ; do done for ca in `all_cipher_algos` ; do - echo_n "$ca " + progress "$ca" for i in $plain_files $data_files ; do $GPG $dsa_keyrings --always-trust --cipher-algo $ca -e \ -o x --yes -r "$dsa_usrname2" $i @@ -26,4 +26,5 @@ for ca in `all_cipher_algos` ; do cmp $i y || error "$i: mismatch" done done -echo_n "| " + +progress_end diff --git a/tests/openpgp/encrypt.test b/tests/openpgp/encrypt.test index c50c66c12..5ef5196d8 100755 --- a/tests/openpgp/encrypt.test +++ b/tests/openpgp/encrypt.test @@ -17,6 +17,7 @@ for i in $plain_files $data_files ; do cmp $i y || error "$i: mismatch" done +echo_n " > " for ca in `all_cipher_algos` ; do echo_n "$ca " for i in $plain_files $data_files ; do @@ -25,4 +26,4 @@ for ca in `all_cipher_algos` ; do cmp $i y || error "$i: mismatch" done done -echo_n "| " +echo "<" diff --git a/tests/openpgp/sigs.test b/tests/openpgp/sigs.test index 86b0cdc7b..a4bf76c8b 100755 --- a/tests/openpgp/sigs.test +++ b/tests/openpgp/sigs.test @@ -17,7 +17,7 @@ for i in $plain_files $data_files; do done for da in `all_hash_algos` ; do - echo_n "$da " + progress "$da" # RSA key, so any hash is okay if have_pubkey_algo "RSA"; then @@ -42,4 +42,5 @@ for da in `all_hash_algos` ; do done fi done -echo_n "| " + +progress_end