diff options
author | Mathieu Lirzin <mthl@gnu.org> | 2020-05-18 12:54:52 +0200 |
---|---|---|
committer | Dale Mellor <mcron-lsfnyl@rdmp.org> | 2020-06-08 08:49:51 +0100 |
commit | 765bfbf4d9e4cd22371313f653cd6431034798f0 (patch) | |
tree | 788255c7b8bcea321460cca6bd0706028cddb546 /tests | |
parent | 92a940cca55a07efb67c7588bbca99a9fe305025 (diff) | |
download | mcron-765bfbf4d9e4cd22371313f653cd6431034798f0.tar.gz mcron-765bfbf4d9e4cd22371313f653cd6431034798f0.tar.bz2 mcron-765bfbf4d9e4cd22371313f653cd6431034798f0.zip |
tests: Check (mcron redirect)
* tests/redirect.scm: New file.
* Makefile.am (TESTS): Register it.
* src/mcron/redirect.scm (with-mail-out): Adapt to facilitate testing.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/redirect.scm | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/tests/redirect.scm b/tests/redirect.scm new file mode 100644 index 0000000..700bfb4 --- /dev/null +++ b/tests/redirect.scm @@ -0,0 +1,53 @@ +;;;; redirect.scm -- tests for (mcron redirect) module +;;; Copyright © 2020 Mathieu Lirzin <mthl@gnu.org> +;;; +;;; This file is part of GNU Mcron. +;;; +;;; GNU Mcron 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. +;;; +;;; GNU Mcron 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 GNU Mcron. If not, see <http://www.gnu.org/licenses/>. + +(use-modules (ice-9 textual-ports) + (srfi srfi-1) + (srfi srfi-64) + (mcron redirect)) + +(setenv "TZ" "UTC0") + +(test-begin "redirect") + +(define out (mkstemp! (string-copy "foo-XXXXXX"))) + +(dynamic-wind + (const #t) + (lambda () + (with-mail-out "echo 'foo'" "user0" + #:out (lambda () out) + #:hostname "localhost") + + (flush-all-ports) + + (test-equal "mail output" + "To: user0 +From: mcron +Subject: user0@localhost + +foo +" + (call-with-input-file (port-filename out) get-string-all))) + + (lambda () + (let ((fname (port-filename out))) + (close out) + (delete-file fname)))) + +(test-end) |