diff options
Diffstat (limited to 'libmailutils/tests/linetrack.at')
-rw-r--r-- | libmailutils/tests/linetrack.at | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/libmailutils/tests/linetrack.at b/libmailutils/tests/linetrack.at new file mode 100644 index 000000000..6f01b4d83 --- /dev/null +++ b/libmailutils/tests/linetrack.at @@ -0,0 +1,109 @@ +# This file is part of GNU Mailutils. -*- Autotest -*- +# Copyright (C) 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 <http://www.gnu.org/licenses/>. + +AT_BANNER([Line tracker]) + +m4_pushdef([TRACKTEST],[ +AT_SETUP([$1]) +AT_KEYWORDS([tracker $2]) +AT_CHECK([linetrack liber $3 <<EOT +$4[]EOT +], +[0], +[$5], +[$6]) +AT_CLEANUP +]) + +TRACKTEST([normal operation],[],[7], +[ +agnosco +veteris\n +vestigia +flamme +\n +\n +Publius +Ovidius +Naso +], +[liber:1.1-7: agnosco +liber:1.8-14: veteris\n +liber:2.1-8: vestigia +liber:2.9-14: flamme +liber:2.14: \n +liber:3: \n +liber:4.1-7: Publius +liber:4.8-14: Ovidius +liber:4.15-18: Naso +]) + +TRACKTEST([retreat],[],[3], +[ +agnosco +\-4 +veteris +vestigia\n +flamme +\-8 +Publius +], +[liber:1.1-7: agnosco +liber:1.4-10: veteris +liber:1.11-18: vestigia\n +liber:2.1-6: flamme +liber:1.18-24: Publius +]) + +TRACKTEST([retreat over several lines],[],[4], +[ +one\n +two\n +three +\-11 +four +], +[liber:1.1-3: one\n +liber:2.1-3: two\n +liber:3.1-5: three +liber:1.3-6: four +]) + +TRACKTEST([retreat to the beginning],[],[4], +[one\n +two\n +\-8 +three +], +[liber:1.1-3: one\n +liber:2.1-3: two\n +liber:1.1-5: three +]) + +TRACKTEST([too big retreat],[],[2], +[one\n +two\n +\-10 +three +], +[liber:1.1-3: one\n +liber:2.1-3: two\n +liber:3.1-5: three +], +[linetrack: retreat count too big +]) + +m4_popdef([TRACKTEST]) |