1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-10-29 19:48:43 +01:00
gnupg/tests/fake-pinentries/fake-pinentry.py
Daniel Kahn Gillmor 3248182d1b tests/fake-pinentries: fake pinentries for downstream developers.
* tests/fake-pinentries/README.txt and
  tests/fake-pinentries/fake-pinentry.{sh,py,pl,php}}: New public
  domain (CC0) files to encourage better test suite practices from
  downstream developers.
* tests/fake-pinentries/COPYING (new): a copy of
  https://creativecommons.org/publicdomain/zero/1.0/legalcode.txt

Signed-off-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
2016-09-15 10:28:23 +02:00

31 lines
938 B
Python
Executable File

#!/usr/bin/env python
# Use this for your test suites when a python interpreter is available.
#
# The encrypted keys in your test suite that you expect to work must
# be locked with a passphrase of "passphrase"
#
# Author: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
#
# License: Creative Commons Zero ("Public Domain Dedication") --
# Anyone may reuse it, modify it, redistribute it for any purpose.
import sys, os
# turn off buffering:
sys.stdin = os.fdopen(sys.stdin.fileno(), 'r', 0)
sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
print("OK This is only for test suites, and should never be used in production")
while True:
ln = sys.stdin.readline()
if (ln == ''):
break
ln = ln.lower()
if (ln.strip() == '') or (ln.startswith('#')):
continue
if (ln.startswith('getpin')):
sys.stdout.write('D passphrase\n')
sys.stdout.write('OK\n')
if (ln.startswith('bye')):
break