diff --git a/common/all-tests.scm b/common/all-tests.scm index 6cbbcbe67..7ff7d244d 100644 --- a/common/all-tests.scm +++ b/common/all-tests.scm @@ -1,46 +1,49 @@ ;; Copyright (C) 2017 g10 Code GmbH ;; ;; This file is part of GnuPG. ;; ;; GnuPG is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 3 of the License, or ;; (at your option) any later version. ;; ;; GnuPG is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; ;; You should have received a copy of the GNU General Public License ;; along with this program; if not, see . (export all-tests ;; XXX: Currently, the makefile parser does not understand this ;; Makefile.am, so we hardcode the list of tests here. (map (lambda (name) (let ((name-ext (string-append name (getenv "EXEEXT")))) (test::binary #f (path-join "common" name-ext) (path-join (getenv "objdir") "common" name-ext)))) - (list "t-stringhelp" - "t-timestuff" - "t-convert" - "t-percent" - "t-gettime" - "t-sysutils" - "t-sexputil" - "t-session-env" - "t-openpgp-oid" - "t-ssh-utils" - "t-mapstrings" - "t-zb32" - "t-mbox-util" - "t-iobuf" - "t-strlist" - "t-name-value" - "t-ccparray" - "t-recsel" - "t-exechelp" - "t-exectool" - ))) + `("t-stringhelp" + "t-timestuff" + "t-convert" + "t-percent" + "t-gettime" + "t-sysutils" + "t-sexputil" + "t-session-env" + "t-openpgp-oid" + "t-ssh-utils" + "t-mapstrings" + "t-zb32" + "t-mbox-util" + "t-iobuf" + "t-strlist" + "t-name-value" + "t-ccparray" + "t-recsel" + ,@(if *win32* + '("t-w32-reg" + "t-w32-cmdline") + '("t-exechelp" + "t-exectool")) + ))) diff --git a/tests/cms/Makefile.am b/tests/cms/Makefile.am index 44bd1ceab..60fdf0281 100644 --- a/tests/cms/Makefile.am +++ b/tests/cms/Makefile.am @@ -1,116 +1,118 @@ # Makefile.am - For tests/gpgme # Copyright (C) 2016 g10 Code GmbH # # This file is part of GnuPG. # # GnuPG is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # GnuPG is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # Process this file with automake to create Makefile.in # Programs required before we can run these tests. required_pgms = ../../g10/gpg$(EXEEXT) ../../agent/gpg-agent$(EXEEXT) \ ../../tools/gpg-connect-agent$(EXEEXT) \ ../gpgscm/gpgscm$(EXEEXT) AM_CPPFLAGS = -I$(top_srcdir)/common include $(top_srcdir)/am/cmacros.am AM_CFLAGS = +GPGSM = ../../sm/gpgsm + # Note that we need to use /bin/pwd so that we don't get into trouble # if the shell used for inittests would uses an internal version of # pwd which handles symlinks differently. OLD_TESTS_ENVIRONMENT = GNUPGHOME=`/bin/pwd` GPG_AGENT_INFO= LC_ALL=C \ GNUPG_BUILD_ROOT="$(abs_top_builddir)" \ GNUPG_IN_TEST_SUITE=fact \ GPGSM="$(GPGSM)$(EXEEXT)" "$(srcdir)/runtest" TESTS_ENVIRONMENT = LC_ALL=C \ EXEEXT=$(EXEEXT) \ PATH="../gpgscm:$(PATH)" \ abs_top_srcdir="$(abs_top_srcdir)" \ objdir="$(abs_top_builddir)" \ GNUPG_BUILD_ROOT="$(abs_top_builddir)" \ GNUPG_IN_TEST_SUITE=fact \ GPGSCM_PATH="$(abs_top_srcdir)/tests/gpgscm" XTESTS = \ import.scm \ encrypt.scm \ verify.scm \ decrypt.scm \ sign.scm \ export.scm # XXX: Currently, one cannot override automake's 'check' target. As a # workaround, we avoid defining 'TESTS', thus automake will not emit # the 'check' target. For extra robustness, we merely define a # dependency on 'xcheck', so this hack should also work even if # automake would emit the 'check' target, as adding dependencies to # targets is okay. check: xcheck .PHONY: xcheck xcheck: $(TESTS_ENVIRONMENT) $(abs_top_builddir)/tests/gpgscm/gpgscm$(EXEEXT) \ $(abs_srcdir)/run-tests.scm $(TESTFLAGS) $(TESTS) KEYS = 32100C27173EF6E9C4E9A25D3D69F86D37A4F939 CERTS = cert_g10code_test1.der \ cert_dfn_pca01.der \ cert_dfn_pca15.der TEST_FILES = plain-1.cms.asc \ plain-2.cms.asc \ plain-3.cms.asc \ plain-large.cms.asc # We used to run $(testscripts) here but these asschk scripts are not # completely reliable in all environments and thus we better disable # them. The tests are anyway way too minimal. We will eventually # write new tests based on gpg-connect-agent which has a full fledged # script language and thus makes it far easier to write tests than to # use that low-level asschk stuff. testscripts = sm-sign+verify sm-verify EXTRA_DIST = $(XTESTS) $(KEYS) $(CERTS) $(TEST_FILES) \ samplekeys/steed-self-signing-nonthority.pem \ samplekeys/68A638998DFABAC510EA645CE34F9686B2EDF7EA.key \ samplekeys/32100C27173EF6E9C4E9A25D3D69F86D37A4F939.key \ samplekeys/cert_g10code_pete1.pem \ samplekeys/cert_g10code_test1.pem \ samplekeys/cert_g10code_theo1.pem \ samplemsgs/README \ samplemsgs/pwri-sample.cbc.p7m \ samplemsgs/pwri-sample.cbc-2.p7m \ samplemsgs/pwri-sample.gcm.p7m \ text-1.txt text-2.txt text-3.txt \ text-1.osig.pem text-1.dsig.pem text-1.osig-bad.pem \ text-2.osig.pem text-2.osig-bad.pem \ runtest inittests $(testscripts) \ gpgsm-defs.scm run-tests.scm setup.scm all-tests.scm CLEANFILES = inittests.stamp *.lock *.log report.xml .\#lk* DISTCLEANFILES = pubring.kbx~ random_seed # We need to depend on a couple of programs so that the tests don't # start before all programs are built. all-local: $(required_pgms) inittests.stamp clean-local: srcdir=$(srcdir) $(OLD_TESTS_ENVIRONMENT) $(srcdir)/inittests --clean inittests.stamp: inittests srcdir=$(srcdir) $(OLD_TESTS_ENVIRONMENT) $(srcdir)/inittests echo timestamp >./inittests.stamp diff --git a/tests/pkits/Makefile.am b/tests/pkits/Makefile.am index 0b90f86ba..d25dd91a6 100644 --- a/tests/pkits/Makefile.am +++ b/tests/pkits/Makefile.am @@ -1,75 +1,75 @@ # Makefile.am - tests using NIST's PKITS # Copyright (C) 2004, 2008 Free Software Foundation, Inc. # # This file is part of GnuPG. # # GnuPG is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # GnuPG is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . ## Process this file with automake to produce Makefile.in GPGSM = ../../sm/gpgsm TESTS_ENVIRONMENT = GNUPGHOME=`/bin/pwd` GPG_AGENT_INFO= LC_ALL=C \ GNUPG_BUILD_ROOT="$(abs_top_builddir)" \ GNUPG_IN_TEST_SUITE=fact \ - GPGSM=$(GPGSM) silent=yes + GPGSM=$(GPGSM)$(EXEEXT) silent=yes testscripts = import-all-certs validate-all-certs \ signature-verification \ validity-periods \ verifying-name-chaining \ basic-certificate-revocation \ verifying-paths-self-issued \ verifying-basic-constraints \ key-usage \ certificate-policies \ require-explicit-policy \ policy-mappings \ inhibit-policy-mapping \ inhibit-any-policy \ name-constraints \ distribution-points \ delta-crls \ private-certificate-extensions EXTRA_DIST = inittests runtest common.sh $(testscripts) ChangeLog-2011 \ import-all-certs.data TESTS = CLEANFILES = inittests.stamp scratch.*.tmp x y z out err *.lock .\#lk* *.log DISTCLEANFILES = pubring.kbx~ random_seed all-local: inittests.stamp clean-local: srcdir=$(srcdir) $(TESTS_ENVIRONMENT) $(srcdir)/inittests --clean inittests.stamp: inittests srcdir=$(srcdir) $(TESTS_ENVIRONMENT) $(srcdir)/inittests echo timestamp >./inittests.stamp run-all-tests: inittests.stamp @set -e; \ GNUPGHOME=`/bin/pwd`; export GNUPGHOME;\ unset GPG_AGENT_INFO; \ for tst in $(testscripts); do \ if ./$${tst}; then : ; \ elif test $$? -eq 77; then echo "- SKIP $$tst"; \ fi; \ done