tests: Add tests for the PGP trust model.
[gnupg.git] / tests / openpgp / shell.scm
1 #!/usr/bin/env gpgscm
2
3 ;; Copyright (C) 2016 g10 Code GmbH
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 <http://www.gnu.org/licenses/>.
19
20 (load (in-srcdir "tests" "openpgp" "defs.scm"))
21
22 ;; This is not a test, but can be used to inspect the test
23 ;; environment.  Simply execute
24 ;;
25 ;;   make -Ctests/openpgp check XTESTS=shell.scm
26 ;;
27 ;; to run it.
28
29 (if (prompt-yes-no? "Load legacy test environment" #t)
30     (setup-legacy-environment)
31     (setup-environment))
32
33 (if (prompt-yes-no? "Drop 'batch' from gpg.conf" #t)
34     (apply create-file
35            (cons "gpg.conf"
36                  (filter (lambda (line) (not (equal? "batch" line)))
37                          (string-split-newlines
38                           (call-with-input-file "gpg.conf" read-all)))))
39     (begin
40       (echo "Note that gpg.conf includes 'batch'.  If you want to use gpg")
41       (echo "interactively you should drop that.")))
42
43 ;; Add paths to tools to PATH.
44 (setenv "PATH" (pathsep-join
45                 (append (map (lambda (t) (dirname (tool t)))
46                              '(gpg gpg-agent scdaemon gpgsm dirmngr gpgconf))
47                         (pathsep-split (getenv "PATH"))))
48         #t)
49
50 (echo "\nEnjoy your test environment. "
51       "Type 'exit' to exit it, it will be cleaned up after you.\n")
52
53 (interactive-shell)