diff options
Diffstat (limited to '')
-rw-r--r-- | tests/sm-sign+verify | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/tests/sm-sign+verify b/tests/sm-sign+verify new file mode 100644 index 0000000..1c3ae7d --- /dev/null +++ b/tests/sm-sign+verify @@ -0,0 +1,73 @@ +# sm-sign+verify +# +# Creating a signature and verifying it +# Requirements: a plain file "text-1.txt" + +srcdir = getenv srcdir +plaintext = let $srcdir/text-1.txt + +in = openfile $plaintext +out = createfile msg.sig +in2 = openfile msg.sig +out2 = createfile msg.unsig + +pipeserver $GPGSM +send INPUT FD=$in +expect-ok +send OUTPUT FD=$out +expect-ok +send SIGN +expect-ok + +send RESET +expect-ok +send INPUT FD=$in2 +expect-ok +send OUTPUT FD=$out2 +expect-ok +goodsig = count-status GOODSIG +trusted = count-status TRUST_FULLY +send VERIFY +expect-ok +echo goodsig=$goodsig trusted=$trusted +fail-if !$goodsig +fail-if !$trusted +send BYE +expect-ok + +# Unset variables so that the files get closed. +in = +out = +in2 = +out2= + +cmpfiles $plaintext msg.unsig +fail-if !$? + +# Lets check it again with a new server instance, this time we keep +# the server running to check whether the entire message has been +# output after the VERIFY. +in = openfile msg.sig +out = createfile msg.unsig +pipeserver $GPGSM +send INPUT FD=$in +expect-ok +send OUTPUT FD=$out +expect-ok +goodsig = count-status GOODSIG +trusted = count-status TRUST_FULLY +send VERIFY +expect-ok +echo goodsig=$goodsig trusted=$trusted +fail-if !$goodsig +fail-if !$trusted + +cmpfiles $plaintext msg.unsig +fail-if !$? + +send BYE +expect-ok + + +quit + |