Adjust pinentry mock
The new test Docker image has a newer gnupg which does not behave the same way, handling invalid passwords. This type of error is simulated using an ICP error in the pinentry protocol.
This commit is contained in:
parent
9752d801ae
commit
c8acf77e04
2 changed files with 14 additions and 6 deletions
|
@ -1,12 +1,20 @@
|
|||
#!/bin/bash
|
||||
# This program is a custom mock pinentry program
|
||||
# It always uses whatever password is found in the /tmp directory
|
||||
password="$(cat /tmp/mock-password 2>/dev/null)"
|
||||
# It uses whatever password is found in the /tmp directory
|
||||
# If the password is empty, replies CANCEL causing an error to similate invalid
|
||||
# credentials
|
||||
echo "OK Pleased to meet you"
|
||||
while read -r line; do
|
||||
if [[ $line =~ GETPIN ]]; then
|
||||
echo -n "D "
|
||||
echo "$password"
|
||||
password="$(cat /tmp/mock-password 2>/dev/null)"
|
||||
if [ -n "$password" ]; then
|
||||
echo -n "D "
|
||||
echo "$password"
|
||||
echo "OK";
|
||||
else
|
||||
echo "CANCEL";
|
||||
fi
|
||||
else
|
||||
echo "OK";
|
||||
fi
|
||||
echo "OK";
|
||||
done
|
||||
|
|
|
@ -214,7 +214,7 @@ def test_symmetric_encrypt(
|
|||
if missing_encrypt:
|
||||
assert 'does not exist' in run.err
|
||||
elif bad_phrase:
|
||||
assert 'Invalid passphrase' in run.err
|
||||
assert 'Invalid IPC' in run.err
|
||||
else:
|
||||
assert encrypted_data_valid(
|
||||
runner, gnupg, paths.archive, encrypt_targets)
|
||||
|
|
Loading…
Reference in a new issue