Commit feee0bbf feee0bbfdb8e2136d612a74ff7d748c5f6c616ea by Sergey Poznyakoff

mh: fix testsuite, add new tests.

* mh/ali.c (ali_print_name_list): Print -list output.
* mh/tests/ali.at: New test case.
* mh/tests/Makefile.am (TESTSUITE_AT): Add ali.at
* mh/tests/testsuite.at: Include ali.at.
* mh/tests/anno.at: Fix MH_KEYWORDS definition.
* mh/tests/folder.at: Likewise.
* mh/tests/inc.at: Likewise.
* mh/tests/mark.at: Likewise.
* mh/tests/mhl.at: Likewise.
* mh/tests/mhparam.at: Likewise.
* mh/tests/mhpath.at: Likewise.
* mh/tests/refile.at: Likewise.
* mh/tests/rmf.at: Likewise.

* mh/tests/pick.at: Fix MH_KEYWORDS definition. Add more tests.
1 parent c2a94277
......@@ -117,15 +117,11 @@ ali_print_name_list (mu_list_t list, int off)
if (list_mode)
{
mu_iterator_first (itr);
mu_iterator_current (itr, (void **)&item);
printf ("%s\n", item);
for (mu_iterator_next (itr); !mu_iterator_is_done (itr); mu_iterator_next (itr))
for (mu_iterator_first (itr);
!mu_iterator_is_done (itr); mu_iterator_next (itr))
{
int len;
mu_iterator_current (itr, (void **)&item);
len = off + strlen (item);
printf ("%*.*s\n", len, len, item);
printf ("%s\n", item);
}
}
else
......
......@@ -39,6 +39,7 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
## ------------ ##
TESTSUITE_AT = \
ali.at\
anno.at\
folder.at\
inc.at\
......
# This file is part of GNU Mailutils. -*- Autotest -*-
# Copyright (C) 2010 Free Software Foundation, Inc.
#
# GNU Mailutils 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, or (at
# your option) any later version.
#
# GNU Mailutils 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 Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef([MH_KEYWORDS],[ali])
MH_CHECK([ali: simple aliases],[ali00],[
AT_DATA([mh_aliases],[
devel: gray, polak
admin: gray, jeff
])
ali -a ./mh_aliases devel
],
[0],
[gray, polak
])
MH_CHECK([ali: recursive aliases],[ali01],[
AT_DATA([mh_aliases],[
devel: gray, polak, admin
admin: gray, jeff
])
ali -a ./mh_aliases devel
],
[0],
[gray, polak, gray, jeff
])
MH_CHECK([ali: file inlcusion],[ali02 ali-include],[
AT_DATA([Mail/mh_aliases2],[
admin: gray, jeff
])
AT_DATA([mh_aliases],[
devel: gray, polak, admin
<mh_aliases2
])
ali -a ./mh_aliases devel
],
[0],
[gray, polak, gray, jeff
])
MH_CHECK([ali: recursive inlcusion],[ali03 ali-include-recursive],[
AT_DATA([Mail/mh_aliases2],[
<mh_aliases
])
AT_DATA([Mail/mh_aliases],[
devel: gray, polak, admin
<mh_aliases2
])
ali -a ./Mail/mh_aliases devel 2>errout
code=$?
dir=`cd Mail;pwd`
sed "s|$dir/||g" errout >&2
exit $code
],
[0],
[gray, polak, admin
],
[ali: mh_aliases2:2: recursive inclusion
ali: mh_aliases2:2: `mh_aliases' already included at top level
])
MH_CHECK([ali: group name],[ali04 ali-group-name],[
grep ^root: /etc/group >/dev/null || AT_SKIP_TEST
AT_DATA([mh_aliases],[
korzen: =root
])
awk -F : '$1=="root" { print $4 }' /etc/group | tr -d ' ' > expout
ali -a ./mh_aliases korzen | tr -d ' '
],
[0],
[expout])
MH_CHECK([ali: group id],[ali05 ali-group-id ali-gid],[
awk -F : '$4==0 { print $1 }' /etc/passwd > expout
test -s expout || AT_SKIP_TEST
name=`awk -F : '$3==0 { print $1 }' /etc/group`
test -z "$name" && AT_SKIP_TEST
AT_DATA([mh_aliases],[
korzen: +root
])
# FIXME: Do I need to sort the output?
ali -list -a ./mh_aliases korzen
],
[0],
[expout])
MH_CHECK([ali: everybody],[ali06 ali-everybody],[
awk -F : '$3>200 { print $1 }' /etc/passwd > expout
test -s expout || AT_SKIP_TEST
AT_DATA([mh_aliases],[
everybody: *
])
ali -list -a ./mh_aliases everybody
],
[0],
[expout])
MH_CHECK([ali: simple aliases],[ali00],[
AT_DATA([mh_aliases],[
devel: gray, polak
admin: gray, jeff
])
ali -a ./mh_aliases devel
],
[0],
[gray, polak
])
m4_popdef[MH_KEYWORDS])
# End of ali.at
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[anno])
m4_pushdef([MH_KEYWORDS],[anno])
MH_CHECK([anno],[anno00],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[folder])
m4_pushdef([MH_KEYWORDS],[folder])
MH_CHECK([folder],[folder00 folder-print],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[inc])
m4_pushdef([MH_KEYWORDS],[inc])
MH_CHECK([inc -notruncate],[inc00 inc-notruncate],[
MUT_MBCOPY([$abs_top_srcdir/testsuite/spool/mbox1])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[mark])
m4_pushdef([MH_KEYWORDS],[mark])
MH_CHECK([mark -add],[mark00 mark-add],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[mhl])
m4_pushdef([MH_KEYWORDS],[mhl])
MH_CHECK([mhl],[mhl00],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[mhparam])
m4_pushdef([MH_KEYWORDS],[mhparam])
MH_CHECK([mhparam -all],[mhparam00 mhparam-all],[
cat >>$MH <<EOT
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[mhpath])
m4_pushdef([MH_KEYWORDS],[mhpath])
MH_CHECK([mhpath],[mhpath00],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[pick])
m4_pushdef([MH_KEYWORDS],[pick])
MH_CHECK([pick -from],[pick00 pick-from],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
......@@ -157,7 +157,7 @@ pick -subject Story -or -from Dormouse
93
])
MH_CHECK([pick -- default precedence],[pick07 pick-subject-and-from-or-from],[
MH_CHECK([pick: default precedence],[pick07 pick-subject-and-from-or-from],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
echo "Current-Folder: inbox" > Mail/context
echo "cur: 1" > Mail/inbox/.mh_sequences
......@@ -216,7 +216,7 @@ pick -subject Story -and -from Dormouse -or -from Alice
95
])
MH_CHECK([pick -- explicit precedence (1)],[pick08 pick-expl-1],[
MH_CHECK([pick: explicit precedence (1)],[pick08 pick-expl-1],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
echo "Current-Folder: inbox" > Mail/context
echo "cur: 1" > Mail/inbox/.mh_sequences
......@@ -275,7 +275,7 @@ pick -lbrace -subject Story -and -from Dormouse -rbrace -or -from Alice
95
])
MH_CHECK([pick -- explicit precedence (2)],[pick09 pick-expl-2],[
MH_CHECK([pick: explicit precedence (2)],[pick09 pick-expl-2],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
echo "Current-Folder: inbox" > Mail/context
echo "cur: 1" > Mail/inbox/.mh_sequences
......@@ -309,5 +309,37 @@ pick -subject Story -and -lbrace -from Dormouse -or -from Alice -rbrace
93
])
MH_CHECK([pick -before],[pick10 pick-before],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
echo "Current-Folder: inbox" > Mail/context
pick -before 'Mon, 29 Jul 2002 21:00:03 +0000'
],
[0],
[1
2
])
MH_CHECK([pick --Component pattern],[pick11 pick-component],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/teaparty,[Mail/inbox])
pick --X-Envelope-Sender hare
],
[0],
[1
3
5
7
9
11
13
16
22
24
35
42
58
62
71
])
m4_popdef[MH_KEYWORDS])
# End of pick.at
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[refile])
m4_pushdef([MH_KEYWORDS],[refile])
MH_CHECK([refile],[refile00],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[rmm])
m4_pushdef([MH_KEYWORDS],[rmm])
MH_CHECK([rmf +folder],[rmf00 rmf+folder],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[rmm])
m4_pushdef([MH_KEYWORDS],[rmm])
MH_CHECK([rmm msg],[rmm00 rmm-msg],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef[MH_KEYWORDS],[scan])
m4_pushdef([MH_KEYWORDS],[scan])
MH_CHECK([scan],[scan00],[
MUT_MBCOPY($abs_top_srcdir/testsuite/mh/mbox1,[Mail/inbox])
......
......@@ -33,7 +33,7 @@ dnl [STDOUT = `'], [STDERR = `']
dnl
m4_define([MH_CHECK],[
AT_SETUP($1)
AT_KEYWORDS(MH_KEYWORDS[ $2])
AT_KEYWORDS([MH_KEYWORDS $2])
MH_SETUP
AT_CHECK([$3],[$4],[$5],[$6])
AT_CLEANUP
......@@ -42,6 +42,7 @@ AT_CLEANUP
AT_INIT
m4_include([install-mh.at])
m4_include([ali.at])
m4_include([folder.at])
m4_include([inc.at])
m4_include([scan.at])
......