tests: Add tests for the PGP trust model.
[gnupg.git] / tests / openpgp / Makefile.am
1 # Makefile.am - For tests/openpgp
2 # Copyright (C) 1998, 1999, 2000, 2001, 2003,
3 #               2010 Free Software Foundation, Inc.
4 #
5 # This file is part of GnuPG.
6 #
7 # GnuPG is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3 of the License, or
10 # (at your option) any later version.
11 #
12 # GnuPG is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, see <https://www.gnu.org/licenses/>.
19 # Process this file with automake to create Makefile.in
20
21
22 # Programs required before we can run these tests.
23 required_pgms = ../../g10/gpg$(EXEEXT) ../../agent/gpg-agent$(EXEEXT) \
24                 ../../tools/gpg-connect-agent$(EXEEXT) \
25                 ../gpgscm/gpgscm$(EXEEXT)
26
27 AM_CPPFLAGS = -I$(top_srcdir)/common
28 include $(top_srcdir)/am/cmacros.am
29
30 AM_CFLAGS =
31
32 noinst_PROGRAMS = fake-pinentry
33
34 fake_pinentry_SOURCES = fake-pinentry.c
35
36 TESTS_ENVIRONMENT = LC_ALL=C \
37         EXEEXT=$(EXEEXT) \
38         PATH=../gpgscm:$(PATH) \
39         abs_top_srcdir=$(abs_top_srcdir) \
40         objdir=$(abs_top_builddir) \
41         GPGSCM_PATH=$(abs_top_srcdir)/tests/gpgscm
42
43 XTESTS = \
44         version.scm \
45         enarmor.scm \
46         mds.scm \
47         decrypt.scm \
48         decrypt-multifile.scm \
49         decrypt-dsa.scm \
50         decrypt-session-key.scm \
51         decrypt-unwrap-verify.scm \
52         sigs.scm \
53         sigs-dsa.scm \
54         encrypt.scm \
55         encrypt-multifile.scm \
56         encrypt-dsa.scm \
57         compression.scm \
58         seat.scm \
59         clearsig.scm \
60         encryptp.scm \
61         detach.scm \
62         detachm.scm \
63         armsigs.scm \
64         armencrypt.scm \
65         armencryptp.scm \
66         signencrypt.scm \
67         signencrypt-dsa.scm \
68         armsignencrypt.scm \
69         armdetach.scm \
70         armdetachm.scm \
71         genkey1024.scm \
72         conventional.scm \
73         conventional-mdc.scm \
74         multisig.scm \
75         verify.scm \
76         verify-multifile.scm \
77         gpgv.scm \
78         gpgv-forged-keyring.scm \
79         armor.scm \
80         import.scm \
81         import-revocation-certificate.scm \
82         ecc.scm \
83         4gb-packet.scm \
84         tofu.scm \
85         trust-pgp-1.scm \
86         trust-pgp-2.scm \
87         trust-pgp-3.scm \
88         trust-pgp-4.scm! \
89         gpgtar.scm \
90         use-exact-key.scm \
91         default-key.scm \
92         export.scm \
93         ssh-import.scm \
94         ssh-export.scm \
95         quick-key-manipulation.scm \
96         key-selection.scm \
97         delete-keys.scm \
98         gpgconf.scm \
99         issue2015.scm \
100         issue2346.scm \
101         issue2417.scm \
102         issue2419.scm \
103         issue2929.scm \
104         issue2941.scm
105
106 # XXX: Currently, one cannot override automake's 'check' target.  As a
107 # workaround, we avoid defining 'TESTS', thus automake will not emit
108 # the 'check' target.  For extra robustness, we merely define a
109 # dependency on 'xcheck', so this hack should also work even if
110 # automake would emit the 'check' target, as adding dependencies to
111 # targets is okay.
112 check: xcheck
113
114 .PHONY: xcheck
115 xcheck:
116         $(TESTS_ENVIRONMENT) $(abs_top_builddir)/tests/gpgscm/gpgscm \
117           $(abs_srcdir)/run-tests.scm $(TESTFLAGS) $(TESTS)
118
119 TEST_FILES = pubring.asc secring.asc plain-1o.asc plain-2o.asc plain-3o.asc \
120              plain-1.asc plain-2.asc plain-3.asc plain-1-pgp.asc \
121              plain-largeo.asc plain-large.asc \
122              pubring.pkr.asc secring.skr.asc secdemo.asc pubdemo.asc \
123              bug537-test.data.asc bug894-test.asc \
124              bug1223-good.asc bug1223-bogus.asc 4gb-packet.asc \
125              tofu/conflicting/1C005AF3.gpg \
126              tofu/conflicting/1C005AF3-secret.gpg \
127              tofu/conflicting/1C005AF3-1.txt \
128              tofu/conflicting/1C005AF3-2.txt \
129              tofu/conflicting/1C005AF3-3.txt \
130              tofu/conflicting/1C005AF3-4.txt \
131              tofu/conflicting/1C005AF3-5.txt \
132              tofu/conflicting/B662E42F.gpg \
133              tofu/conflicting/B662E42F-secret.gpg \
134              tofu/conflicting/B662E42F-1.txt \
135              tofu/conflicting/B662E42F-2.txt \
136              tofu/conflicting/B662E42F-3.txt \
137              tofu/conflicting/B662E42F-4.txt \
138              tofu/conflicting/B662E42F-5.txt \
139              tofu/conflicting/BE04EB2B.gpg \
140              tofu/conflicting/BE04EB2B-secret.gpg \
141              tofu/conflicting/BE04EB2B-1.txt \
142              tofu/conflicting/BE04EB2B-2.txt \
143              tofu/conflicting/BE04EB2B-3.txt \
144              tofu/conflicting/BE04EB2B-4.txt \
145              tofu/conflicting/BE04EB2B-5.txt \
146              tofu/cross-sigs/EC38277E-secret.gpg \
147              tofu/cross-sigs/EC38277E-1.gpg \
148              tofu/cross-sigs/EC38277E-1.txt \
149              tofu/cross-sigs/EC38277E-2.gpg \
150              tofu/cross-sigs/EC38277E-2.txt \
151              tofu/cross-sigs/EC38277E-3.txt \
152              tofu/cross-sigs/871C2247-secret.gpg \
153              tofu/cross-sigs/871C2247-1.gpg \
154              tofu/cross-sigs/871C2247-1.txt \
155              tofu/cross-sigs/871C2247-2.gpg \
156              tofu/cross-sigs/871C2247-2.txt \
157              tofu/cross-sigs/871C2247-3.gpg \
158              tofu/cross-sigs/871C2247-3.txt \
159              tofu/cross-sigs/871C2247-4.gpg \
160              tofu/cross-sigs/README \
161              key-selection/0.asc \
162              key-selection/1.asc \
163              key-selection/2.asc \
164              key-selection/3.asc \
165              key-selection/4.asc \
166              trust-pgp/scenario1.asc \
167              trust-pgp/scenario2.asc \
168              trust-pgp/scenario3.asc \
169              trust-pgp/scenario4.asc \
170              trust-pgp/alice.sec.asc \
171              trust-pgp/bobby.sec.asc \
172              trust-pgp/carol.sec.asc \
173              trust-pgp/david.sec.asc \
174              trust-pgp/frank.sec.asc \
175              trust-pgp/grace.sec.asc \
176              trust-pgp/heidi.sec.asc
177
178 data_files = data-500 data-9000 data-32000 data-80000 plain-large
179
180 priv_keys = privkeys/50B2D4FA4122C212611048BC5FC31BD44393626E.asc \
181             privkeys/7E201E28B6FEB2927B321F443205F4724EBE637E.asc \
182             privkeys/13FDB8809B17C5547779F9D205C45F47CE0217CE.asc \
183             privkeys/343D8AF79796EE107D645A2787A9D9252F924E6F.asc \
184             privkeys/8B5ABF3EF9EB8D96B91A0B8C2C4401C91C834C34.asc \
185             privkeys/0D6F6AD4C4C803B25470F9104E9F4E6A4CA64255.asc \
186             privkeys/FD692BD59D6640A84C8422573D469F84F3B98E53.asc \
187             privkeys/76F7E2B35832976B50A27A282D9B87E44577EB66.asc \
188             privkeys/A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD.asc \
189             privkeys/0DD40284FF992CD24DC4AAC367037E066FCEE26A.asc \
190             privkeys/2BC997C0B8691D41D29A4EC81CCBCF08454E4961.asc \
191             privkeys/3C9D5ECA70130C2DBB1FC6AC0076BEEEC197716F.asc \
192             privkeys/449E644892C951A37525654730DD32C202079926.asc \
193             privkeys/58FFE844087634E62440224908BDE44BEA7EB730.asc \
194             privkeys/4DF9172D6FF428C97A0E9AA96F03E8BCE3B2F188.asc \
195             privkeys/9D7CD8F53F2F14C3E2177D1E9D1D11F39513A4A4.asc \
196             privkeys/6E6B7ED0BD4425018FFC54F3921D5467A3AE00EB.asc \
197             privkeys/C905D0AB6AE9655C5A35975939997BBF3325D6DD.asc \
198             privkeys/B2BAA7144303DF19BB6FDE23781DD3FDD97918D4.asc \
199             privkeys/CF60965BF51F67CF80DECE853E0D2D343468571D.asc \
200             privkeys/DF00E361D34F80868D06879AC21D7A7D4E4FAD76.asc \
201             privkeys/00FE67F28A52A8AA08FFAED20AF832DA916D1985.asc \
202             privkeys/1DF48228FEFF3EC2481B106E0ACA8C465C662CC5.asc \
203             privkeys/A2832820DC9F40751BDCD375BB0945BA33EC6B4C.asc \
204             privkeys/ADE710D74409777B7729A7653373D820F67892E0.asc \
205             privkeys/CEFC51AF91F68A2904FBFF62C4F075A4785B803F.asc \
206             privkeys/1E28F20E41B54C2D1234D896096495FF57E08D18.asc \
207             privkeys/EB33B687EB8581AB64D04852A54453E85F3DF62D.asc \
208             privkeys/C6A6390E9388CDBAD71EAEA698233FE5E04F001E.asc \
209             privkeys/D69102E0F5AC6B6DB8E4D16DA8E18CF46D88CAE3.asc
210
211 sample_keys = samplekeys/README \
212               samplekeys/ecc-sample-1-pub.asc \
213               samplekeys/ecc-sample-2-pub.asc \
214               samplekeys/ecc-sample-3-pub.asc \
215               samplekeys/ecc-sample-1-sec.asc \
216               samplekeys/ecc-sample-2-sec.asc \
217               samplekeys/ecc-sample-3-sec.asc \
218               samplekeys/eddsa-sample-1-pub.asc \
219               samplekeys/eddsa-sample-1-sec.asc \
220               samplekeys/dda252ebb8ebe1af-1.asc \
221               samplekeys/dda252ebb8ebe1af-2.asc \
222               samplekeys/whats-new-in-2.1.asc \
223               samplekeys/e2e-p256-1-clr.asc \
224               samplekeys/e2e-p256-1-prt.asc \
225               samplekeys/E657FB607BB4F21C90BB6651BC067AF28BC90111.asc \
226               samplekeys/rsa-rsa-sample-1.asc \
227               samplekeys/ed25519-cv25519-sample-1.asc \
228               samplekeys/silent-running.asc \
229               samplekeys/ssh-dsa.key \
230               samplekeys/ssh-ecdsa.key \
231               samplekeys/ssh-ed25519.key \
232               samplekeys/ssh-rsa.key \
233               samplekeys/issue2346.gpg \
234               samplekeys/authenticate-only.pub.asc \
235               samplekeys/authenticate-only.sec.asc
236
237 sample_msgs = samplemsgs/clearsig-1-key-1.asc \
238               samplemsgs/clearsig-2-keys-1.asc \
239               samplemsgs/clearsig-2-keys-2.asc \
240               samplemsgs/enc-1-key-1.asc \
241               samplemsgs/enc-1-key-2.asc \
242               samplemsgs/enc-2-keys-1.asc \
243               samplemsgs/enc-2-keys-2.asc \
244               samplemsgs/enc-2-keys-hh-1.asc \
245               samplemsgs/enc-2-keys-hr-1.asc \
246               samplemsgs/enc-2-keys-rh-1.asc \
247               samplemsgs/encsig-2-2-keys-3.asc \
248               samplemsgs/encsig-2-2-keys-4.asc \
249               samplemsgs/encsig-2-keys-1.asc \
250               samplemsgs/encsig-2-keys-2.asc \
251               samplemsgs/encsig-2-keys-3.asc \
252               samplemsgs/encsig-2-keys-4.asc \
253               samplemsgs/encz0-1-key-1.asc \
254               samplemsgs/encz0-1-key-2.asc \
255               samplemsgs/issue2419.asc \
256               samplemsgs/revoke-2D727CC768697734.asc \
257               samplemsgs/sig-1-key-1.asc \
258               samplemsgs/sig-1-key-2.asc \
259               samplemsgs/sig-2-keys-1.asc \
260               samplemsgs/sig-2-keys-2.asc \
261               samplemsgs/signed-1-key-1.asc \
262               samplemsgs/signed-1-key-2.asc \
263               samplemsgs/signed-2-keys-1.asc \
264               samplemsgs/signed-2-keys-2.asc
265
266 EXTRA_DIST = defs.scm trust-pgp/common.scm $(XTESTS) $(TEST_FILES) \
267              mkdemodirs signdemokey $(priv_keys) $(sample_keys)   \
268              $(sample_msgs) ChangeLog-2011 run-tests.scm \
269              setup.scm shell.scm all-tests.scm signed-messages.scm
270
271 CLEANFILES = prepared.stamp x y yy z out err  $(data_files) \
272              plain-1 plain-2 plain-3 trustdb.gpg *.lock .\#lk* \
273              *.log gpg_dearmor gpg.conf gpg-agent.conf S.gpg-agent \
274              pubring.gpg pubring.gpg~ pubring.kbx pubring.kbx~ \
275              secring.gpg pubring.pkr secring.skr \
276              gnupg-test.stop random_seed gpg-agent.log tofu.db \
277              passphrases sshcontrol S.gpg-agent.ssh report.xml
278
279 clean-local:
280         -rm -rf private-keys-v1.d openpgp-revocs.d tofu.d gpgtar.d
281
282
283 # We need to depend on a couple of programs so that the tests don't
284 # start before all programs are built.
285 all-local: $(required_pgms)