mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
tests: Also run all OpenPGP tests using keyrings.
* tests/openpgp/all-tests.scm: Run each test twice, once with public keys stored in a keybox, once with a keyring. * tests/openpgp/defs.scm (create-gpghome): Create a public keyring to make GnuPG use that instead of creating a keybox if '--use-keyring' is given. * tests/openpgp/setup.scm: Fix flag handling and usage. -- This parametrizes the OpenPGP tests. With this change, the test suite is able to detect problems with the keyring store, e.g. like the one fixed in 22739433e98be80e46fe7d01d52a9627c1aebaae. GnuPG-bug-id: 3080 Signed-off-by: Justus Winter <justus@g10code.com>
This commit is contained in:
parent
f4365790da
commit
bc01d62dc5
@ -31,13 +31,28 @@
|
|||||||
(test::scm
|
(test::scm
|
||||||
#f
|
#f
|
||||||
(path-join "tests" "openpgp" "setup.scm")
|
(path-join "tests" "openpgp" "setup.scm")
|
||||||
(in-srcdir "tests" "openpgp" "setup.scm")
|
(in-srcdir "tests" "openpgp" "setup.scm"))))
|
||||||
"--" "tests" "gpg")))
|
|
||||||
|
|
||||||
(map (lambda (name)
|
(define setup-use-keyring
|
||||||
(test::scm setup
|
(make-environment-cache
|
||||||
(path-join "tests" "openpgp" name)
|
(test::scm
|
||||||
(in-srcdir "tests" "openpgp" name)))
|
#f
|
||||||
(parse-makefile-expand (in-srcdir "tests" "openpgp" "Makefile.am")
|
(string-append "<use-keyring>" (path-join "tests" "openpgp" "setup.scm"))
|
||||||
(lambda (filename port key) (parse-makefile port key))
|
(in-srcdir "tests" "openpgp" "setup.scm")
|
||||||
"XTESTS")))
|
"--use-keyring")))
|
||||||
|
|
||||||
|
(define all-tests
|
||||||
|
(parse-makefile-expand (in-srcdir "tests" "openpgp" "Makefile.am")
|
||||||
|
(lambda (filename port key) (parse-makefile port key))
|
||||||
|
"XTESTS"))
|
||||||
|
(append
|
||||||
|
(map (lambda (name)
|
||||||
|
(test::scm setup
|
||||||
|
(path-join "tests" "openpgp" name)
|
||||||
|
(in-srcdir "tests" "openpgp" name))) all-tests)
|
||||||
|
(map (lambda (name)
|
||||||
|
(test::scm setup-use-keyring
|
||||||
|
(string-append "<use-keyring>"
|
||||||
|
(path-join "tests" "openpgp" name))
|
||||||
|
(in-srcdir "tests" "openpgp" name)
|
||||||
|
"--use-keyring")) all-tests)))
|
||||||
|
@ -328,6 +328,10 @@
|
|||||||
(make-test-data "random_seed" 600)
|
(make-test-data "random_seed" 600)
|
||||||
|
|
||||||
(log "Creating configuration files")
|
(log "Creating configuration files")
|
||||||
|
|
||||||
|
(if (flag "--use-keyring" *args*)
|
||||||
|
(create-file "pubring.gpg"))
|
||||||
|
|
||||||
(create-file "gpg.conf"
|
(create-file "gpg.conf"
|
||||||
"no-greeting"
|
"no-greeting"
|
||||||
"no-secmem-warning"
|
"no-secmem-warning"
|
||||||
|
@ -19,8 +19,9 @@
|
|||||||
|
|
||||||
(load (in-srcdir "tests" "openpgp" "defs.scm"))
|
(load (in-srcdir "tests" "openpgp" "defs.scm"))
|
||||||
|
|
||||||
(unless (member "--create-tarball" *args*)
|
(define cache (flag "--create-tarball" *args*))
|
||||||
(fail "Usage: setup.scm --create-tarball <file>"))
|
(unless (and cache (= 1 (length cache)))
|
||||||
|
(fail "Usage: setup.scm --create-tarball <file> [--use-keyring]"))
|
||||||
|
|
||||||
(when (> (*verbose*) 0)
|
(when (> (*verbose*) 0)
|
||||||
(define (pad symbol length)
|
(define (pad symbol length)
|
||||||
@ -45,4 +46,4 @@
|
|||||||
(start-agent)
|
(start-agent)
|
||||||
(create-legacy-gpghome)
|
(create-legacy-gpghome)
|
||||||
(stop-agent)
|
(stop-agent)
|
||||||
(call-check `(,(tool 'gpgtar) --create --output ,(cadr *args*) "."))
|
(call-check `(,(tool 'gpgtar) --create --output ,(car cache) "."))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user