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(setup-legacy-environment) 22 23(info "Checking decryption of supplied files using --multifile.") 24 25(define my-wd (getcwd)) 26(define encrypted-files (map (lambda (name) 27 (string-append name ".asc")) 28 plain-files)) 29 30(with-temporary-working-directory 31 ;; First, copy the files so that GnuPG writes the decrypted files here 32 ;; and not into the source directory. 33 (for-each (lambda (name) 34 (file-copy (in-srcdir "tests" "openpgp" name) name)) 35 encrypted-files) 36 37 ;; Now decrypt all files. 38 (call-check `(,@gpg --decrypt --multifile ,@encrypted-files)) 39 40 ;; And verify the result. Reference files are in our original 41 ;; working directory courtesy of setup-legacy-environment. 42 (for-each-p 43 "Verifying files:" 44 (lambda (name) 45 (unless (file=? (path-join my-wd name) name) 46 (fail "decrypted file differs"))) 47 plain-files)) 48