# This file is part of GNU Mailutils. -*- Autotest -*- # Copyright (C) 2010-2012, 2014-2017 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 . AT_BANNER(ali) 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 errout code=$? dir=`cd Mail;pwd` sed "s|$dir/||g" errout >&2 exit $code ], [0], [gray, polak, admin ], [ali: mh_aliases2:2.1-11: recursive inclusion ali: mh_aliases2:2.1-11: `mh_aliases' already included at top level ]) MH_CHECK([ali: group name],[ali04 ali-group-name],[ cat /etc/group | awk -F : '/^#/ { next } $4!="" { print $1; print $4; exit 0 }' > tmpout test -s tmpout || AT_SKIP_TEST sed -n '1s/.*/korzen: =&/p' tmpout > mh_aliases sed '1d' tmpout | tr -d ' ' > expout ali -a ./mh_aliases korzen | tr -d ' ' ], [0], [expout]) MH_CHECK([ali: group id],[ali05 ali-group-id ali-gid],[ cat /etc/passwd | awk -F : '/^#/ { next } $4==0 { print $1 }' > expout test -s expout || AT_SKIP_TEST name=`awk -F : '/^#/ { next } $3==0 { print $1 }' /etc/group < /dev/null` test -z "$name" && AT_SKIP_TEST echo "korzen: +$name" > mh_aliases # FIXME: Do I need to sort the output? ali -list -a ./mh_aliases korzen ], [0], [expout]) MH_CHECK([ali: everybody],[ali06 ali-everybody],[ lu 200 > expout test -s expout || AT_SKIP_TEST AT_DATA([mh_aliases],[ everybody: * ]) ali -list -a ./mh_aliases everybody ], [0], [expout]) MH_CHECK([ali: executable file inlcusion],[ali02 ali-xinclude],[ AT_DATA([Mail/ali.sh],[#! /bin/sh echo "admin: gray, jeff" ]) chmod +x Mail/ali.sh AT_DATA([mh_aliases],[ devel: gray, polak, admin