1#! /bin/sh 2# Generated from testsuite.at by GNU Autoconf 2.69. 3# 4# Copyright (C) 2009-2012 Free Software Foundation, Inc. 5# 6# This test suite is free software; the Free Software Foundation gives 7# unlimited permission to copy, distribute and modify it. 8## -------------------- ## 9## M4sh Initialization. ## 10## -------------------- ## 11 12# Be more Bourne compatible 13DUALCASE=1; export DUALCASE # for MKS sh 14if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : 15 emulate sh 16 NULLCMD=: 17 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which 18 # is contrary to our usage. Disable this feature. 19 alias -g '${1+"$@"}'='"$@"' 20 setopt NO_GLOB_SUBST 21else 22 case `(set -o) 2>/dev/null` in #( 23 *posix*) : 24 set -o posix ;; #( 25 *) : 26 ;; 27esac 28fi 29 30 31as_nl=' 32' 33export as_nl 34# Printing a long string crashes Solaris 7 /usr/bin/printf. 35as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 36as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo 37as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo 38# Prefer a ksh shell builtin over an external printf program on Solaris, 39# but without wasting forks for bash or zsh. 40if test -z "$BASH_VERSION$ZSH_VERSION" \ 41 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then 42 as_echo='print -r --' 43 as_echo_n='print -rn --' 44elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then 45 as_echo='printf %s\n' 46 as_echo_n='printf %s' 47else 48 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then 49 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' 50 as_echo_n='/usr/ucb/echo -n' 51 else 52 as_echo_body='eval expr "X$1" : "X\\(.*\\)"' 53 as_echo_n_body='eval 54 arg=$1; 55 case $arg in #( 56 *"$as_nl"*) 57 expr "X$arg" : "X\\(.*\\)$as_nl"; 58 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; 59 esac; 60 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" 61 ' 62 export as_echo_n_body 63 as_echo_n='sh -c $as_echo_n_body as_echo' 64 fi 65 export as_echo_body 66 as_echo='sh -c $as_echo_body as_echo' 67fi 68 69# The user is always right. 70if test "${PATH_SEPARATOR+set}" != set; then 71 PATH_SEPARATOR=: 72 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { 73 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || 74 PATH_SEPARATOR=';' 75 } 76fi 77 78 79# IFS 80# We need space, tab and new line, in precisely that order. Quoting is 81# there to prevent editors from complaining about space-tab. 82# (If _AS_PATH_WALK were called with IFS unset, it would disable word 83# splitting by setting IFS to empty value.) 84IFS=" "" $as_nl" 85 86# Find who we are. Look in the path if we contain no directory separator. 87as_myself= 88case $0 in #(( 89 *[\\/]* ) as_myself=$0 ;; 90 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 91for as_dir in $PATH 92do 93 IFS=$as_save_IFS 94 test -z "$as_dir" && as_dir=. 95 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break 96 done 97IFS=$as_save_IFS 98 99 ;; 100esac 101# We did not find ourselves, most probably we were run as `sh COMMAND' 102# in which case we are not to be found in the path. 103if test "x$as_myself" = x; then 104 as_myself=$0 105fi 106if test ! -f "$as_myself"; then 107 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 108 exit 1 109fi 110 111# Unset variables that we do not need and which cause bugs (e.g. in 112# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" 113# suppresses any "Segmentation fault" message there. '((' could 114# trigger a bug in pdksh 5.2.14. 115for as_var in BASH_ENV ENV MAIL MAILPATH 116do eval test x\${$as_var+set} = xset \ 117 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : 118done 119PS1='$ ' 120PS2='> ' 121PS4='+ ' 122 123# NLS nuisances. 124LC_ALL=C 125export LC_ALL 126LANGUAGE=C 127export LANGUAGE 128 129# CDPATH. 130(unset CDPATH) >/dev/null 2>&1 && unset CDPATH 131 132if test "x$CONFIG_SHELL" = x; then 133 as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : 134 emulate sh 135 NULLCMD=: 136 # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which 137 # is contrary to our usage. Disable this feature. 138 alias -g '\${1+\"\$@\"}'='\"\$@\"' 139 setopt NO_GLOB_SUBST 140else 141 case \`(set -o) 2>/dev/null\` in #( 142 *posix*) : 143 set -o posix ;; #( 144 *) : 145 ;; 146esac 147fi 148" 149 as_required="as_fn_return () { (exit \$1); } 150as_fn_success () { as_fn_return 0; } 151as_fn_failure () { as_fn_return 1; } 152as_fn_ret_success () { return 0; } 153as_fn_ret_failure () { return 1; } 154 155exitcode=0 156as_fn_success || { exitcode=1; echo as_fn_success failed.; } 157as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } 158as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } 159as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } 160if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : 161 162else 163 exitcode=1; echo positional parameters were not saved. 164fi 165test x\$exitcode = x0 || exit 1 166test -x / || exit 1" 167 as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO 168 as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO 169 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && 170 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 171test \$(( 1 + 1 )) = 2 || exit 1" 172 if (eval "$as_required") 2>/dev/null; then : 173 as_have_required=yes 174else 175 as_have_required=no 176fi 177 if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : 178 179else 180 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 181as_found=false 182for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH 183do 184 IFS=$as_save_IFS 185 test -z "$as_dir" && as_dir=. 186 as_found=: 187 case $as_dir in #( 188 /*) 189 for as_base in sh bash ksh sh5; do 190 # Try only shells that exist, to save several forks. 191 as_shell=$as_dir/$as_base 192 if { test -f "$as_shell" || test -f "$as_shell.exe"; } && 193 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : 194 CONFIG_SHELL=$as_shell as_have_required=yes 195 if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : 196 break 2 197fi 198fi 199 done;; 200 esac 201 as_found=false 202done 203$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && 204 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : 205 CONFIG_SHELL=$SHELL as_have_required=yes 206fi; } 207IFS=$as_save_IFS 208 209 210 if test "x$CONFIG_SHELL" != x; then : 211 export CONFIG_SHELL 212 # We cannot yet assume a decent shell, so we have to provide a 213# neutralization value for shells without unset; and this also 214# works around shells that cannot unset nonexistent variables. 215# Preserve -v and -x to the replacement shell. 216BASH_ENV=/dev/null 217ENV=/dev/null 218(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV 219case $- in # (((( 220 *v*x* | *x*v* ) as_opts=-vx ;; 221 *v* ) as_opts=-v ;; 222 *x* ) as_opts=-x ;; 223 * ) as_opts= ;; 224esac 225exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} 226# Admittedly, this is quite paranoid, since all the known shells bail 227# out after a failed `exec'. 228$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 229exit 255 230fi 231 232 if test x$as_have_required = xno; then : 233 $as_echo "$0: This script requires a shell more modern than all" 234 $as_echo "$0: the shells that I found on your system." 235 if test x${ZSH_VERSION+set} = xset ; then 236 $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" 237 $as_echo "$0: be upgraded to zsh 4.3.4 or later." 238 else 239 $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, 240$0: including any error possibly output before this 241$0: message. Then install a modern shell, or manually run 242$0: the script under such a shell if you do have one." 243 fi 244 exit 1 245fi 246fi 247fi 248SHELL=${CONFIG_SHELL-/bin/sh} 249export SHELL 250# Unset more variables known to interfere with behavior of common tools. 251CLICOLOR_FORCE= GREP_OPTIONS= 252unset CLICOLOR_FORCE GREP_OPTIONS 253 254## --------------------- ## 255## M4sh Shell Functions. ## 256## --------------------- ## 257# as_fn_unset VAR 258# --------------- 259# Portably unset VAR. 260as_fn_unset () 261{ 262 { eval $1=; unset $1;} 263} 264as_unset=as_fn_unset 265 266# as_fn_set_status STATUS 267# ----------------------- 268# Set $? to STATUS, without forking. 269as_fn_set_status () 270{ 271 return $1 272} # as_fn_set_status 273 274# as_fn_exit STATUS 275# ----------------- 276# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. 277as_fn_exit () 278{ 279 set +e 280 as_fn_set_status $1 281 exit $1 282} # as_fn_exit 283 284# as_fn_mkdir_p 285# ------------- 286# Create "$as_dir" as a directory, including parents if necessary. 287as_fn_mkdir_p () 288{ 289 290 case $as_dir in #( 291 -*) as_dir=./$as_dir;; 292 esac 293 test -d "$as_dir" || eval $as_mkdir_p || { 294 as_dirs= 295 while :; do 296 case $as_dir in #( 297 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( 298 *) as_qdir=$as_dir;; 299 esac 300 as_dirs="'$as_qdir' $as_dirs" 301 as_dir=`$as_dirname -- "$as_dir" || 302$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ 303 X"$as_dir" : 'X\(//\)[^/]' \| \ 304 X"$as_dir" : 'X\(//\)$' \| \ 305 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || 306$as_echo X"$as_dir" | 307 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ 308 s//\1/ 309 q 310 } 311 /^X\(\/\/\)[^/].*/{ 312 s//\1/ 313 q 314 } 315 /^X\(\/\/\)$/{ 316 s//\1/ 317 q 318 } 319 /^X\(\/\).*/{ 320 s//\1/ 321 q 322 } 323 s/.*/./; q'` 324 test -d "$as_dir" && break 325 done 326 test -z "$as_dirs" || eval "mkdir $as_dirs" 327 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" 328 329 330} # as_fn_mkdir_p 331 332# as_fn_executable_p FILE 333# ----------------------- 334# Test if FILE is an executable regular file. 335as_fn_executable_p () 336{ 337 test -f "$1" && test -x "$1" 338} # as_fn_executable_p 339# as_fn_append VAR VALUE 340# ---------------------- 341# Append the text in VALUE to the end of the definition contained in VAR. Take 342# advantage of any shell optimizations that allow amortized linear growth over 343# repeated appends, instead of the typical quadratic growth present in naive 344# implementations. 345if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : 346 eval 'as_fn_append () 347 { 348 eval $1+=\$2 349 }' 350else 351 as_fn_append () 352 { 353 eval $1=\$$1\$2 354 } 355fi # as_fn_append 356 357# as_fn_arith ARG... 358# ------------------ 359# Perform arithmetic evaluation on the ARGs, and store the result in the 360# global $as_val. Take advantage of shells that can avoid forks. The arguments 361# must be portable across $(()) and expr. 362if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : 363 eval 'as_fn_arith () 364 { 365 as_val=$(( $* )) 366 }' 367else 368 as_fn_arith () 369 { 370 as_val=`expr "$@" || test $? -eq 1` 371 } 372fi # as_fn_arith 373 374 375# as_fn_error STATUS ERROR [LINENO LOG_FD] 376# ---------------------------------------- 377# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are 378# provided, also output the error to LOG_FD, referencing LINENO. Then exit the 379# script with STATUS, using 1 if that was 0. 380as_fn_error () 381{ 382 as_status=$1; test $as_status -eq 0 && as_status=1 383 if test "$4"; then 384 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack 385 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 386 fi 387 $as_echo "$as_me: error: $2" >&2 388 as_fn_exit $as_status 389} # as_fn_error 390 391if expr a : '\(a\)' >/dev/null 2>&1 && 392 test "X`expr 00001 : '.*\(...\)'`" = X001; then 393 as_expr=expr 394else 395 as_expr=false 396fi 397 398if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then 399 as_basename=basename 400else 401 as_basename=false 402fi 403 404as_me=`$as_basename -- "$0" || 405$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ 406 X"$0" : 'X\(//\)$' \| \ 407 X"$0" : 'X\(/\)' \| . 2>/dev/null || 408$as_echo X/"$0" | 409 sed '/^.*\/\([^/][^/]*\)\/*$/{ 410 s//\1/ 411 q 412 } 413 /^X\/\(\/\/\)$/{ 414 s//\1/ 415 q 416 } 417 /^X\/\(\/\).*/{ 418 s//\1/ 419 q 420 } 421 s/.*/./; q'` 422 423if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then 424 as_dirname=dirname 425else 426 as_dirname=false 427fi 428 429# Avoid depending upon Character Ranges. 430as_cr_letters='abcdefghijklmnopqrstuvwxyz' 431as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' 432as_cr_Letters=$as_cr_letters$as_cr_LETTERS 433as_cr_digits='0123456789' 434as_cr_alnum=$as_cr_Letters$as_cr_digits 435 436 437 as_lineno_1=$LINENO as_lineno_1a=$LINENO 438 as_lineno_2=$LINENO as_lineno_2a=$LINENO 439 eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && 440 test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { 441 # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) 442 sed -n ' 443 p 444 /[$]LINENO/= 445 ' <$as_myself | 446 sed ' 447 s/[$]LINENO.*/&-/ 448 t lineno 449 b 450 :lineno 451 N 452 :loop 453 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ 454 t loop 455 s/-\n.*// 456 ' >$as_me.lineno && 457 chmod +x "$as_me.lineno" || 458 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } 459 460 # If we had to re-execute with $CONFIG_SHELL, we're ensured to have 461 # already done that, so ensure we don't try to do so again and fall 462 # in an infinite loop. This has already happened in practice. 463 _as_can_reexec=no; export _as_can_reexec 464 # Don't try to exec as it changes $[0], causing all sort of problems 465 # (the dirname of $[0] is not the place where we might find the 466 # original and so on. Autoconf is especially sensitive to this). 467 . "./$as_me.lineno" 468 # Exit status is that of the last command. 469 exit 470} 471 472ECHO_C= ECHO_N= ECHO_T= 473case `echo -n x` in #((((( 474-n*) 475 case `echo 'xy\c'` in 476 *c*) ECHO_T=' ';; # ECHO_T is single tab character. 477 xy) ECHO_C='\c';; 478 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null 479 ECHO_T=' ';; 480 esac;; 481*) 482 ECHO_N='-n';; 483esac 484 485rm -f conf$$ conf$$.exe conf$$.file 486if test -d conf$$.dir; then 487 rm -f conf$$.dir/conf$$.file 488else 489 rm -f conf$$.dir 490 mkdir conf$$.dir 2>/dev/null 491fi 492if (echo >conf$$.file) 2>/dev/null; then 493 if ln -s conf$$.file conf$$ 2>/dev/null; then 494 as_ln_s='ln -s' 495 # ... but there are two gotchas: 496 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. 497 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. 498 # In both cases, we have to default to `cp -pR'. 499 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || 500 as_ln_s='cp -pR' 501 elif ln conf$$.file conf$$ 2>/dev/null; then 502 as_ln_s=ln 503 else 504 as_ln_s='cp -pR' 505 fi 506else 507 as_ln_s='cp -pR' 508fi 509rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file 510rmdir conf$$.dir 2>/dev/null 511 512if mkdir -p . 2>/dev/null; then 513 as_mkdir_p='mkdir -p "$as_dir"' 514else 515 test -d ./-p && rmdir ./-p 516 as_mkdir_p=false 517fi 518 519as_test_x='test -x' 520as_executable_p=as_fn_executable_p 521 522# Sed expression to map a string onto a valid CPP name. 523as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" 524 525# Sed expression to map a string onto a valid variable name. 526as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" 527 528 529 530 531 532SHELL=${CONFIG_SHELL-/bin/sh} 533 534# How were we run? 535at_cli_args="$@" 536 537 538# Not all shells have the 'times' builtin; the subshell is needed to make 539# sure we discard the 'times: not found' message from the shell. 540at_times_p=false 541(times) >/dev/null 2>&1 && at_times_p=: 542 543# CLI Arguments to pass to the debugging scripts. 544at_debug_args= 545# -e sets to true 546at_errexit_p=false 547# Shall we be verbose? ':' means no, empty means yes. 548at_verbose=: 549at_quiet= 550# Running several jobs in parallel, 0 means as many as test groups. 551at_jobs=1 552at_traceon=: 553at_trace_echo=: 554at_check_filter_trace=: 555 556# Shall we keep the debug scripts? Must be `:' when the suite is 557# run by a debug script, so that the script doesn't remove itself. 558at_debug_p=false 559# Display help message? 560at_help_p=false 561# Display the version message? 562at_version_p=false 563# List test groups? 564at_list_p=false 565# --clean 566at_clean=false 567# Test groups to run 568at_groups= 569# Whether to rerun failed tests. 570at_recheck= 571# Whether a write failure occurred 572at_write_fail=0 573 574# The directory we run the suite in. Default to . if no -C option. 575at_dir=`pwd` 576# An absolute reference to this testsuite script. 577case $as_myself in 578 [\\/]* | ?:[\\/]* ) at_myself=$as_myself ;; 579 * ) at_myself=$at_dir/$as_myself ;; 580esac 581# Whether -C is in effect. 582at_change_dir=false 583 584# Whether to enable colored test results. 585at_color=no 586# List of the tested programs. 587at_tested='' 588# As many question marks as there are digits in the last test group number. 589# Used to normalize the test group numbers so that `ls' lists them in 590# numerical order. 591at_format='??' 592# Description of all the test groups. 593at_help_all="1;autodetect.at:17;format detection;autodetect; 5942;count.at:1;count;; 5953;env.at:17;env;; 5964;attr.at:17;attributes;; 5975;header.at:17;header;; 5986;body.at:17;body;; 5997;qget.at:17;qget access;; 6008;delete.at:17;delete;; 6019;append.at:17;append;; 60210;uid.at:17;UID;; 60311;uidvalidity.at:17;uidvalidity;; 60412;uidnext.at:17;UID monotonicity;; 60513;notify.at:17;append notification;; 60614;rospool.at:17;read-only spool directory;; 607" 608# List of the all the test groups. 609at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'` 610 611# at_fn_validate_ranges NAME... 612# ----------------------------- 613# Validate and normalize the test group number contained in each variable 614# NAME. Leading zeroes are treated as decimal. 615at_fn_validate_ranges () 616{ 617 for at_grp 618 do 619 eval at_value=\$$at_grp 620 if test $at_value -lt 1 || test $at_value -gt 14; then 621 $as_echo "invalid test group: $at_value" >&2 622 exit 1 623 fi 624 case $at_value in 625 0*) # We want to treat leading 0 as decimal, like expr and test, but 626 # AS_VAR_ARITH treats it as octal if it uses $(( )). 627 # With XSI shells, ${at_value#${at_value%%[1-9]*}} avoids the 628 # expr fork, but it is not worth the effort to determine if the 629 # shell supports XSI when the user can just avoid leading 0. 630 eval $at_grp='`expr $at_value + 0`' ;; 631 esac 632 done 633} 634 635at_prev= 636for at_option 637do 638 # If the previous option needs an argument, assign it. 639 if test -n "$at_prev"; then 640 at_option=$at_prev=$at_option 641 at_prev= 642 fi 643 644 case $at_option in 645 *=?*) at_optarg=`expr "X$at_option" : '[^=]*=\(.*\)'` ;; 646 *) at_optarg= ;; 647 esac 648 649 # Accept the important Cygnus configure options, so we can diagnose typos. 650 651 case $at_option in 652 --help | -h ) 653 at_help_p=: 654 ;; 655 656 --list | -l ) 657 at_list_p=: 658 ;; 659 660 --version | -V ) 661 at_version_p=: 662 ;; 663 664 --clean | -c ) 665 at_clean=: 666 ;; 667 668 --color ) 669 at_color=always 670 ;; 671 --color=* ) 672 case $at_optarg in 673 no | never | none) at_color=never ;; 674 auto | tty | if-tty) at_color=auto ;; 675 always | yes | force) at_color=always ;; 676 *) at_optname=`echo " $at_option" | sed 's/^ //; s/=.*//'` 677 as_fn_error $? "unrecognized argument to $at_optname: $at_optarg" ;; 678 esac 679 ;; 680 681 --debug | -d ) 682 at_debug_p=: 683 ;; 684 685 --errexit | -e ) 686 at_debug_p=: 687 at_errexit_p=: 688 ;; 689 690 --verbose | -v ) 691 at_verbose=; at_quiet=: 692 ;; 693 694 --trace | -x ) 695 at_traceon='set -x' 696 at_trace_echo=echo 697 at_check_filter_trace=at_fn_filter_trace 698 ;; 699 700 [0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]) 701 at_fn_validate_ranges at_option 702 as_fn_append at_groups "$at_option$as_nl" 703 ;; 704 705 # Ranges 706 [0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-) 707 at_range_start=`echo $at_option |tr -d X-` 708 at_fn_validate_ranges at_range_start 709 at_range=`$as_echo "$at_groups_all" | \ 710 sed -ne '/^'$at_range_start'$/,$p'` 711 as_fn_append at_groups "$at_range$as_nl" 712 ;; 713 714 -[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9]) 715 at_range_end=`echo $at_option |tr -d X-` 716 at_fn_validate_ranges at_range_end 717 at_range=`$as_echo "$at_groups_all" | \ 718 sed -ne '1,/^'$at_range_end'$/p'` 719 as_fn_append at_groups "$at_range$as_nl" 720 ;; 721 722 [0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9] | \ 723 [0-9]-[0-9][0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9] | \ 724 [0-9][0-9]-[0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9][0-9][0-9] | \ 725 [0-9][0-9][0-9]-[0-9][0-9][0-9] | \ 726 [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] | \ 727 [0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] ) 728 at_range_start=`expr $at_option : '\(.*\)-'` 729 at_range_end=`expr $at_option : '.*-\(.*\)'` 730 if test $at_range_start -gt $at_range_end; then 731 at_tmp=$at_range_end 732 at_range_end=$at_range_start 733 at_range_start=$at_tmp 734 fi 735 at_fn_validate_ranges at_range_start at_range_end 736 at_range=`$as_echo "$at_groups_all" | \ 737 sed -ne '/^'$at_range_start'$/,/^'$at_range_end'$/p'` 738 as_fn_append at_groups "$at_range$as_nl" 739 ;; 740 741 # Directory selection. 742 --directory | -C ) 743 at_prev=--directory 744 ;; 745 --directory=* ) 746 at_change_dir=: 747 at_dir=$at_optarg 748 if test x- = "x$at_dir" ; then 749 at_dir=./- 750 fi 751 ;; 752 753 # Parallel execution. 754 --jobs | -j ) 755 at_jobs=0 756 ;; 757 --jobs=* | -j[0-9]* ) 758 if test -n "$at_optarg"; then 759 at_jobs=$at_optarg 760 else 761 at_jobs=`expr X$at_option : 'X-j\(.*\)'` 762 fi 763 case $at_jobs in *[!0-9]*) 764 at_optname=`echo " $at_option" | sed 's/^ //; s/[0-9=].*//'` 765 as_fn_error $? "non-numeric argument to $at_optname: $at_jobs" ;; 766 esac 767 ;; 768 769 # Keywords. 770 --keywords | -k ) 771 at_prev=--keywords 772 ;; 773 --keywords=* ) 774 at_groups_selected=$at_help_all 775 at_save_IFS=$IFS 776 IFS=, 777 set X $at_optarg 778 shift 779 IFS=$at_save_IFS 780 for at_keyword 781 do 782 at_invert= 783 case $at_keyword in 784 '!'*) 785 at_invert="-v" 786 at_keyword=`expr "X$at_keyword" : 'X!\(.*\)'` 787 ;; 788 esac 789 # It is on purpose that we match the test group titles too. 790 at_groups_selected=`$as_echo "$at_groups_selected" | 791 grep -i $at_invert "^[1-9][^;]*;.*[; ]$at_keyword[ ;]"` 792 done 793 # Smash the keywords. 794 at_groups_selected=`$as_echo "$at_groups_selected" | sed 's/;.*//'` 795 as_fn_append at_groups "$at_groups_selected$as_nl" 796 ;; 797 --recheck) 798 at_recheck=: 799 ;; 800 801 *=*) 802 at_envvar=`expr "x$at_option" : 'x\([^=]*\)='` 803 # Reject names that are not valid shell variable names. 804 case $at_envvar in 805 '' | [0-9]* | *[!_$as_cr_alnum]* ) 806 as_fn_error $? "invalid variable name: \`$at_envvar'" ;; 807 esac 808 at_value=`$as_echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"` 809 # Export now, but save eval for later and for debug scripts. 810 export $at_envvar 811 as_fn_append at_debug_args " $at_envvar='$at_value'" 812 ;; 813 814 *) $as_echo "$as_me: invalid option: $at_option" >&2 815 $as_echo "Try \`$0 --help' for more information." >&2 816 exit 1 817 ;; 818 esac 819done 820 821# Verify our last option didn't require an argument 822if test -n "$at_prev"; then : 823 as_fn_error $? "\`$at_prev' requires an argument" 824fi 825 826# The file containing the suite. 827at_suite_log=$at_dir/$as_me.log 828 829# Selected test groups. 830if test -z "$at_groups$at_recheck"; then 831 at_groups=$at_groups_all 832else 833 if test -n "$at_recheck" && test -r "$at_suite_log"; then 834 at_oldfails=`sed -n ' 835 /^Failed tests:$/,/^Skipped tests:$/{ 836 s/^[ ]*\([1-9][0-9]*\):.*/\1/p 837 } 838 /^Unexpected passes:$/,/^## Detailed failed tests/{ 839 s/^[ ]*\([1-9][0-9]*\):.*/\1/p 840 } 841 /^## Detailed failed tests/q 842 ' "$at_suite_log"` 843 as_fn_append at_groups "$at_oldfails$as_nl" 844 fi 845 # Sort the tests, removing duplicates. 846 at_groups=`$as_echo "$at_groups" | sort -nu | sed '/^$/d'` 847fi 848 849if test x"$at_color" = xalways \ 850 || { test x"$at_color" = xauto && test -t 1; }; then 851 at_red=`printf '\033[0;31m'` 852 at_grn=`printf '\033[0;32m'` 853 at_lgn=`printf '\033[1;32m'` 854 at_blu=`printf '\033[1;34m'` 855 at_std=`printf '\033[m'` 856else 857 at_red= at_grn= at_lgn= at_blu= at_std= 858fi 859 860# Help message. 861if $at_help_p; then 862 cat <<_ATEOF || at_write_fail=1 863Usage: $0 [OPTION]... [VARIABLE=VALUE]... [TESTS] 864 865Run all the tests, or the selected TESTS, given by numeric ranges, and 866save a detailed log file. Upon failure, create debugging scripts. 867 868Do not change environment variables directly. Instead, set them via 869command line arguments. Set \`AUTOTEST_PATH' to select the executables 870to exercise. Each relative directory is expanded as build and source 871directories relative to the top level of this distribution. 872E.g., from within the build directory /tmp/foo-1.0, invoking this: 873 874 $ $0 AUTOTEST_PATH=bin 875 876is equivalent to the following, assuming the source directory is /src/foo-1.0: 877 878 PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH $0 879_ATEOF 880cat <<_ATEOF || at_write_fail=1 881 882Operation modes: 883 -h, --help print the help message, then exit 884 -V, --version print version number, then exit 885 -c, --clean remove all the files this test suite might create and exit 886 -l, --list describes all the tests, or the selected TESTS 887_ATEOF 888cat <<_ATEOF || at_write_fail=1 889 890Execution tuning: 891 -C, --directory=DIR 892 change to directory DIR before starting 893 --color[=never|auto|always] 894 enable colored test results on terminal, or always 895 -j, --jobs[=N] 896 Allow N jobs at once; infinite jobs with no arg (default 1) 897 -k, --keywords=KEYWORDS 898 select the tests matching all the comma-separated KEYWORDS 899 multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD 900 --recheck select all tests that failed or passed unexpectedly last time 901 -e, --errexit abort as soon as a test fails; implies --debug 902 -v, --verbose force more detailed output 903 default for debugging scripts 904 -d, --debug inhibit clean up and top-level logging 905 default for debugging scripts 906 -x, --trace enable tests shell tracing 907_ATEOF 908cat <<_ATEOF || at_write_fail=1 909 910Report bugs to <bug-mailutils@gnu.org>. 911General help using GNU software: <http://www.gnu.org/gethelp/>. 912_ATEOF 913 exit $at_write_fail 914fi 915 916# List of tests. 917if $at_list_p; then 918 cat <<_ATEOF || at_write_fail=1 919GNU Mailutils 3.13 test suite test groups: 920 921 NUM: FILE-NAME:LINE TEST-GROUP-NAME 922 KEYWORDS 923 924_ATEOF 925 # Pass an empty line as separator between selected groups and help. 926 $as_echo "$at_groups$as_nl$as_nl$at_help_all" | 927 awk 'NF == 1 && FS != ";" { 928 selected[$ 1] = 1 929 next 930 } 931 /^$/ { FS = ";" } 932 NF > 0 { 933 if (selected[$ 1]) { 934 printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3 935 if ($ 4) { 936 lmax = 79 937 indent = " " 938 line = indent 939 len = length (line) 940 n = split ($ 4, a, " ") 941 for (i = 1; i <= n; i++) { 942 l = length (a[i]) + 1 943 if (i > 1 && len + l > lmax) { 944 print line 945 line = indent " " a[i] 946 len = length (line) 947 } else { 948 line = line " " a[i] 949 len += l 950 } 951 } 952 if (n) 953 print line 954 } 955 } 956 }' || at_write_fail=1 957 exit $at_write_fail 958fi 959if $at_version_p; then 960 $as_echo "$as_me (GNU Mailutils 3.13)" && 961 cat <<\_ATEOF || at_write_fail=1 962 963Copyright (C) 2012 Free Software Foundation, Inc. 964This test suite is free software; the Free Software Foundation gives 965unlimited permission to copy, distribute and modify it. 966_ATEOF 967 exit $at_write_fail 968fi 969 970# Should we print banners? Yes if more than one test is run. 971case $at_groups in #( 972 *$as_nl* ) 973 at_print_banners=: ;; #( 974 * ) at_print_banners=false ;; 975esac 976# Text for banner N, set to a single space once printed. 977 978# Take any -C into account. 979if $at_change_dir ; then 980 test x != "x$at_dir" && cd "$at_dir" \ 981 || as_fn_error $? "unable to change directory" 982 at_dir=`pwd` 983fi 984 985# Load the config files for any default variable assignments. 986for at_file in atconfig atlocal 987do 988 test -r $at_file || continue 989 . ./$at_file || as_fn_error $? "invalid content: $at_file" 990done 991 992# Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix: 993: "${at_top_build_prefix=$at_top_builddir}" 994 995# Perform any assignments requested during argument parsing. 996eval "$at_debug_args" 997 998# atconfig delivers names relative to the directory the test suite is 999# in, but the groups themselves are run in testsuite-dir/group-dir. 1000if test -n "$at_top_srcdir"; then 1001 builddir=../.. 1002 for at_dir_var in srcdir top_srcdir top_build_prefix 1003 do 1004 eval at_val=\$at_$at_dir_var 1005 case $at_val in 1006 [\\/$]* | ?:[\\/]* ) at_prefix= ;; 1007 *) at_prefix=../../ ;; 1008 esac 1009 eval "$at_dir_var=\$at_prefix\$at_val" 1010 done 1011fi 1012 1013## -------------------- ## 1014## Directory structure. ## 1015## -------------------- ## 1016 1017# This is the set of directories and files used by this script 1018# (non-literals are capitalized): 1019# 1020# TESTSUITE - the testsuite 1021# TESTSUITE.log - summarizes the complete testsuite run 1022# TESTSUITE.dir/ - created during a run, remains after -d or failed test 1023# + at-groups/ - during a run: status of all groups in run 1024# | + NNN/ - during a run: meta-data about test group NNN 1025# | | + check-line - location (source file and line) of current AT_CHECK 1026# | | + status - exit status of current AT_CHECK 1027# | | + stdout - stdout of current AT_CHECK 1028# | | + stder1 - stderr, including trace 1029# | | + stderr - stderr, with trace filtered out 1030# | | + test-source - portion of testsuite that defines group 1031# | | + times - timestamps for computing duration 1032# | | + pass - created if group passed 1033# | | + xpass - created if group xpassed 1034# | | + fail - created if group failed 1035# | | + xfail - created if group xfailed 1036# | | + skip - created if group skipped 1037# + at-stop - during a run: end the run if this file exists 1038# + at-source-lines - during a run: cache of TESTSUITE line numbers for extraction 1039# + 0..NNN/ - created for each group NNN, remains after -d or failed test 1040# | + TESTSUITE.log - summarizes the group results 1041# | + ... - files created during the group 1042 1043# The directory the whole suite works in. 1044# Should be absolute to let the user `cd' at will. 1045at_suite_dir=$at_dir/$as_me.dir 1046# The file containing the suite ($at_dir might have changed since earlier). 1047at_suite_log=$at_dir/$as_me.log 1048# The directory containing helper files per test group. 1049at_helper_dir=$at_suite_dir/at-groups 1050# Stop file: if it exists, do not start new jobs. 1051at_stop_file=$at_suite_dir/at-stop 1052# The fifo used for the job dispatcher. 1053at_job_fifo=$at_suite_dir/at-job-fifo 1054 1055if $at_clean; then 1056 test -d "$at_suite_dir" && 1057 find "$at_suite_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \; 1058 rm -f -r "$at_suite_dir" "$at_suite_log" 1059 exit $? 1060fi 1061 1062# Don't take risks: use only absolute directories in PATH. 1063# 1064# For stand-alone test suites (ie. atconfig was not found), 1065# AUTOTEST_PATH is relative to `.'. 1066# 1067# For embedded test suites, AUTOTEST_PATH is relative to the top level 1068# of the package. Then expand it into build/src parts, since users 1069# may create executables in both places. 1070AUTOTEST_PATH=`$as_echo "$AUTOTEST_PATH" | sed "s|:|$PATH_SEPARATOR|g"` 1071at_path= 1072as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 1073for as_dir in $AUTOTEST_PATH $PATH 1074do 1075 IFS=$as_save_IFS 1076 test -z "$as_dir" && as_dir=. 1077 test -n "$at_path" && as_fn_append at_path $PATH_SEPARATOR 1078case $as_dir in 1079 [\\/]* | ?:[\\/]* ) 1080 as_fn_append at_path "$as_dir" 1081 ;; 1082 * ) 1083 if test -z "$at_top_build_prefix"; then 1084 # Stand-alone test suite. 1085 as_fn_append at_path "$as_dir" 1086 else 1087 # Embedded test suite. 1088 as_fn_append at_path "$at_top_build_prefix$as_dir$PATH_SEPARATOR" 1089 as_fn_append at_path "$at_top_srcdir/$as_dir" 1090 fi 1091 ;; 1092esac 1093 done 1094IFS=$as_save_IFS 1095 1096 1097# Now build and simplify PATH. 1098# 1099# There might be directories that don't exist, but don't redirect 1100# builtins' (eg., cd) stderr directly: Ultrix's sh hates that. 1101at_new_path= 1102as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 1103for as_dir in $at_path 1104do 1105 IFS=$as_save_IFS 1106 test -z "$as_dir" && as_dir=. 1107 test -d "$as_dir" || continue 1108case $as_dir in 1109 [\\/]* | ?:[\\/]* ) ;; 1110 * ) as_dir=`(cd "$as_dir" && pwd) 2>/dev/null` ;; 1111esac 1112case $PATH_SEPARATOR$at_new_path$PATH_SEPARATOR in 1113 *$PATH_SEPARATOR$as_dir$PATH_SEPARATOR*) ;; 1114 $PATH_SEPARATOR$PATH_SEPARATOR) at_new_path=$as_dir ;; 1115 *) as_fn_append at_new_path "$PATH_SEPARATOR$as_dir" ;; 1116esac 1117 done 1118IFS=$as_save_IFS 1119 1120PATH=$at_new_path 1121export PATH 1122 1123# Setting up the FDs. 1124 1125 1126 1127# 5 is the log file. Not to be overwritten if `-d'. 1128if $at_debug_p; then 1129 at_suite_log=/dev/null 1130else 1131 : >"$at_suite_log" 1132fi 1133exec 5>>"$at_suite_log" 1134 1135# Banners and logs. 1136$as_echo "## ------------------------------ ## 1137## GNU Mailutils 3.13 test suite. ## 1138## ------------------------------ ##" 1139{ 1140 $as_echo "## ------------------------------ ## 1141## GNU Mailutils 3.13 test suite. ## 1142## ------------------------------ ##" 1143 echo 1144 1145 $as_echo "$as_me: command line was:" 1146 $as_echo " \$ $0 $at_cli_args" 1147 echo 1148 1149 # If ChangeLog exists, list a few lines in case it might help determining 1150 # the exact version. 1151 if test -n "$at_top_srcdir" && test -f "$at_top_srcdir/ChangeLog"; then 1152 $as_echo "## ---------- ## 1153## ChangeLog. ## 1154## ---------- ##" 1155 echo 1156 sed 's/^/| /;10q' "$at_top_srcdir/ChangeLog" 1157 echo 1158 fi 1159 1160 { 1161cat <<_ASUNAME 1162## --------- ## 1163## Platform. ## 1164## --------- ## 1165 1166hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` 1167uname -m = `(uname -m) 2>/dev/null || echo unknown` 1168uname -r = `(uname -r) 2>/dev/null || echo unknown` 1169uname -s = `(uname -s) 2>/dev/null || echo unknown` 1170uname -v = `(uname -v) 2>/dev/null || echo unknown` 1171 1172/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` 1173/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` 1174 1175/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` 1176/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` 1177/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` 1178/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` 1179/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` 1180/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` 1181/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` 1182 1183_ASUNAME 1184 1185as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 1186for as_dir in $PATH 1187do 1188 IFS=$as_save_IFS 1189 test -z "$as_dir" && as_dir=. 1190 $as_echo "PATH: $as_dir" 1191 done 1192IFS=$as_save_IFS 1193 1194} 1195 echo 1196 1197 # Contents of the config files. 1198 for at_file in atconfig atlocal 1199 do 1200 test -r $at_file || continue 1201 $as_echo "$as_me: $at_file:" 1202 sed 's/^/| /' $at_file 1203 echo 1204 done 1205} >&5 1206 1207# This setting is needed on FreeBSD to ensure the LD_LIBRARY_PATH overrides 1208# the DT_RPATH tag in ELF header. See 1209# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27510 1210# for details. 1211LD_LIBRARY_PATH_RPATH=y 1212export LD_LIBRARY_PATH_RPATH 1213 1214 1215## ------------------------- ## 1216## Autotest shell functions. ## 1217## ------------------------- ## 1218 1219# at_fn_banner NUMBER 1220# ------------------- 1221# Output banner NUMBER, provided the testsuite is running multiple groups and 1222# this particular banner has not yet been printed. 1223at_fn_banner () 1224{ 1225 $at_print_banners || return 0 1226 eval at_banner_text=\$at_banner_text_$1 1227 test "x$at_banner_text" = "x " && return 0 1228 eval "at_banner_text_$1=\" \"" 1229 if test -z "$at_banner_text"; then 1230 $at_first || echo 1231 else 1232 $as_echo "$as_nl$at_banner_text$as_nl" 1233 fi 1234} # at_fn_banner 1235 1236# at_fn_check_prepare_notrace REASON LINE 1237# --------------------------------------- 1238# Perform AT_CHECK preparations for the command at LINE for an untraceable 1239# command; REASON is the reason for disabling tracing. 1240at_fn_check_prepare_notrace () 1241{ 1242 $at_trace_echo "Not enabling shell tracing (command contains $1)" 1243 $as_echo "$2" >"$at_check_line_file" 1244 at_check_trace=: at_check_filter=: 1245 : >"$at_stdout"; : >"$at_stderr" 1246} 1247 1248# at_fn_check_prepare_trace LINE 1249# ------------------------------ 1250# Perform AT_CHECK preparations for the command at LINE for a traceable 1251# command. 1252at_fn_check_prepare_trace () 1253{ 1254 $as_echo "$1" >"$at_check_line_file" 1255 at_check_trace=$at_traceon at_check_filter=$at_check_filter_trace 1256 : >"$at_stdout"; : >"$at_stderr" 1257} 1258 1259# at_fn_check_prepare_dynamic COMMAND LINE 1260# ---------------------------------------- 1261# Decide if COMMAND at LINE is traceable at runtime, and call the appropriate 1262# preparation function. 1263at_fn_check_prepare_dynamic () 1264{ 1265 case $1 in 1266 *$as_nl*) 1267 at_fn_check_prepare_notrace 'an embedded newline' "$2" ;; 1268 *) 1269 at_fn_check_prepare_trace "$2" ;; 1270 esac 1271} 1272 1273# at_fn_filter_trace 1274# ------------------ 1275# Remove the lines in the file "$at_stderr" generated by "set -x" and print 1276# them to stderr. 1277at_fn_filter_trace () 1278{ 1279 mv "$at_stderr" "$at_stder1" 1280 grep '^ *+' "$at_stder1" >&2 1281 grep -v '^ *+' "$at_stder1" >"$at_stderr" 1282} 1283 1284# at_fn_log_failure FILE-LIST 1285# --------------------------- 1286# Copy the files in the list on stdout with a "> " prefix, and exit the shell 1287# with a failure exit code. 1288at_fn_log_failure () 1289{ 1290 for file 1291 do $as_echo "$file:"; sed 's/^/> /' "$file"; done 1292 echo 1 > "$at_status_file" 1293 exit 1 1294} 1295 1296# at_fn_check_skip EXIT-CODE LINE 1297# ------------------------------- 1298# Check whether EXIT-CODE is a special exit code (77 or 99), and if so exit 1299# the test group subshell with that same exit code. Use LINE in any report 1300# about test failure. 1301at_fn_check_skip () 1302{ 1303 case $1 in 1304 99) echo 99 > "$at_status_file"; at_failed=: 1305 $as_echo "$2: hard failure"; exit 99;; 1306 77) echo 77 > "$at_status_file"; exit 77;; 1307 esac 1308} 1309 1310# at_fn_check_status EXPECTED EXIT-CODE LINE 1311# ------------------------------------------ 1312# Check whether EXIT-CODE is the EXPECTED exit code, and if so do nothing. 1313# Otherwise, if it is 77 or 99, exit the test group subshell with that same 1314# exit code; if it is anything else print an error message referring to LINE, 1315# and fail the test. 1316at_fn_check_status () 1317{ 1318 case $2 in 1319 $1 ) ;; 1320 77) echo 77 > "$at_status_file"; exit 77;; 1321 99) echo 99 > "$at_status_file"; at_failed=: 1322 $as_echo "$3: hard failure"; exit 99;; 1323 *) $as_echo "$3: exit code was $2, expected $1" 1324 at_failed=:;; 1325 esac 1326} 1327 1328# at_fn_diff_devnull FILE 1329# ----------------------- 1330# Emit a diff between /dev/null and FILE. Uses "test -s" to avoid useless diff 1331# invocations. 1332at_fn_diff_devnull () 1333{ 1334 test -s "$1" || return 0 1335 $at_diff "$at_devnull" "$1" 1336} 1337 1338# at_fn_test NUMBER 1339# ----------------- 1340# Parse out test NUMBER from the tail of this file. 1341at_fn_test () 1342{ 1343 eval at_sed=\$at_sed$1 1344 sed "$at_sed" "$at_myself" > "$at_test_source" 1345} 1346 1347# at_fn_create_debugging_script 1348# ----------------------------- 1349# Create the debugging script $at_group_dir/run which will reproduce the 1350# current test group. 1351at_fn_create_debugging_script () 1352{ 1353 { 1354 echo "#! /bin/sh" && 1355 echo 'test "${ZSH_VERSION+set}" = set && alias -g '\''${1+"$@"}'\''='\''"$@"'\''' && 1356 $as_echo "cd '$at_dir'" && 1357 $as_echo "exec \${CONFIG_SHELL-$SHELL} \"$at_myself\" -v -d $at_debug_args $at_group \${1+\"\$@\"}" && 1358 echo 'exit 1' 1359 } >"$at_group_dir/run" && 1360 chmod +x "$at_group_dir/run" 1361} 1362 1363## -------------------------------- ## 1364## End of autotest shell functions. ## 1365## -------------------------------- ## 1366{ 1367 $as_echo "## ---------------- ## 1368## Tested programs. ## 1369## ---------------- ##" 1370 echo 1371} >&5 1372 1373# Report what programs are being tested. 1374for at_program in : $at_tested 1375do 1376 test "$at_program" = : && continue 1377 case $at_program in 1378 [\\/]* | ?:[\\/]* ) $at_program_=$at_program ;; 1379 * ) 1380 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 1381for as_dir in $PATH 1382do 1383 IFS=$as_save_IFS 1384 test -z "$as_dir" && as_dir=. 1385 test -f "$as_dir/$at_program" && break 1386 done 1387IFS=$as_save_IFS 1388 1389 at_program_=$as_dir/$at_program ;; 1390 esac 1391 if test -f "$at_program_"; then 1392 { 1393 $as_echo "$at_srcdir/testsuite.at:19: $at_program_ --version" 1394 "$at_program_" --version </dev/null 1395 echo 1396 } >&5 2>&1 1397 else 1398 as_fn_error $? "cannot find $at_program" "$LINENO" 5 1399 fi 1400done 1401 1402{ 1403 $as_echo "## ------------------ ## 1404## Running the tests. ## 1405## ------------------ ##" 1406} >&5 1407 1408at_start_date=`date` 1409at_start_time=`date +%s 2>/dev/null` 1410$as_echo "$as_me: starting at: $at_start_date" >&5 1411 1412# Create the master directory if it doesn't already exist. 1413as_dir="$at_suite_dir"; as_fn_mkdir_p || 1414 as_fn_error $? "cannot create \`$at_suite_dir'" "$LINENO" 5 1415 1416# Can we diff with `/dev/null'? DU 5.0 refuses. 1417if diff /dev/null /dev/null >/dev/null 2>&1; then 1418 at_devnull=/dev/null 1419else 1420 at_devnull=$at_suite_dir/devnull 1421 >"$at_devnull" 1422fi 1423 1424# Use `diff -u' when possible. 1425if at_diff=`diff -u "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_diff" 1426then 1427 at_diff='diff -u' 1428else 1429 at_diff=diff 1430fi 1431 1432# Get the last needed group. 1433for at_group in : $at_groups; do :; done 1434 1435# Extract the start and end lines of each test group at the tail 1436# of this file 1437awk ' 1438BEGIN { FS="" } 1439/^#AT_START_/ { 1440 start = NR 1441} 1442/^#AT_STOP_/ { 1443 test = substr ($ 0, 10) 1444 print "at_sed" test "=\"1," start "d;" (NR-1) "q\"" 1445 if (test == "'"$at_group"'") exit 1446}' "$at_myself" > "$at_suite_dir/at-source-lines" && 1447. "$at_suite_dir/at-source-lines" || 1448 as_fn_error $? "cannot create test line number cache" "$LINENO" 5 1449rm -f "$at_suite_dir/at-source-lines" 1450 1451# Set number of jobs for `-j'; avoid more jobs than test groups. 1452set X $at_groups; shift; at_max_jobs=$# 1453if test $at_max_jobs -eq 0; then 1454 at_jobs=1 1455fi 1456if test $at_jobs -ne 1 && 1457 { test $at_jobs -eq 0 || test $at_jobs -gt $at_max_jobs; }; then 1458 at_jobs=$at_max_jobs 1459fi 1460 1461# If parallel mode, don't output banners, don't split summary lines. 1462if test $at_jobs -ne 1; then 1463 at_print_banners=false 1464 at_quiet=: 1465fi 1466 1467# Set up helper dirs. 1468rm -rf "$at_helper_dir" && 1469mkdir "$at_helper_dir" && 1470cd "$at_helper_dir" && 1471{ test -z "$at_groups" || mkdir $at_groups; } || 1472as_fn_error $? "testsuite directory setup failed" "$LINENO" 5 1473 1474# Functions for running a test group. We leave the actual 1475# test group execution outside of a shell function in order 1476# to avoid hitting zsh 4.x exit status bugs. 1477 1478# at_fn_group_prepare 1479# ------------------- 1480# Prepare for running a test group. 1481at_fn_group_prepare () 1482{ 1483 # The directory for additional per-group helper files. 1484 at_job_dir=$at_helper_dir/$at_group 1485 # The file containing the location of the last AT_CHECK. 1486 at_check_line_file=$at_job_dir/check-line 1487 # The file containing the exit status of the last command. 1488 at_status_file=$at_job_dir/status 1489 # The files containing the output of the tested commands. 1490 at_stdout=$at_job_dir/stdout 1491 at_stder1=$at_job_dir/stder1 1492 at_stderr=$at_job_dir/stderr 1493 # The file containing the code for a test group. 1494 at_test_source=$at_job_dir/test-source 1495 # The file containing dates. 1496 at_times_file=$at_job_dir/times 1497 1498 # Be sure to come back to the top test directory. 1499 cd "$at_suite_dir" 1500 1501 # Clearly separate the test groups when verbose. 1502 $at_first || $at_verbose echo 1503 1504 at_group_normalized=$at_group 1505 1506 eval 'while :; do 1507 case $at_group_normalized in #( 1508 '"$at_format"'*) break;; 1509 esac 1510 at_group_normalized=0$at_group_normalized 1511 done' 1512 1513 1514 # Create a fresh directory for the next test group, and enter. 1515 # If one already exists, the user may have invoked ./run from 1516 # within that directory; we remove the contents, but not the 1517 # directory itself, so that we aren't pulling the rug out from 1518 # under the shell's notion of the current directory. 1519 at_group_dir=$at_suite_dir/$at_group_normalized 1520 at_group_log=$at_group_dir/$as_me.log 1521 if test -d "$at_group_dir"; then 1522 find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx {} \; 1523 rm -fr "$at_group_dir"/* "$at_group_dir"/.[!.] "$at_group_dir"/.??* 1524fi || 1525 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: test directory for $at_group_normalized could not be cleaned" >&5 1526$as_echo "$as_me: WARNING: test directory for $at_group_normalized could not be cleaned" >&2;} 1527 # Be tolerant if the above `rm' was not able to remove the directory. 1528 as_dir="$at_group_dir"; as_fn_mkdir_p 1529 1530 echo 0 > "$at_status_file" 1531 1532 # In verbose mode, append to the log file *and* show on 1533 # the standard output; in quiet mode only write to the log. 1534 if test -z "$at_verbose"; then 1535 at_tee_pipe='tee -a "$at_group_log"' 1536 else 1537 at_tee_pipe='cat >> "$at_group_log"' 1538 fi 1539} 1540 1541# at_fn_group_banner ORDINAL LINE DESC PAD [BANNER] 1542# ------------------------------------------------- 1543# Declare the test group ORDINAL, located at LINE with group description DESC, 1544# and residing under BANNER. Use PAD to align the status column. 1545at_fn_group_banner () 1546{ 1547 at_setup_line="$2" 1548 test -n "$5" && at_fn_banner $5 1549 at_desc="$3" 1550 case $1 in 1551 [0-9]) at_desc_line=" $1: ";; 1552 [0-9][0-9]) at_desc_line=" $1: " ;; 1553 *) at_desc_line="$1: " ;; 1554 esac 1555 as_fn_append at_desc_line "$3$4" 1556 $at_quiet $as_echo_n "$at_desc_line" 1557 echo "# -*- compilation -*-" >> "$at_group_log" 1558} 1559 1560# at_fn_group_postprocess 1561# ----------------------- 1562# Perform cleanup after running a test group. 1563at_fn_group_postprocess () 1564{ 1565 # Be sure to come back to the suite directory, in particular 1566 # since below we might `rm' the group directory we are in currently. 1567 cd "$at_suite_dir" 1568 1569 if test ! -f "$at_check_line_file"; then 1570 sed "s/^ */$as_me: WARNING: /" <<_ATEOF 1571 A failure happened in a test group before any test could be 1572 run. This means that test suite is improperly designed. Please 1573 report this failure to <bug-mailutils@gnu.org>. 1574_ATEOF 1575 $as_echo "$at_setup_line" >"$at_check_line_file" 1576 at_status=99 1577 fi 1578 $at_verbose $as_echo_n "$at_group. $at_setup_line: " 1579 $as_echo_n "$at_group. $at_setup_line: " >> "$at_group_log" 1580 case $at_xfail:$at_status in 1581 yes:0) 1582 at_msg="UNEXPECTED PASS" 1583 at_res=xpass 1584 at_errexit=$at_errexit_p 1585 at_color=$at_red 1586 ;; 1587 no:0) 1588 at_msg="ok" 1589 at_res=pass 1590 at_errexit=false 1591 at_color=$at_grn 1592 ;; 1593 *:77) 1594 at_msg='skipped ('`cat "$at_check_line_file"`')' 1595 at_res=skip 1596 at_errexit=false 1597 at_color=$at_blu 1598 ;; 1599 no:* | *:99) 1600 at_msg='FAILED ('`cat "$at_check_line_file"`')' 1601 at_res=fail 1602 at_errexit=$at_errexit_p 1603 at_color=$at_red 1604 ;; 1605 yes:*) 1606 at_msg='expected failure ('`cat "$at_check_line_file"`')' 1607 at_res=xfail 1608 at_errexit=false 1609 at_color=$at_lgn 1610 ;; 1611 esac 1612 echo "$at_res" > "$at_job_dir/$at_res" 1613 # In parallel mode, output the summary line only afterwards. 1614 if test $at_jobs -ne 1 && test -n "$at_verbose"; then 1615 $as_echo "$at_desc_line $at_color$at_msg$at_std" 1616 else 1617 # Make sure there is a separator even with long titles. 1618 $as_echo " $at_color$at_msg$at_std" 1619 fi 1620 at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg" 1621 case $at_status in 1622 0|77) 1623 # $at_times_file is only available if the group succeeded. 1624 # We're not including the group log, so the success message 1625 # is written in the global log separately. But we also 1626 # write to the group log in case they're using -d. 1627 if test -f "$at_times_file"; then 1628 at_log_msg="$at_log_msg ("`sed 1d "$at_times_file"`')' 1629 rm -f "$at_times_file" 1630 fi 1631 $as_echo "$at_log_msg" >> "$at_group_log" 1632 $as_echo "$at_log_msg" >&5 1633 1634 # Cleanup the group directory, unless the user wants the files 1635 # or the success was unexpected. 1636 if $at_debug_p || test $at_res = xpass; then 1637 at_fn_create_debugging_script 1638 if test $at_res = xpass && $at_errexit; then 1639 echo stop > "$at_stop_file" 1640 fi 1641 else 1642 if test -d "$at_group_dir"; then 1643 find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \; 1644 rm -fr "$at_group_dir" 1645 fi 1646 rm -f "$at_test_source" 1647 fi 1648 ;; 1649 *) 1650 # Upon failure, include the log into the testsuite's global 1651 # log. The failure message is written in the group log. It 1652 # is later included in the global log. 1653 $as_echo "$at_log_msg" >> "$at_group_log" 1654 1655 # Upon failure, keep the group directory for autopsy, and create 1656 # the debugging script. With -e, do not start any further tests. 1657 at_fn_create_debugging_script 1658 if $at_errexit; then 1659 echo stop > "$at_stop_file" 1660 fi 1661 ;; 1662 esac 1663} 1664 1665 1666## ------------ ## 1667## Driver loop. ## 1668## ------------ ## 1669 1670 1671if (set -m && set +m && set +b) >/dev/null 2>&1; then 1672 set +b 1673 at_job_control_on='set -m' at_job_control_off='set +m' at_job_group=- 1674else 1675 at_job_control_on=: at_job_control_off=: at_job_group= 1676fi 1677 1678for at_signal in 1 2 15; do 1679 trap 'set +x; set +e 1680 $at_job_control_off 1681 at_signal='"$at_signal"' 1682 echo stop > "$at_stop_file" 1683 trap "" $at_signal 1684 at_pgids= 1685 for at_pgid in `jobs -p 2>/dev/null`; do 1686 at_pgids="$at_pgids $at_job_group$at_pgid" 1687 done 1688 test -z "$at_pgids" || kill -$at_signal $at_pgids 2>/dev/null 1689 wait 1690 if test "$at_jobs" -eq 1 || test -z "$at_verbose"; then 1691 echo >&2 1692 fi 1693 at_signame=`kill -l $at_signal 2>&1 || echo $at_signal` 1694 set x $at_signame 1695 test 0 -gt 2 && at_signame=$at_signal 1696 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: caught signal $at_signame, bailing out" >&5 1697$as_echo "$as_me: WARNING: caught signal $at_signame, bailing out" >&2;} 1698 as_fn_arith 128 + $at_signal && exit_status=$as_val 1699 as_fn_exit $exit_status' $at_signal 1700done 1701 1702rm -f "$at_stop_file" 1703at_first=: 1704 1705if test $at_jobs -ne 1 && 1706 rm -f "$at_job_fifo" && 1707 test -n "$at_job_group" && 1708 ( mkfifo "$at_job_fifo" && trap 'exit 1' PIPE STOP TSTP ) 2>/dev/null 1709then 1710 # FIFO job dispatcher. 1711 1712 trap 'at_pids= 1713 for at_pid in `jobs -p`; do 1714 at_pids="$at_pids $at_job_group$at_pid" 1715 done 1716 if test -n "$at_pids"; then 1717 at_sig=TSTP 1718 test "${TMOUT+set}" = set && at_sig=STOP 1719 kill -$at_sig $at_pids 2>/dev/null 1720 fi 1721 kill -STOP $$ 1722 test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP 1723 1724 echo 1725 # Turn jobs into a list of numbers, starting from 1. 1726 at_joblist=`$as_echo "$at_groups" | sed -n 1,${at_jobs}p` 1727 1728 set X $at_joblist 1729 shift 1730 for at_group in $at_groups; do 1731 $at_job_control_on 2>/dev/null 1732 ( 1733 # Start one test group. 1734 $at_job_control_off 1735 if $at_first; then 1736 exec 7>"$at_job_fifo" 1737 else 1738 exec 6<&- 1739 fi 1740 trap 'set +x; set +e 1741 trap "" PIPE 1742 echo stop > "$at_stop_file" 1743 echo >&7 1744 as_fn_exit 141' PIPE 1745 at_fn_group_prepare 1746 if cd "$at_group_dir" && 1747 at_fn_test $at_group && 1748 . "$at_test_source" 1749 then :; else 1750 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5 1751$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;} 1752 at_failed=: 1753 fi 1754 at_fn_group_postprocess 1755 echo >&7 1756 ) & 1757 $at_job_control_off 1758 if $at_first; then 1759 at_first=false 1760 exec 6<"$at_job_fifo" 7>"$at_job_fifo" 1761 fi 1762 shift # Consume one token. 1763 if test $# -gt 0; then :; else 1764 read at_token <&6 || break 1765 set x $* 1766 fi 1767 test -f "$at_stop_file" && break 1768 done 1769 exec 7>&- 1770 # Read back the remaining ($at_jobs - 1) tokens. 1771 set X $at_joblist 1772 shift 1773 if test $# -gt 0; then 1774 shift 1775 for at_job 1776 do 1777 read at_token 1778 done <&6 1779 fi 1780 exec 6<&- 1781 wait 1782else 1783 # Run serially, avoid forks and other potential surprises. 1784 for at_group in $at_groups; do 1785 at_fn_group_prepare 1786 if cd "$at_group_dir" && 1787 at_fn_test $at_group && 1788 . "$at_test_source"; then :; else 1789 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5 1790$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;} 1791 at_failed=: 1792 fi 1793 at_fn_group_postprocess 1794 test -f "$at_stop_file" && break 1795 at_first=false 1796 done 1797fi 1798 1799# Wrap up the test suite with summary statistics. 1800cd "$at_helper_dir" 1801 1802# Use ?..???? when the list must remain sorted, the faster * otherwise. 1803at_pass_list=`for f in */pass; do echo $f; done | sed '/\*/d; s,/pass,,'` 1804at_skip_list=`for f in */skip; do echo $f; done | sed '/\*/d; s,/skip,,'` 1805at_xfail_list=`for f in */xfail; do echo $f; done | sed '/\*/d; s,/xfail,,'` 1806at_xpass_list=`for f in ?/xpass ??/xpass ???/xpass ????/xpass; do 1807 echo $f; done | sed '/?/d; s,/xpass,,'` 1808at_fail_list=`for f in ?/fail ??/fail ???/fail ????/fail; do 1809 echo $f; done | sed '/?/d; s,/fail,,'` 1810 1811set X $at_pass_list $at_xpass_list $at_xfail_list $at_fail_list $at_skip_list 1812shift; at_group_count=$# 1813set X $at_xpass_list; shift; at_xpass_count=$#; at_xpass_list=$* 1814set X $at_xfail_list; shift; at_xfail_count=$# 1815set X $at_fail_list; shift; at_fail_count=$#; at_fail_list=$* 1816set X $at_skip_list; shift; at_skip_count=$# 1817 1818as_fn_arith $at_group_count - $at_skip_count && at_run_count=$as_val 1819as_fn_arith $at_xpass_count + $at_fail_count && at_unexpected_count=$as_val 1820as_fn_arith $at_xfail_count + $at_fail_count && at_total_fail_count=$as_val 1821 1822# Back to the top directory. 1823cd "$at_dir" 1824rm -rf "$at_helper_dir" 1825 1826# Compute the duration of the suite. 1827at_stop_date=`date` 1828at_stop_time=`date +%s 2>/dev/null` 1829$as_echo "$as_me: ending at: $at_stop_date" >&5 1830case $at_start_time,$at_stop_time in 1831 [0-9]*,[0-9]*) 1832 as_fn_arith $at_stop_time - $at_start_time && at_duration_s=$as_val 1833 as_fn_arith $at_duration_s / 60 && at_duration_m=$as_val 1834 as_fn_arith $at_duration_m / 60 && at_duration_h=$as_val 1835 as_fn_arith $at_duration_s % 60 && at_duration_s=$as_val 1836 as_fn_arith $at_duration_m % 60 && at_duration_m=$as_val 1837 at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s" 1838 $as_echo "$as_me: test suite duration: $at_duration" >&5 1839 ;; 1840esac 1841 1842echo 1843$as_echo "## ------------- ## 1844## Test results. ## 1845## ------------- ##" 1846echo 1847{ 1848 echo 1849 $as_echo "## ------------- ## 1850## Test results. ## 1851## ------------- ##" 1852 echo 1853} >&5 1854 1855if test $at_run_count = 1; then 1856 at_result="1 test" 1857 at_were=was 1858else 1859 at_result="$at_run_count tests" 1860 at_were=were 1861fi 1862if $at_errexit_p && test $at_unexpected_count != 0; then 1863 if test $at_xpass_count = 1; then 1864 at_result="$at_result $at_were run, one passed" 1865 else 1866 at_result="$at_result $at_were run, one failed" 1867 fi 1868 at_result="$at_result unexpectedly and inhibited subsequent tests." 1869 at_color=$at_red 1870else 1871 # Don't you just love exponential explosion of the number of cases? 1872 at_color=$at_red 1873 case $at_xpass_count:$at_fail_count:$at_xfail_count in 1874 # So far, so good. 1875 0:0:0) at_result="$at_result $at_were successful." at_color=$at_grn ;; 1876 0:0:*) at_result="$at_result behaved as expected." at_color=$at_lgn ;; 1877 1878 # Some unexpected failures 1879 0:*:0) at_result="$at_result $at_were run, 1880$at_fail_count failed unexpectedly." ;; 1881 1882 # Some failures, both expected and unexpected 1883 0:*:1) at_result="$at_result $at_were run, 1884$at_total_fail_count failed ($at_xfail_count expected failure)." ;; 1885 0:*:*) at_result="$at_result $at_were run, 1886$at_total_fail_count failed ($at_xfail_count expected failures)." ;; 1887 1888 # No unexpected failures, but some xpasses 1889 *:0:*) at_result="$at_result $at_were run, 1890$at_xpass_count passed unexpectedly." ;; 1891 1892 # No expected failures, but failures and xpasses 1893 *:1:0) at_result="$at_result $at_were run, 1894$at_unexpected_count did not behave as expected ($at_fail_count unexpected failure)." ;; 1895 *:*:0) at_result="$at_result $at_were run, 1896$at_unexpected_count did not behave as expected ($at_fail_count unexpected failures)." ;; 1897 1898 # All of them. 1899 *:*:1) at_result="$at_result $at_were run, 1900$at_xpass_count passed unexpectedly, 1901$at_total_fail_count failed ($at_xfail_count expected failure)." ;; 1902 *:*:*) at_result="$at_result $at_were run, 1903$at_xpass_count passed unexpectedly, 1904$at_total_fail_count failed ($at_xfail_count expected failures)." ;; 1905 esac 1906 1907 if test $at_skip_count = 0 && test $at_run_count -gt 1; then 1908 at_result="All $at_result" 1909 fi 1910fi 1911 1912# Now put skips in the mix. 1913case $at_skip_count in 1914 0) ;; 1915 1) at_result="$at_result 19161 test was skipped." ;; 1917 *) at_result="$at_result 1918$at_skip_count tests were skipped." ;; 1919esac 1920 1921if test $at_unexpected_count = 0; then 1922 echo "$at_color$at_result$at_std" 1923 echo "$at_result" >&5 1924else 1925 echo "${at_color}ERROR: $at_result$at_std" >&2 1926 echo "ERROR: $at_result" >&5 1927 { 1928 echo 1929 $as_echo "## ------------------------ ## 1930## Summary of the failures. ## 1931## ------------------------ ##" 1932 1933 # Summary of failed and skipped tests. 1934 if test $at_fail_count != 0; then 1935 echo "Failed tests:" 1936 $SHELL "$at_myself" $at_fail_list --list 1937 echo 1938 fi 1939 if test $at_skip_count != 0; then 1940 echo "Skipped tests:" 1941 $SHELL "$at_myself" $at_skip_list --list 1942 echo 1943 fi 1944 if test $at_xpass_count != 0; then 1945 echo "Unexpected passes:" 1946 $SHELL "$at_myself" $at_xpass_list --list 1947 echo 1948 fi 1949 if test $at_fail_count != 0; then 1950 $as_echo "## ---------------------- ## 1951## Detailed failed tests. ## 1952## ---------------------- ##" 1953 echo 1954 for at_group in $at_fail_list 1955 do 1956 at_group_normalized=$at_group 1957 1958 eval 'while :; do 1959 case $at_group_normalized in #( 1960 '"$at_format"'*) break;; 1961 esac 1962 at_group_normalized=0$at_group_normalized 1963 done' 1964 1965 cat "$at_suite_dir/$at_group_normalized/$as_me.log" 1966 echo 1967 done 1968 echo 1969 fi 1970 if test -n "$at_top_srcdir"; then 1971 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX 1972## ${at_top_build_prefix}config.log ## 1973_ASBOX 1974 sed 's/^/| /' ${at_top_build_prefix}config.log 1975 echo 1976 fi 1977 } >&5 1978 1979 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX 1980## $as_me.log was created. ## 1981_ASBOX 1982 1983 echo 1984 if $at_debug_p; then 1985 at_msg='per-test log files' 1986 else 1987 at_msg="\`${at_testdir+${at_testdir}/}$as_me.log'" 1988 fi 1989 $as_echo "Please send $at_msg and all information you think might help: 1990 1991 To: <bug-mailutils@gnu.org> 1992 Subject: [GNU Mailutils 3.13] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} 1993 1994You may investigate any problem if you feel able to do so, in which 1995case the test suite provides a good starting point. Its output may 1996be found below \`${at_testdir+${at_testdir}/}$as_me.dir'. 1997" 1998 exit 1 1999fi 2000 2001exit 0 2002 2003## ------------- ## 2004## Actual tests. ## 2005## ------------- ## 2006#AT_START_1 2007at_fn_group_banner 1 'autodetect.at:17' \ 2008 "format detection" " " 2009at_xfail=no 2010( 2011 $as_echo "1. $at_setup_line: testing $at_desc ..." 2012 $at_traceon 2013 2014 2015{ set +x 2016$as_echo "$at_srcdir/autodetect.at:19: 2017: >empty 2018 2019# Valid mbox 2020cat >mbox <<'_ATEOF' 2021From user Wed Dec 2 05:53:22 1992 2022From: Sergey <gray@example.net> 2023To: Alice <alice@wonder.land> 2024Subject: Test message 2025 2026Test 2027_ATEOF 2028 2029 2030# Bad mbox 2031cat >malformed <<'_ATEOF' 2032From ... 2033From: Sergey <gray@example.net> 2034To: Alice <alice@wonder.land> 2035Subject: Test message 2036 2037Test 2038_ATEOF 2039 2040 2041export MU_AUTODETECT_ACCURACY 2042for MU_AUTODETECT_ACCURACY in 0 1 2 2043do 2044 echo \"MU_AUTODETECT_ACCURACY=\$MU_AUTODETECT_ACCURACY\" 2045 for mbox in empty malformed mbox 2046 do 2047 mbop --mailbox \$mbox --detect 2048 done 2049done 2050exit 0 2051" 2052at_fn_check_prepare_notrace 'an embedded newline' "autodetect.at:19" 2053( $at_check_trace; 2054: >empty 2055 2056# Valid mbox 2057cat >mbox <<'_ATEOF' 2058From user Wed Dec 2 05:53:22 1992 2059From: Sergey <gray@example.net> 2060To: Alice <alice@wonder.land> 2061Subject: Test message 2062 2063Test 2064_ATEOF 2065 2066 2067# Bad mbox 2068cat >malformed <<'_ATEOF' 2069From ... 2070From: Sergey <gray@example.net> 2071To: Alice <alice@wonder.land> 2072Subject: Test message 2073 2074Test 2075_ATEOF 2076 2077 2078export MU_AUTODETECT_ACCURACY 2079for MU_AUTODETECT_ACCURACY in 0 1 2 2080do 2081 echo "MU_AUTODETECT_ACCURACY=$MU_AUTODETECT_ACCURACY" 2082 for mbox in empty malformed mbox 2083 do 2084 mbop --mailbox $mbox --detect 2085 done 2086done 2087exit 0 2088 2089) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2090at_status=$? at_failed=false 2091$at_check_filter 2092at_fn_diff_devnull "$at_stderr" || at_failed=: 2093echo >>"$at_stdout"; $as_echo "MU_AUTODETECT_ACCURACY=0 2094empty: 2 2095malformed: 2 2096mbox: 2 2097MU_AUTODETECT_ACCURACY=1 2098empty: 2 2099malformed: 0 2100mbox: 2 2101MU_AUTODETECT_ACCURACY=2 2102empty: 2 2103malformed: 0 2104mbox: 2 2105" | \ 2106 $at_diff - "$at_stdout" || at_failed=: 2107at_fn_check_status 0 $at_status "$at_srcdir/autodetect.at:19" 2108$at_failed && at_fn_log_failure 2109$at_traceon; } 2110 2111 set +x 2112 $at_times_p && times >"$at_times_file" 2113) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2114read at_status <"$at_status_file" 2115#AT_STOP_1 2116#AT_START_2 2117at_fn_group_banner 2 'count.at:1' \ 2118 "count" " " 2119at_xfail=no 2120( 2121 $as_echo "2. $at_setup_line: testing $at_desc ..." 2122 $at_traceon 2123 2124{ set +x 2125$as_echo "$at_srcdir/count.at:2: cp \$spooldir/mbox1 inbox" 2126at_fn_check_prepare_dynamic "cp $spooldir/mbox1 inbox" "count.at:2" 2127( $at_check_trace; cp $spooldir/mbox1 inbox 2128) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2129at_status=$? at_failed=false 2130$at_check_filter 2131at_fn_diff_devnull "$at_stderr" || at_failed=: 2132at_fn_diff_devnull "$at_stdout" || at_failed=: 2133at_fn_check_status 0 $at_status "$at_srcdir/count.at:2" 2134$at_failed && at_fn_log_failure 2135$at_traceon; } 2136 2137{ set +x 2138$as_echo "$at_srcdir/count.at:3: mbop -r -m inbox count" 2139at_fn_check_prepare_trace "count.at:3" 2140( $at_check_trace; mbop -r -m inbox count 2141) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2142at_status=$? at_failed=false 2143$at_check_filter 2144at_fn_diff_devnull "$at_stderr" || at_failed=: 2145echo >>"$at_stdout"; $as_echo "count: 5 2146" | \ 2147 $at_diff - "$at_stdout" || at_failed=: 2148at_fn_check_status 0 $at_status "$at_srcdir/count.at:3" 2149$at_failed && at_fn_log_failure 2150$at_traceon; } 2151 2152 set +x 2153 $at_times_p && times >"$at_times_file" 2154) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2155read at_status <"$at_status_file" 2156#AT_STOP_2 2157#AT_START_3 2158at_fn_group_banner 3 'env.at:17' \ 2159 "env" " " 2160at_xfail=no 2161( 2162 $as_echo "3. $at_setup_line: testing $at_desc ..." 2163 $at_traceon 2164 2165cat >inbox <<'_ATEOF' 2166From hare@wonder.land Wed Dec 2 05:53 1992 2167From: March Hare <hare@wonder.land> 2168To: Alice <alice@wonder.land> 2169Subject: Invitation 2170 2171Have some wine 2172 2173From alice@wonder.land Wed Dec 2 05:53:22 1992 2174From: Alice <alice@wonder.land> 2175To: March Hare <hare@wonder.land> 2176Subject: Re: Invitation 2177 2178I don't see any wine 2179 2180From hare@wonder.land Wed Dec 2 05:53 PST 1992 2181From: March Hare <hare@wonder.land> 2182To: Alice <alice@wonder.land> 2183Subject: Re: Invitation 2184 2185There isn't any 2186 2187From alice@wonder.land Wed Dec 2 05:53:22 PST 1992 2188From: Alice <alice@wonder.land> 2189To: March Hare <hare@wonder.land> 2190Subject: Re: Invitation 2191 2192Then it wasn't very civil of you to offer it 2193 2194From hare@wonder.land Wed Dec 2 05:53 -0700 1992 2195From: March Hare <hare@wonder.land> 2196To: Alice <alice@wonder.land> 2197Subject: Re: Invitation 2198 2199It wasn't very civil of you to sit down without being invited 2200 2201From alice@wonder.land Wed Dec 2 05:53:22 -0700 1992 2202From: Alice <alice@wonder.land> 2203To: March Hare <hare@wonder.land> 2204Subject: Re: Invitation 2205 2206I didn't know it was YOUR table, it's laid for a 2207great many more than three. 2208 2209From hare@wonder.land Wed Dec 2 05:53 1992 PST 2210From: March Hare <hare@wonder.land> 2211To: Alice <alice@wonder.land> 2212Subject: Personal remark 2213 2214Your hair wants cutting 2215 2216From alice@wonder.land Wed Dec 2 05:53:22 1992 PST 2217From: Alice <alice@wonder.land> 2218To: March Hare <hare@wonder.land> 2219Subject: Re: Personal remark 2220 2221You should learn not to make personal remarks, it's very rude. 2222 2223From hare@wonder.land Wed Dec 2 05:53 1992 -0700 2224From: March Hare <hare@wonder.land> 2225To: Alice <alice@wonder.land> 2226Subject: Riddle (was Re: Personal remark) 2227 2228Why is a raven like a writing-desk? 2229 2230From alice@wonder.land Wed Dec 2 05:53:22 1992 -0700 2231From: Alice <alice@wonder.land> 2232To: March Hare <hare@wonder.land> 2233Subject: Re: Riddle 2234 2235I believe I can guess that 2236 2237_ATEOF 2238 2239 2240{ set +x 2241$as_echo "$at_srcdir/env.at:92: mbop -r -m inbox 1 \\; env_date \\; env_sender" 2242at_fn_check_prepare_trace "env.at:92" 2243( $at_check_trace; mbop -r -m inbox 1 \; env_date \; env_sender 2244) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2245at_status=$? at_failed=false 2246$at_check_filter 2247at_fn_diff_devnull "$at_stderr" || at_failed=: 2248echo >>"$at_stdout"; $as_echo "1 current message 22491 env_date: Wed Dec 2 05:53:00 1992 22501 env_sender: hare@wonder.land 2251" | \ 2252 $at_diff - "$at_stdout" || at_failed=: 2253at_fn_check_status 0 $at_status "$at_srcdir/env.at:92" 2254$at_failed && at_fn_log_failure 2255$at_traceon; } 2256 2257 2258{ set +x 2259$as_echo "$at_srcdir/env.at:99: mbop -r -m inbox 2 \\; env_date \\; env_sender" 2260at_fn_check_prepare_trace "env.at:99" 2261( $at_check_trace; mbop -r -m inbox 2 \; env_date \; env_sender 2262) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2263at_status=$? at_failed=false 2264$at_check_filter 2265at_fn_diff_devnull "$at_stderr" || at_failed=: 2266echo >>"$at_stdout"; $as_echo "2 current message 22672 env_date: Wed Dec 2 05:53:22 1992 22682 env_sender: alice@wonder.land 2269" | \ 2270 $at_diff - "$at_stdout" || at_failed=: 2271at_fn_check_status 0 $at_status "$at_srcdir/env.at:99" 2272$at_failed && at_fn_log_failure 2273$at_traceon; } 2274 2275 2276{ set +x 2277$as_echo "$at_srcdir/env.at:106: mbop -r -m inbox 3 \\; env_date \\; env_sender" 2278at_fn_check_prepare_trace "env.at:106" 2279( $at_check_trace; mbop -r -m inbox 3 \; env_date \; env_sender 2280) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2281at_status=$? at_failed=false 2282$at_check_filter 2283at_fn_diff_devnull "$at_stderr" || at_failed=: 2284echo >>"$at_stdout"; $as_echo "3 current message 22853 env_date: Wed Dec 2 13:53:00 1992 22863 env_sender: hare@wonder.land 2287" | \ 2288 $at_diff - "$at_stdout" || at_failed=: 2289at_fn_check_status 0 $at_status "$at_srcdir/env.at:106" 2290$at_failed && at_fn_log_failure 2291$at_traceon; } 2292 2293 2294{ set +x 2295$as_echo "$at_srcdir/env.at:113: mbop -r -m inbox 4 \\; env_date \\; env_sender" 2296at_fn_check_prepare_trace "env.at:113" 2297( $at_check_trace; mbop -r -m inbox 4 \; env_date \; env_sender 2298) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2299at_status=$? at_failed=false 2300$at_check_filter 2301at_fn_diff_devnull "$at_stderr" || at_failed=: 2302echo >>"$at_stdout"; $as_echo "4 current message 23034 env_date: Wed Dec 2 13:53:22 1992 23044 env_sender: alice@wonder.land 2305" | \ 2306 $at_diff - "$at_stdout" || at_failed=: 2307at_fn_check_status 0 $at_status "$at_srcdir/env.at:113" 2308$at_failed && at_fn_log_failure 2309$at_traceon; } 2310 2311 2312{ set +x 2313$as_echo "$at_srcdir/env.at:120: mbop -r -m inbox 5 \\; env_date \\; env_sender" 2314at_fn_check_prepare_trace "env.at:120" 2315( $at_check_trace; mbop -r -m inbox 5 \; env_date \; env_sender 2316) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2317at_status=$? at_failed=false 2318$at_check_filter 2319at_fn_diff_devnull "$at_stderr" || at_failed=: 2320echo >>"$at_stdout"; $as_echo "5 current message 23215 env_date: Wed Dec 2 12:53:00 1992 23225 env_sender: hare@wonder.land 2323" | \ 2324 $at_diff - "$at_stdout" || at_failed=: 2325at_fn_check_status 0 $at_status "$at_srcdir/env.at:120" 2326$at_failed && at_fn_log_failure 2327$at_traceon; } 2328 2329 2330{ set +x 2331$as_echo "$at_srcdir/env.at:127: mbop -r -m inbox 6 \\; env_date \\; env_sender" 2332at_fn_check_prepare_trace "env.at:127" 2333( $at_check_trace; mbop -r -m inbox 6 \; env_date \; env_sender 2334) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2335at_status=$? at_failed=false 2336$at_check_filter 2337at_fn_diff_devnull "$at_stderr" || at_failed=: 2338echo >>"$at_stdout"; $as_echo "6 current message 23396 env_date: Wed Dec 2 12:53:22 1992 23406 env_sender: alice@wonder.land 2341" | \ 2342 $at_diff - "$at_stdout" || at_failed=: 2343at_fn_check_status 0 $at_status "$at_srcdir/env.at:127" 2344$at_failed && at_fn_log_failure 2345$at_traceon; } 2346 2347 2348{ set +x 2349$as_echo "$at_srcdir/env.at:134: mbop -r -m inbox 7 \\; env_date \\; env_sender" 2350at_fn_check_prepare_trace "env.at:134" 2351( $at_check_trace; mbop -r -m inbox 7 \; env_date \; env_sender 2352) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2353at_status=$? at_failed=false 2354$at_check_filter 2355at_fn_diff_devnull "$at_stderr" || at_failed=: 2356echo >>"$at_stdout"; $as_echo "7 current message 23577 env_date: Wed Dec 2 13:53:00 1992 23587 env_sender: hare@wonder.land 2359" | \ 2360 $at_diff - "$at_stdout" || at_failed=: 2361at_fn_check_status 0 $at_status "$at_srcdir/env.at:134" 2362$at_failed && at_fn_log_failure 2363$at_traceon; } 2364 2365 2366{ set +x 2367$as_echo "$at_srcdir/env.at:141: mbop -r -m inbox 8 \\; env_date \\; env_sender" 2368at_fn_check_prepare_trace "env.at:141" 2369( $at_check_trace; mbop -r -m inbox 8 \; env_date \; env_sender 2370) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2371at_status=$? at_failed=false 2372$at_check_filter 2373at_fn_diff_devnull "$at_stderr" || at_failed=: 2374echo >>"$at_stdout"; $as_echo "8 current message 23758 env_date: Wed Dec 2 13:53:22 1992 23768 env_sender: alice@wonder.land 2377" | \ 2378 $at_diff - "$at_stdout" || at_failed=: 2379at_fn_check_status 0 $at_status "$at_srcdir/env.at:141" 2380$at_failed && at_fn_log_failure 2381$at_traceon; } 2382 2383 2384{ set +x 2385$as_echo "$at_srcdir/env.at:148: mbop -r -m inbox 9 \\; env_date \\; env_sender" 2386at_fn_check_prepare_trace "env.at:148" 2387( $at_check_trace; mbop -r -m inbox 9 \; env_date \; env_sender 2388) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2389at_status=$? at_failed=false 2390$at_check_filter 2391at_fn_diff_devnull "$at_stderr" || at_failed=: 2392echo >>"$at_stdout"; $as_echo "9 current message 23939 env_date: Wed Dec 2 12:53:00 1992 23949 env_sender: hare@wonder.land 2395" | \ 2396 $at_diff - "$at_stdout" || at_failed=: 2397at_fn_check_status 0 $at_status "$at_srcdir/env.at:148" 2398$at_failed && at_fn_log_failure 2399$at_traceon; } 2400 2401 2402{ set +x 2403$as_echo "$at_srcdir/env.at:155: mbop -r -m inbox 10 \\; env_date \\; env_sender" 2404at_fn_check_prepare_trace "env.at:155" 2405( $at_check_trace; mbop -r -m inbox 10 \; env_date \; env_sender 2406) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2407at_status=$? at_failed=false 2408$at_check_filter 2409at_fn_diff_devnull "$at_stderr" || at_failed=: 2410echo >>"$at_stdout"; $as_echo "10 current message 241110 env_date: Wed Dec 2 12:53:22 1992 241210 env_sender: alice@wonder.land 2413" | \ 2414 $at_diff - "$at_stdout" || at_failed=: 2415at_fn_check_status 0 $at_status "$at_srcdir/env.at:155" 2416$at_failed && at_fn_log_failure 2417$at_traceon; } 2418 2419 2420 set +x 2421 $at_times_p && times >"$at_times_file" 2422) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2423read at_status <"$at_status_file" 2424#AT_STOP_3 2425#AT_START_4 2426at_fn_group_banner 4 'attr.at:17' \ 2427 "attributes" " " 2428at_xfail=no 2429( 2430 $as_echo "4. $at_setup_line: testing $at_desc ..." 2431 $at_traceon 2432 2433cat >inbox <<'_ATEOF' 2434From hare@wonder.land Mon Jul 29 21:00:06 2002 2435Received: (from hare@wonder.land) 2436 by wonder.land id 3301 2437 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 2438Date: Mon, 29 Jul 2002 22:00:01 +0100 2439From: March Hare <hare@wonder.land> 2440Message-Id: <200207292200.3301@wonder.land> 2441To: Alice <alice@wonder.land> 2442Subject: Invitation 2443Return-Path: hare@wonder.land 2444 2445Have some wine 2446 2447From alice@wonder.land Mon Jul 29 21:00:07 2002 2448Received: (from alice@wonder.land) 2449 by wonder.land id 3302 2450 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 2451Date: Mon, 29 Jul 2002 22:00:02 +0100 2452From: Alice <alice@wonder.land> 2453Message-Id: <200207292200.3302@wonder.land> 2454To: March Hare <hare@wonder.land> 2455Subject: Re: Invitation 2456Status: OFR 2457Return-Path: alice@wonder.land 2458 2459I don't see any wine 2460_ATEOF 2461 2462 2463{ set +x 2464$as_echo "$at_srcdir/attr.at:47: mbop -r -m inbox 1 \\; attr" 2465at_fn_check_prepare_trace "attr.at:47" 2466( $at_check_trace; mbop -r -m inbox 1 \; attr 2467) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2468at_status=$? at_failed=false 2469$at_check_filter 2470at_fn_diff_devnull "$at_stderr" || at_failed=: 2471echo >>"$at_stdout"; $as_echo "1 current message 24721 attr: - 2473" | \ 2474 $at_diff - "$at_stdout" || at_failed=: 2475at_fn_check_status 0 $at_status "$at_srcdir/attr.at:47" 2476$at_failed && at_fn_log_failure 2477$at_traceon; } 2478 2479 2480{ set +x 2481$as_echo "$at_srcdir/attr.at:53: mbop -r -m inbox 2 \\; attr" 2482at_fn_check_prepare_trace "attr.at:53" 2483( $at_check_trace; mbop -r -m inbox 2 \; attr 2484) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2485at_status=$? at_failed=false 2486$at_check_filter 2487at_fn_diff_devnull "$at_stderr" || at_failed=: 2488echo >>"$at_stdout"; $as_echo "2 current message 24892 attr: FOR 2490" | \ 2491 $at_diff - "$at_stdout" || at_failed=: 2492at_fn_check_status 0 $at_status "$at_srcdir/attr.at:53" 2493$at_failed && at_fn_log_failure 2494$at_traceon; } 2495 2496 2497 set +x 2498 $at_times_p && times >"$at_times_file" 2499) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2500read at_status <"$at_status_file" 2501#AT_STOP_4 2502#AT_START_5 2503at_fn_group_banner 5 'header.at:17' \ 2504 "header" " " 2505at_xfail=no 2506( 2507 $as_echo "5. $at_setup_line: testing $at_desc ..." 2508 $at_traceon 2509 2510{ set +x 2511$as_echo "$at_srcdir/header.at:18: cp \$spooldir/mbox1 inbox" 2512at_fn_check_prepare_dynamic "cp $spooldir/mbox1 inbox" "header.at:18" 2513( $at_check_trace; cp $spooldir/mbox1 inbox 2514) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2515at_status=$? at_failed=false 2516$at_check_filter 2517at_fn_diff_devnull "$at_stderr" || at_failed=: 2518at_fn_diff_devnull "$at_stdout" || at_failed=: 2519at_fn_check_status 0 $at_status "$at_srcdir/header.at:18" 2520$at_failed && at_fn_log_failure 2521$at_traceon; } 2522 2523{ set +x 2524$as_echo "$at_srcdir/header.at:19: mbop -r -m inbox 1 \\; header_count \\; header_lines \\; header_size" 2525at_fn_check_prepare_trace "header.at:19" 2526( $at_check_trace; mbop -r -m inbox 1 \; header_count \; header_lines \; header_size 2527) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2528at_status=$? at_failed=false 2529$at_check_filter 2530at_fn_diff_devnull "$at_stderr" || at_failed=: 2531echo >>"$at_stdout"; $as_echo "1 current message 25321 header_count: 6 25331 header_lines: 9 25341 header_size: 317 2535" | \ 2536 $at_diff - "$at_stdout" || at_failed=: 2537at_fn_check_status 0 $at_status "$at_srcdir/header.at:19" 2538$at_failed && at_fn_log_failure 2539$at_traceon; } 2540 2541{ set +x 2542$as_echo "$at_srcdir/header.at:26: mbop -r -m inbox 1 \\; headers" 2543at_fn_check_prepare_trace "header.at:26" 2544( $at_check_trace; mbop -r -m inbox 1 \; headers 2545) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2546at_status=$? at_failed=false 2547$at_check_filter 2548at_fn_diff_devnull "$at_stderr" || at_failed=: 2549echo >>"$at_stdout"; $as_echo "1 current message 25501 headers: Received:(from foobar@nonexistent.net) by nonexistent.net id fBSKI8N04906 for bar@dontmailme.org; Fri, 28 Dec 2001 22:18:08 +0200 2551Date:Fri, 28 Dec 2001 22:18:08 +0200 2552From:Foo Bar <foobar@nonexistent.net> 2553Message-Id:<200112282018.fBSKI8N04906@nonexistent.net> 2554To:Bar <bar@dontmailme.org> 2555Subject:Jabberwocky 2556 2557" | \ 2558 $at_diff - "$at_stdout" || at_failed=: 2559at_fn_check_status 0 $at_status "$at_srcdir/header.at:26" 2560$at_failed && at_fn_log_failure 2561$at_traceon; } 2562 2563{ set +x 2564$as_echo "$at_srcdir/header.at:37: mbop -r -m inbox 3 \\; header_count \\; header_lines \\; header_size" 2565at_fn_check_prepare_trace "header.at:37" 2566( $at_check_trace; mbop -r -m inbox 3 \; header_count \; header_lines \; header_size 2567) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2568at_status=$? at_failed=false 2569$at_check_filter 2570at_fn_diff_devnull "$at_stderr" || at_failed=: 2571echo >>"$at_stdout"; $as_echo "3 current message 25723 header_count: 10 25733 header_lines: 13 25743 header_size: 497 2575" | \ 2576 $at_diff - "$at_stdout" || at_failed=: 2577at_fn_check_status 0 $at_status "$at_srcdir/header.at:37" 2578$at_failed && at_fn_log_failure 2579$at_traceon; } 2580 2581{ set +x 2582$as_echo "$at_srcdir/header.at:44: mbop -r -m inbox 3 \\; headers" 2583at_fn_check_prepare_trace "header.at:44" 2584( $at_check_trace; mbop -r -m inbox 3 \; headers 2585) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2586at_status=$? at_failed=false 2587$at_check_filter 2588at_fn_diff_devnull "$at_stderr" || at_failed=: 2589echo >>"$at_stdout"; $as_echo "3 current message 25903 headers: Organization:Mailutils-tests 2591Received:from example.net (localhost [127.0.0.1]) by example.net with ESMTP id g6CLhIb05086 for <gray@example.net>; Sat, 13 Jul 2002 00:43:18 +0300 2592Message-Id:<200207122143.g6CLhIb05086@example.net> 2593To:Foo Bar <foobar@nonexistent.net> 2594Subject:Simple MIME 2595MIME-Version:1.0 2596Content-Type:multipart/mixed; boundary=\"----- =_aaaaaaaaaa0\" 2597Content-ID:<5082.1026510189.0@example.net> 2598Date:Sat, 13 Jul 2002 00:43:18 +0300 2599From:Sergey Poznyakoff <gray@example.net> 2600 2601" | \ 2602 $at_diff - "$at_stdout" || at_failed=: 2603at_fn_check_status 0 $at_status "$at_srcdir/header.at:44" 2604$at_failed && at_fn_log_failure 2605$at_traceon; } 2606 2607{ set +x 2608$as_echo "$at_srcdir/header.at:59: mbop -r -m inbox 5 \\; header_count \\; header_lines \\; header_size" 2609at_fn_check_prepare_trace "header.at:59" 2610( $at_check_trace; mbop -r -m inbox 5 \; header_count \; header_lines \; header_size 2611) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2612at_status=$? at_failed=false 2613$at_check_filter 2614at_fn_diff_devnull "$at_stderr" || at_failed=: 2615echo >>"$at_stdout"; $as_echo "5 current message 26165 header_count: 10 26175 header_lines: 13 26185 header_size: 502 2619" | \ 2620 $at_diff - "$at_stdout" || at_failed=: 2621at_fn_check_status 0 $at_status "$at_srcdir/header.at:59" 2622$at_failed && at_fn_log_failure 2623$at_traceon; } 2624 2625 2626{ set +x 2627$as_echo "$at_srcdir/header.at:67: mbop -r -m inbox 5 \\; headers" 2628at_fn_check_prepare_trace "header.at:67" 2629( $at_check_trace; mbop -r -m inbox 5 \; headers 2630) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2631at_status=$? at_failed=false 2632$at_check_filter 2633at_fn_diff_devnull "$at_stderr" || at_failed=: 2634echo >>"$at_stdout"; $as_echo "5 current message 26355 headers: Organization:Mailutils-tests 2636Received:from example.net (localhost [127.0.0.1]) by example.net with ESMTP id g6CLhIb05086 for <gray@example.net>; Sat, 13 Jul 2002 00:43:18 +0300 2637Message-Id:<200207122143.g6CLhIb05086@example.net> 2638To:Foo Bar <foobar@nonexistent.net> 2639Subject:Empty MIME Parts 2640MIME-Version:1.0 2641Content-Type:multipart/mixed; boundary=\"----- =_aaaaaaaaaa0\" 2642Content-ID:<5082.1026510189.0@example.net> 2643Date:Sat, 13 Jul 2002 00:43:18 +0300 2644From:Sergey Poznyakoff <gray@example.net> 2645 2646" | \ 2647 $at_diff - "$at_stdout" || at_failed=: 2648at_fn_check_status 0 $at_status "$at_srcdir/header.at:67" 2649$at_failed && at_fn_log_failure 2650$at_traceon; } 2651 2652 2653 set +x 2654 $at_times_p && times >"$at_times_file" 2655) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2656read at_status <"$at_status_file" 2657#AT_STOP_5 2658#AT_START_6 2659at_fn_group_banner 6 'body.at:17' \ 2660 "body" " " 2661at_xfail=no 2662( 2663 $as_echo "6. $at_setup_line: testing $at_desc ..." 2664 $at_traceon 2665 2666cat >inbox <<'_ATEOF' 2667From alice@wonder.land Mon Jul 29 22:00:21 2002 2668Received: (from alice@wonder.land) 2669 by wonder.land id 3314 2670 for hare@wonder.land; Mon, 29 Jul 2002 22:00:19 +0100 2671Date: Mon, 29 Jul 2002 22:00:14 +0100 2672From: Alice <alice@wonder.land> 2673Message-Id: <200207292200.3314@wonder.land> 2674To: March Hare <hare@wonder.land> 2675Subject: Re: Be specific 2676 2677I do, at least--at least I mean what 2678I say--that's the same thing, you know. 2679 2680From hatter@wonder.land Mon Jul 29 22:00:22 2002 2681Received: (from hatter@wonder.land) 2682 by wonder.land id 3315 2683 for alice@wonder.land; Mon, 29 Jul 2002 22:00:20 +0100 2684Date: Mon, 29 Jul 2002 22:00:15 +0100 2685From: Hatter <hatter@wonder.land> 2686Message-Id: <200207292200.3315@wonder.land> 2687To: Alice <alice@wonder.land> 2688Subject: Re: Be specific 2689 2690Not the same thing a bit! You might just 2691as well say that "I see what I eat" is the same thing as "I eat 2692what I see"! 2693 2694From hare@wonder.land Mon Jul 29 22:00:23 2002 2695Received: (from hare@wonder.land) 2696 by wonder.land id 3316 2697 for alice@wonder.land; Mon, 29 Jul 2002 22:00:21 +0100 2698Date: Mon, 29 Jul 2002 22:00:16 +0100 2699From: March Hare <hare@wonder.land> 2700Message-Id: <200207292200.3316@wonder.land> 2701To: Alice <alice@wonder.land> 2702Subject: Re: Be specific 2703 2704You might just as well say, that "I 2705like what I get" is the same thing as "I get what I like"! 2706_ATEOF 2707 2708 2709{ set +x 2710$as_echo "$at_srcdir/body.at:60: mbop -r -m inbox 1\\; body_lines\\; body_size" 2711at_fn_check_prepare_trace "body.at:60" 2712( $at_check_trace; mbop -r -m inbox 1\; body_lines\; body_size 2713) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2714at_status=$? at_failed=false 2715$at_check_filter 2716at_fn_diff_devnull "$at_stderr" || at_failed=: 2717echo >>"$at_stdout"; $as_echo "1 current message 27181 body_lines: 3 27191 body_size: 78 2720" | \ 2721 $at_diff - "$at_stdout" || at_failed=: 2722at_fn_check_status 0 $at_status "$at_srcdir/body.at:60" 2723$at_failed && at_fn_log_failure 2724$at_traceon; } 2725 2726{ set +x 2727$as_echo "$at_srcdir/body.at:66: mbop -r -m inbox 1\\; body_text" 2728at_fn_check_prepare_trace "body.at:66" 2729( $at_check_trace; mbop -r -m inbox 1\; body_text 2730) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2731at_status=$? at_failed=false 2732$at_check_filter 2733at_fn_diff_devnull "$at_stderr" || at_failed=: 2734echo >>"$at_stdout"; $as_echo "1 current message 27351 body_text: I do, at least--at least I mean what 2736I say--that's the same thing, you know. 2737 2738 2739" | \ 2740 $at_diff - "$at_stdout" || at_failed=: 2741at_fn_check_status 0 $at_status "$at_srcdir/body.at:66" 2742$at_failed && at_fn_log_failure 2743$at_traceon; } 2744 2745 2746{ set +x 2747$as_echo "$at_srcdir/body.at:75: mbop -r -m inbox 2\\; body_lines\\; body_size" 2748at_fn_check_prepare_trace "body.at:75" 2749( $at_check_trace; mbop -r -m inbox 2\; body_lines\; body_size 2750) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2751at_status=$? at_failed=false 2752$at_check_filter 2753at_fn_diff_devnull "$at_stderr" || at_failed=: 2754echo >>"$at_stdout"; $as_echo "2 current message 27552 body_lines: 4 27562 body_size: 119 2757" | \ 2758 $at_diff - "$at_stdout" || at_failed=: 2759at_fn_check_status 0 $at_status "$at_srcdir/body.at:75" 2760$at_failed && at_fn_log_failure 2761$at_traceon; } 2762 2763{ set +x 2764$as_echo "$at_srcdir/body.at:81: mbop -r -m inbox 2\\; body_text" 2765at_fn_check_prepare_trace "body.at:81" 2766( $at_check_trace; mbop -r -m inbox 2\; body_text 2767) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2768at_status=$? at_failed=false 2769$at_check_filter 2770at_fn_diff_devnull "$at_stderr" || at_failed=: 2771echo >>"$at_stdout"; $as_echo "2 current message 27722 body_text: Not the same thing a bit! You might just 2773as well say that \"I see what I eat\" is the same thing as \"I eat 2774what I see\"! 2775 2776 2777" | \ 2778 $at_diff - "$at_stdout" || at_failed=: 2779at_fn_check_status 0 $at_status "$at_srcdir/body.at:81" 2780$at_failed && at_fn_log_failure 2781$at_traceon; } 2782 2783 2784{ set +x 2785$as_echo "$at_srcdir/body.at:91: mbop -r -m inbox 3\\; body_lines\\; body_size" 2786at_fn_check_prepare_trace "body.at:91" 2787( $at_check_trace; mbop -r -m inbox 3\; body_lines\; body_size 2788) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2789at_status=$? at_failed=false 2790$at_check_filter 2791at_fn_diff_devnull "$at_stderr" || at_failed=: 2792echo >>"$at_stdout"; $as_echo "3 current message 27933 body_lines: 2 27943 body_size: 95 2795" | \ 2796 $at_diff - "$at_stdout" || at_failed=: 2797at_fn_check_status 0 $at_status "$at_srcdir/body.at:91" 2798$at_failed && at_fn_log_failure 2799$at_traceon; } 2800 2801{ set +x 2802$as_echo "$at_srcdir/body.at:97: mbop -r -m inbox 3\\; body_text" 2803at_fn_check_prepare_trace "body.at:97" 2804( $at_check_trace; mbop -r -m inbox 3\; body_text 2805) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2806at_status=$? at_failed=false 2807$at_check_filter 2808at_fn_diff_devnull "$at_stderr" || at_failed=: 2809echo >>"$at_stdout"; $as_echo "3 current message 28103 body_text: You might just as well say, that \"I 2811like what I get\" is the same thing as \"I get what I like\"! 2812 2813" | \ 2814 $at_diff - "$at_stdout" || at_failed=: 2815at_fn_check_status 0 $at_status "$at_srcdir/body.at:97" 2816$at_failed && at_fn_log_failure 2817$at_traceon; } 2818 2819 2820cat >inbox1 <<'_ATEOF' 2821From alice@wonder.land Mon Jul 29 22:00:21 2002 2822Date: Mon, 29 Jul 2002 22:00:14 +0100 2823From: Alice <alice@wonder.land> 2824To: March Hare <hare@wonder.land> 2825Subject: Body excape 2826 2827This is the test message. 2828>From what I can suppose, this line should be unescaped. 2829However 2830 >From line 2831prefixed with space should not. 2832 2833On the other hand, already escaped 2834>>From line 2835and 2836>>>From line 2837should be unescaped too. 2838 2839That is not so if a whitespace appears before: 2840 >>From line 2841or in between: 2842>> From line 2843or if From is not followed by space: 2844>>Fromline 2845_ATEOF 2846 2847 2848{ set +x 2849$as_echo "$at_srcdir/body.at:132: mbop -r -m inbox1 1\\; body_size\\; body_lines" 2850at_fn_check_prepare_trace "body.at:132" 2851( $at_check_trace; mbop -r -m inbox1 1\; body_size\; body_lines 2852) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2853at_status=$? at_failed=false 2854$at_check_filter 2855at_fn_diff_devnull "$at_stderr" || at_failed=: 2856echo >>"$at_stdout"; $as_echo "1 current message 28571 body_size: 359 28581 body_lines: 18 2859" | \ 2860 $at_diff - "$at_stdout" || at_failed=: 2861at_fn_check_status 0 $at_status "$at_srcdir/body.at:132" 2862$at_failed && at_fn_log_failure 2863$at_traceon; } 2864 2865 2866{ set +x 2867$as_echo "$at_srcdir/body.at:139: mbop -r -m inbox1 1\\; body_text" 2868at_fn_check_prepare_trace "body.at:139" 2869( $at_check_trace; mbop -r -m inbox1 1\; body_text 2870) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2871at_status=$? at_failed=false 2872$at_check_filter 2873at_fn_diff_devnull "$at_stderr" || at_failed=: 2874echo >>"$at_stdout"; $as_echo "1 current message 28751 body_text: This is the test message. 2876From what I can suppose, this line should be unescaped. 2877However 2878 >From line 2879prefixed with space should not. 2880 2881On the other hand, already escaped 2882>From line 2883and 2884>>From line 2885should be unescaped too. 2886 2887That is not so if a whitespace appears before: 2888 >>From line 2889or in between: 2890>> From line 2891or if From is not followed by space: 2892>>Fromline 2893 2894" | \ 2895 $at_diff - "$at_stdout" || at_failed=: 2896at_fn_check_status 0 $at_status "$at_srcdir/body.at:139" 2897$at_failed && at_fn_log_failure 2898$at_traceon; } 2899 2900 2901 set +x 2902 $at_times_p && times >"$at_times_file" 2903) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2904read at_status <"$at_status_file" 2905#AT_STOP_6 2906#AT_START_7 2907at_fn_group_banner 7 'qget.at:17' \ 2908 "qget access" " " 2909at_xfail=no 2910( 2911 $as_echo "7. $at_setup_line: testing $at_desc ..." 2912 $at_traceon 2913 2914 2915{ set +x 2916$as_echo "$at_srcdir/qget.at:19: cp \$spooldir/mbox1 ." 2917at_fn_check_prepare_dynamic "cp $spooldir/mbox1 ." "qget.at:19" 2918( $at_check_trace; cp $spooldir/mbox1 . 2919) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2920at_status=$? at_failed=false 2921$at_check_filter 2922at_fn_diff_devnull "$at_stderr" || at_failed=: 2923at_fn_diff_devnull "$at_stdout" || at_failed=: 2924at_fn_check_status 0 $at_status "$at_srcdir/qget.at:19" 2925$at_failed && at_fn_log_failure 2926$at_traceon; } 2927 2928{ set +x 2929$as_echo "$at_srcdir/qget.at:20: mbop -r -m mbox1 qget 1309" 2930at_fn_check_prepare_trace "qget.at:20" 2931( $at_check_trace; mbop -r -m mbox1 qget 1309 2932) >>"$at_stdout" 2>>"$at_stderr" 5>&- 2933at_status=$? at_failed=false 2934$at_check_filter 2935at_fn_diff_devnull "$at_stderr" || at_failed=: 2936echo >>"$at_stdout"; $as_echo "qget: Received: (from bar@dontmailme.org) 2937 by dontmailme.org id fERKR9N16790 2938 for foobar@nonexistent.net; Fri, 28 Dec 2001 22:18:08 +0200 2939Date: Fri, 28 Dec 2001 23:28:08 +0200 2940From: Bar <bar@dontmailme.org> 2941To: Foo Bar <foobar@nonexistent.net> 2942Message-Id: <200112232808.fERKR9N16790@dontmailme.org> 2943Subject: Re: Jabberwocky 2944 2945It seems very pretty, but it's *rather* hard to understand!' 2946Somehow it seems to fill my head with ideas -- only I don't 2947exactly know what they are! However, SOMEBODY killed SOMETHING: 2948that's clear, at any rate... 2949 2950 2951" | \ 2952 $at_diff - "$at_stdout" || at_failed=: 2953at_fn_check_status 0 $at_status "$at_srcdir/qget.at:20" 2954$at_failed && at_fn_log_failure 2955$at_traceon; } 2956 2957 set +x 2958 $at_times_p && times >"$at_times_file" 2959) 5>&1 2>&1 7>&- | eval $at_tee_pipe 2960read at_status <"$at_status_file" 2961#AT_STOP_7 2962#AT_START_8 2963at_fn_group_banner 8 'delete.at:17' \ 2964 "delete" " " 2965at_xfail=no 2966( 2967 $as_echo "8. $at_setup_line: testing $at_desc ..." 2968 $at_traceon 2969 2970cat >inbox <<'_ATEOF' 2971From hare@wonder.land Mon Jul 29 22:00:08 2002 2972Received: (from hare@wonder.land) 2973 by wonder.land id 3301 2974 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 2975Date: Mon, 29 Jul 2002 22:00:01 +0100 2976From: March Hare <hare@wonder.land> 2977Message-Id: <200207292200.3301@wonder.land> 2978To: Alice <alice@wonder.land> 2979Subject: Invitation 2980X-IMAPbase: 10 9 2981X-UID: 1 2982 2983Have some wine 2984 2985From alice@wonder.land Mon Jul 29 22:00:09 2002 2986Received: (from alice@wonder.land) 2987 by wonder.land id 3302 2988 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 2989Date: Mon, 29 Jul 2002 22:00:02 +0100 2990From: Alice <alice@wonder.land> 2991Message-Id: <200207292200.3302@wonder.land> 2992To: March Hare <hare@wonder.land> 2993Subject: Re: Invitation 2994X-UID: 2 2995 2996I don't see any wine 2997 2998From hare@wonder.land Mon Jul 29 22:00:10 2002 2999Received: (from hare@wonder.land) 3000 by wonder.land id 3303 3001 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3002Date: Mon, 29 Jul 2002 22:00:03 +0100 3003From: March Hare <hare@wonder.land> 3004Message-Id: <200207292200.3303@wonder.land> 3005To: Alice <alice@wonder.land> 3006Subject: Re: Invitation 3007X-UID: 3 3008 3009There isn't any 3010 3011From alice@wonder.land Mon Jul 29 22:00:11 2002 3012Received: (from alice@wonder.land) 3013 by wonder.land id 3304 3014 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3015Date: Mon, 29 Jul 2002 22:00:04 +0100 3016From: Alice <alice@wonder.land> 3017Message-Id: <200207292200.3304@wonder.land> 3018To: March Hare <hare@wonder.land> 3019Subject: Re: Invitation 3020X-UID: 4 3021 3022Then it wasn't very civil of you to offer it 3023 3024From hare@wonder.land Mon Jul 29 22:00:12 2002 3025Received: (from hare@wonder.land) 3026 by wonder.land id 3305 3027 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 3028Date: Mon, 29 Jul 2002 22:00:05 +0100 3029From: March Hare <hare@wonder.land> 3030Message-Id: <200207292200.3305@wonder.land> 3031To: Alice <alice@wonder.land> 3032Subject: Re: Invitation 3033X-UID: 5 3034 3035It wasn't very civil of you to sit down without being invited 3036 3037From alice@wonder.land Mon Jul 29 22:00:13 2002 3038Received: (from alice@wonder.land) 3039 by wonder.land id 3306 3040 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3041Date: Mon, 29 Jul 2002 22:00:06 +0100 3042From: Alice <alice@wonder.land> 3043Message-Id: <200207292200.3306@wonder.land> 3044To: March Hare <hare@wonder.land> 3045Subject: Re: Invitation 3046X-UID: 6 3047 3048I didn't know it was YOUR table, it's laid for a 3049great many more than three. 3050 3051_ATEOF 3052 3053 3054cat >commands <<'_ATEOF' 30553 3056set_deleted 3057expunge 3058count 3059# Message 4 becomes 3 after expunge. Re-select it. 30603 3061uid 3062headers 3063_ATEOF 3064 3065 3066{ set +x 3067$as_echo "$at_srcdir/delete.at:112: cp inbox inbox1 3068cp inbox inbox2" 3069at_fn_check_prepare_notrace 'an embedded newline' "delete.at:112" 3070( $at_check_trace; cp inbox inbox1 3071cp inbox inbox2 3072) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3073at_status=$? at_failed=false 3074$at_check_filter 3075at_fn_diff_devnull "$at_stderr" || at_failed=: 3076at_fn_diff_devnull "$at_stdout" || at_failed=: 3077at_fn_check_status 0 $at_status "$at_srcdir/delete.at:112" 3078$at_failed && at_fn_log_failure 3079$at_traceon; } 3080 3081 3082{ set +x 3083$as_echo "$at_srcdir/delete.at:115: mbop -m inbox < commands" 3084at_fn_check_prepare_trace "delete.at:115" 3085( $at_check_trace; mbop -m inbox < commands 3086) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3087at_status=$? at_failed=false 3088$at_check_filter 3089at_fn_diff_devnull "$at_stderr" || at_failed=: 3090echo >>"$at_stdout"; $as_echo "3 current message 30913 set_deleted: OK 3092expunge: OK 3093count: 5 30943 current message 30953 uid: 4 30963 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3097Date:Mon, 29 Jul 2002 22:00:04 +0100 3098From:Alice <alice@wonder.land> 3099Message-Id:<200207292200.3304@wonder.land> 3100To:March Hare <hare@wonder.land> 3101Subject:Re: Invitation 3102X-UID:4 3103 3104" | \ 3105 $at_diff - "$at_stdout" || at_failed=: 3106at_fn_check_status 0 $at_status "$at_srcdir/delete.at:115" 3107$at_failed && at_fn_log_failure 3108$at_traceon; } 3109 3110 3111cat >commands1 <<'_ATEOF' 31121 3113set_deleted 31142 3115set_deleted 31165 3117set_deleted 3118expunge 3119count 31201 3121uid 3122headers 31232 3124uid 3125headers 31263 3127uid 3128headers 3129_ATEOF 3130 3131 3132{ set +x 3133$as_echo "$at_srcdir/delete.at:153: mbop -m inbox1 < commands1|x_imapbase_normalize" 3134at_fn_check_prepare_notrace 'a shell pipeline' "delete.at:153" 3135( $at_check_trace; mbop -m inbox1 < commands1|x_imapbase_normalize 3136) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3137at_status=$? at_failed=false 3138$at_check_filter 3139at_fn_diff_devnull "$at_stderr" || at_failed=: 3140echo >>"$at_stdout"; $as_echo "1 current message 31411 set_deleted: OK 31422 current message 31432 set_deleted: OK 31445 current message 31455 set_deleted: OK 3146expunge: OK 3147count: 3 31481 current message 31491 uid: 3 31501 headers: Received:(from hare@wonder.land) by wonder.land id 3303 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3151Date:Mon, 29 Jul 2002 22:00:03 +0100 3152From:March Hare <hare@wonder.land> 3153Message-Id:<200207292200.3303@wonder.land> 3154To:Alice <alice@wonder.land> 3155Subject:Re: Invitation 3156X-IMAPbase:10 9 3157X-UID:3 3158 31592 current message 31602 uid: 4 31612 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3162Date:Mon, 29 Jul 2002 22:00:04 +0100 3163From:Alice <alice@wonder.land> 3164Message-Id:<200207292200.3304@wonder.land> 3165To:March Hare <hare@wonder.land> 3166Subject:Re: Invitation 3167X-UID:4 3168 31693 current message 31703 uid: 6 31713 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3172Date:Mon, 29 Jul 2002 22:00:06 +0100 3173From:Alice <alice@wonder.land> 3174Message-Id:<200207292200.3306@wonder.land> 3175To:March Hare <hare@wonder.land> 3176Subject:Re: Invitation 3177X-UID:6 3178 3179" | \ 3180 $at_diff - "$at_stdout" || at_failed=: 3181at_fn_check_status 0 $at_status "$at_srcdir/delete.at:153" 3182$at_failed && at_fn_log_failure 3183$at_traceon; } 3184 3185 3186# ## 3187cat >commands1a <<'_ATEOF' 3188count 31891 3190uid 3191headers 31922 3193uid 3194headers 31953 3196uid 3197headers 3198_ATEOF 3199 3200 3201{ set +x 3202$as_echo "$at_srcdir/delete.at:210: mbop -m inbox1 < commands1a|x_imapbase_normalize" 3203at_fn_check_prepare_notrace 'a shell pipeline' "delete.at:210" 3204( $at_check_trace; mbop -m inbox1 < commands1a|x_imapbase_normalize 3205) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3206at_status=$? at_failed=false 3207$at_check_filter 3208at_fn_diff_devnull "$at_stderr" || at_failed=: 3209echo >>"$at_stdout"; $as_echo "count: 3 32101 current message 32111 uid: 3 32121 headers: Received:(from hare@wonder.land) by wonder.land id 3303 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3213Date:Mon, 29 Jul 2002 22:00:03 +0100 3214From:March Hare <hare@wonder.land> 3215Message-Id:<200207292200.3303@wonder.land> 3216To:Alice <alice@wonder.land> 3217Subject:Re: Invitation 3218X-IMAPbase:10 9 3219X-UID:3 3220 32212 current message 32222 uid: 4 32232 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3224Date:Mon, 29 Jul 2002 22:00:04 +0100 3225From:Alice <alice@wonder.land> 3226Message-Id:<200207292200.3304@wonder.land> 3227To:March Hare <hare@wonder.land> 3228Subject:Re: Invitation 3229X-UID:4 3230 32313 current message 32323 uid: 6 32333 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3234Date:Mon, 29 Jul 2002 22:00:06 +0100 3235From:Alice <alice@wonder.land> 3236Message-Id:<200207292200.3306@wonder.land> 3237To:March Hare <hare@wonder.land> 3238Subject:Re: Invitation 3239X-UID:6 3240 3241" | \ 3242 $at_diff - "$at_stdout" || at_failed=: 3243at_fn_check_status 0 $at_status "$at_srcdir/delete.at:210" 3244$at_failed && at_fn_log_failure 3245$at_traceon; } 3246 3247 3248# ## 3249cat >commands2 <<'_ATEOF' 32501 3251set_deleted 32523 3253set_deleted 32545 3255set_deleted 3256expunge 3257count 32581 3259uid 3260headers 32612 3262uid 3263headers 32643 3265uid 3266headers 3267_ATEOF 3268 3269 3270{ set +x 3271$as_echo "$at_srcdir/delete.at:267: mbop -m inbox2 < commands2|x_imapbase_normalize" 3272at_fn_check_prepare_notrace 'a shell pipeline' "delete.at:267" 3273( $at_check_trace; mbop -m inbox2 < commands2|x_imapbase_normalize 3274) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3275at_status=$? at_failed=false 3276$at_check_filter 3277at_fn_diff_devnull "$at_stderr" || at_failed=: 3278echo >>"$at_stdout"; $as_echo "1 current message 32791 set_deleted: OK 32803 current message 32813 set_deleted: OK 32825 current message 32835 set_deleted: OK 3284expunge: OK 3285count: 3 32861 current message 32871 uid: 2 32881 headers: Received:(from alice@wonder.land) by wonder.land id 3302 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3289Date:Mon, 29 Jul 2002 22:00:02 +0100 3290From:Alice <alice@wonder.land> 3291Message-Id:<200207292200.3302@wonder.land> 3292To:March Hare <hare@wonder.land> 3293Subject:Re: Invitation 3294X-IMAPbase:10 9 3295X-UID:2 3296 32972 current message 32982 uid: 4 32992 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3300Date:Mon, 29 Jul 2002 22:00:04 +0100 3301From:Alice <alice@wonder.land> 3302Message-Id:<200207292200.3304@wonder.land> 3303To:March Hare <hare@wonder.land> 3304Subject:Re: Invitation 3305X-UID:4 3306 33073 current message 33083 uid: 6 33093 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3310Date:Mon, 29 Jul 2002 22:00:06 +0100 3311From:Alice <alice@wonder.land> 3312Message-Id:<200207292200.3306@wonder.land> 3313To:March Hare <hare@wonder.land> 3314Subject:Re: Invitation 3315X-UID:6 3316 3317" | \ 3318 $at_diff - "$at_stdout" || at_failed=: 3319at_fn_check_status 0 $at_status "$at_srcdir/delete.at:267" 3320$at_failed && at_fn_log_failure 3321$at_traceon; } 3322 3323 3324cat >commands2a <<'_ATEOF' 3325count 33261 3327uid 3328headers 33292 3330uid 3331headers 33323 3333uid 3334headers 3335_ATEOF 3336 3337 3338{ set +x 3339$as_echo "$at_srcdir/delete.at:323: mbop -m inbox2 < commands2a|x_imapbase_normalize" 3340at_fn_check_prepare_notrace 'a shell pipeline' "delete.at:323" 3341( $at_check_trace; mbop -m inbox2 < commands2a|x_imapbase_normalize 3342) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3343at_status=$? at_failed=false 3344$at_check_filter 3345at_fn_diff_devnull "$at_stderr" || at_failed=: 3346echo >>"$at_stdout"; $as_echo "count: 3 33471 current message 33481 uid: 2 33491 headers: Received:(from alice@wonder.land) by wonder.land id 3302 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3350Date:Mon, 29 Jul 2002 22:00:02 +0100 3351From:Alice <alice@wonder.land> 3352Message-Id:<200207292200.3302@wonder.land> 3353To:March Hare <hare@wonder.land> 3354Subject:Re: Invitation 3355X-IMAPbase:10 9 3356X-UID:2 3357 33582 current message 33592 uid: 4 33602 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3361Date:Mon, 29 Jul 2002 22:00:04 +0100 3362From:Alice <alice@wonder.land> 3363Message-Id:<200207292200.3304@wonder.land> 3364To:March Hare <hare@wonder.land> 3365Subject:Re: Invitation 3366X-UID:4 3367 33683 current message 33693 uid: 6 33703 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3371Date:Mon, 29 Jul 2002 22:00:06 +0100 3372From:Alice <alice@wonder.land> 3373Message-Id:<200207292200.3306@wonder.land> 3374To:March Hare <hare@wonder.land> 3375Subject:Re: Invitation 3376X-UID:6 3377 3378" | \ 3379 $at_diff - "$at_stdout" || at_failed=: 3380at_fn_check_status 0 $at_status "$at_srcdir/delete.at:323" 3381$at_failed && at_fn_log_failure 3382$at_traceon; } 3383 3384 3385 set +x 3386 $at_times_p && times >"$at_times_file" 3387) 5>&1 2>&1 7>&- | eval $at_tee_pipe 3388read at_status <"$at_status_file" 3389#AT_STOP_8 3390#AT_START_9 3391at_fn_group_banner 9 'append.at:17' \ 3392 "append" " " 3393at_xfail=no 3394( 3395 $as_echo "9. $at_setup_line: testing $at_desc ..." 3396 $at_traceon 3397 3398cat >inbox <<'_ATEOF' 3399From hare@wonder.land Mon Jul 29 22:00:08 2002 3400Received: (from hare@wonder.land) 3401 by wonder.land id 3301 3402 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 3403Date: Mon, 29 Jul 2002 22:00:01 +0100 3404From: March Hare <hare@wonder.land> 3405Message-Id: <200207292200.3301@wonder.land> 3406To: Alice <alice@wonder.land> 3407Subject: Invitation 3408X-IMAPbase: 10 9 3409X-UID: 1 3410 3411Have some wine 3412 3413From alice@wonder.land Mon Jul 29 22:00:09 2002 3414Received: (from alice@wonder.land) 3415 by wonder.land id 3302 3416 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3417Date: Mon, 29 Jul 2002 22:00:02 +0100 3418From: Alice <alice@wonder.land> 3419Message-Id: <200207292200.3302@wonder.land> 3420To: March Hare <hare@wonder.land> 3421Subject: Re: Invitation 3422X-UID: 2 3423 3424I don't see any wine 3425 3426From hare@wonder.land Mon Jul 29 22:00:10 2002 3427Received: (from hare@wonder.land) 3428 by wonder.land id 3303 3429 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3430Date: Mon, 29 Jul 2002 22:00:03 +0100 3431From: March Hare <hare@wonder.land> 3432Message-Id: <200207292200.3303@wonder.land> 3433To: Alice <alice@wonder.land> 3434Subject: Re: Invitation 3435X-UID: 3 3436 3437There isn't any 3438_ATEOF 3439 3440 3441cat >msg <<'_ATEOF' 3442Received: (from alice@wonder.land) 3443 by wonder.land id 3304 3444 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3445Date: Mon, 29 Jul 2002 22:00:04 +0100 3446From: Alice <alice@wonder.land> 3447Message-Id: <200207292200.3304@wonder.land> 3448To: March Hare <hare@wonder.land> 3449Subject: Re: Invitation 3450 3451Then it wasn't very civil of you to offer it 3452_ATEOF 3453 3454 3455 3456cat >commands <<'_ATEOF' 3457append msg 3458count 34594 3460uid 3461env_date 3462env_sender 3463headers 3464body_text 3465_ATEOF 3466 3467{ set +x 3468$as_echo "$at_srcdir/append.at:84: mbop -m inbox < commands" 3469at_fn_check_prepare_trace "append.at:84" 3470( $at_check_trace; mbop -m inbox < commands 3471) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3472at_status=$? at_failed=false 3473$at_check_filter 3474at_fn_diff_devnull "$at_stderr" || at_failed=: 3475echo >>"$at_stdout"; $as_echo "append: OK 3476count: 4 34774 current message 34784 uid: 9 34794 env_date: Mon Jul 29 21:00:09 2002 34804 env_sender: alice@wonder.land 34814 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3482Date:Mon, 29 Jul 2002 22:00:04 +0100 3483From:Alice <alice@wonder.land> 3484Message-Id:<200207292200.3304@wonder.land> 3485To:March Hare <hare@wonder.land> 3486Subject:Re: Invitation 3487X-UID:9 3488 34894 body_text: Then it wasn't very civil of you to offer it 3490 3491 3492" | \ 3493 $at_diff - "$at_stdout" || at_failed=: 3494at_fn_check_status 0 $at_status "$at_srcdir/append.at:84" 3495$at_failed && at_fn_log_failure 3496$at_traceon; } 3497 3498 3499{ set +x 3500$as_echo "$at_srcdir/append.at:105: 3501mbop -m inbox uidvalidity 3502" 3503at_fn_check_prepare_notrace 'an embedded newline' "append.at:105" 3504( $at_check_trace; 3505mbop -m inbox uidvalidity 3506 3507) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3508at_status=$? at_failed=false 3509$at_check_filter 3510at_fn_diff_devnull "$at_stderr" || at_failed=: 3511echo >>"$at_stdout"; $as_echo "uidvalidity: 10 3512" | \ 3513 $at_diff - "$at_stdout" || at_failed=: 3514at_fn_check_status 0 $at_status "$at_srcdir/append.at:105" 3515$at_failed && at_fn_log_failure 3516$at_traceon; } 3517 3518 3519 set +x 3520 $at_times_p && times >"$at_times_file" 3521) 5>&1 2>&1 7>&- | eval $at_tee_pipe 3522read at_status <"$at_status_file" 3523#AT_STOP_9 3524#AT_START_10 3525at_fn_group_banner 10 'uid.at:17' \ 3526 "UID" " " 3527at_xfail=no 3528( 3529 $as_echo "10. $at_setup_line: testing $at_desc ..." 3530 $at_traceon 3531 3532cat >inbox <<'_ATEOF' 3533From hare@wonder.land Mon Jul 29 22:00:08 2002 3534Received: (from hare@wonder.land) 3535 by wonder.land id 3301 3536 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 3537Date: Mon, 29 Jul 2002 22:00:01 +0100 3538From: March Hare <hare@wonder.land> 3539Message-Id: <200207292200.3301@wonder.land> 3540To: Alice <alice@wonder.land> 3541Subject: Invitation 3542X-IMAPbase: 10 51 3543X-UID: 1 3544 3545Have some wine 3546 3547From alice@wonder.land Mon Jul 29 22:00:09 2002 3548Received: (from alice@wonder.land) 3549 by wonder.land id 3302 3550 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3551Date: Mon, 29 Jul 2002 22:00:02 +0100 3552From: Alice <alice@wonder.land> 3553Message-Id: <200207292200.3302@wonder.land> 3554To: March Hare <hare@wonder.land> 3555Subject: Re: Invitation 3556X-UID: 20 3557 3558I don't see any wine 3559 3560From hare@wonder.land Mon Jul 29 22:00:10 2002 3561Received: (from hare@wonder.land) 3562 by wonder.land id 3303 3563 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3564Date: Mon, 29 Jul 2002 22:00:03 +0100 3565From: March Hare <hare@wonder.land> 3566Message-Id: <200207292200.3303@wonder.land> 3567To: Alice <alice@wonder.land> 3568Subject: Re: Invitation 3569X-UID: 22 3570 3571There isn't any 3572 3573From alice@wonder.land Mon Jul 29 22:00:11 2002 3574Received: (from alice@wonder.land) 3575 by wonder.land id 3304 3576 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3577Date: Mon, 29 Jul 2002 22:00:04 +0100 3578From: Alice <alice@wonder.land> 3579Message-Id: <200207292200.3304@wonder.land> 3580To: March Hare <hare@wonder.land> 3581Subject: Re: Invitation 3582X-UID: 43 3583 3584Then it wasn't very civil of you to offer it 3585 3586From hare@wonder.land Mon Jul 29 22:00:12 2002 3587Received: (from hare@wonder.land) 3588 by wonder.land id 3305 3589 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 3590Date: Mon, 29 Jul 2002 22:00:05 +0100 3591From: March Hare <hare@wonder.land> 3592Message-Id: <200207292200.3305@wonder.land> 3593To: Alice <alice@wonder.land> 3594Subject: Re: Invitation 3595X-UID: 50 3596 3597It wasn't very civil of you to sit down without being invited 3598_ATEOF 3599 3600 3601cat >commands <<'_ATEOF' 3602uidvalidity 3603uidnext 36041 3605uid 36062 3607uid 36083 3609uid 36104 3611uid 36125 3613uid 3614_ATEOF 3615 3616{ set +x 3617$as_echo "$at_srcdir/uid.at:100: mbop -m inbox < commands" 3618at_fn_check_prepare_trace "uid.at:100" 3619( $at_check_trace; mbop -m inbox < commands 3620) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3621at_status=$? at_failed=false 3622$at_check_filter 3623at_fn_diff_devnull "$at_stderr" || at_failed=: 3624echo >>"$at_stdout"; $as_echo "uidvalidity: 10 3625uidnext: 51 36261 current message 36271 uid: 1 36282 current message 36292 uid: 20 36303 current message 36313 uid: 22 36324 current message 36334 uid: 43 36345 current message 36355 uid: 50 3636" | \ 3637 $at_diff - "$at_stdout" || at_failed=: 3638at_fn_check_status 0 $at_status "$at_srcdir/uid.at:100" 3639$at_failed && at_fn_log_failure 3640$at_traceon; } 3641 3642 set +x 3643 $at_times_p && times >"$at_times_file" 3644) 5>&1 2>&1 7>&- | eval $at_tee_pipe 3645read at_status <"$at_status_file" 3646#AT_STOP_10 3647#AT_START_11 3648at_fn_group_banner 11 'uidvalidity.at:17' \ 3649 "uidvalidity" " " 3650at_xfail=no 3651( 3652 $as_echo "11. $at_setup_line: testing $at_desc ..." 3653 $at_traceon 3654 3655cat >inbox <<'_ATEOF' 3656From hare@wonder.land Mon Jul 29 22:00:08 2002 3657Received: (from hare@wonder.land) 3658 by wonder.land id 3301 3659 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 3660Date: Mon, 29 Jul 2002 22:00:01 +0100 3661From: March Hare <hare@wonder.land> 3662Message-Id: <200207292200.3301@wonder.land> 3663To: Alice <alice@wonder.land> 3664Subject: Invitation 3665X-IMAPbase: 10 9 3666X-UID: 1 3667 3668Have some wine 3669 3670From alice@wonder.land Mon Jul 29 22:00:09 2002 3671Received: (from alice@wonder.land) 3672 by wonder.land id 3302 3673 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3674Date: Mon, 29 Jul 2002 22:00:02 +0100 3675From: Alice <alice@wonder.land> 3676Message-Id: <200207292200.3302@wonder.land> 3677To: March Hare <hare@wonder.land> 3678Subject: Re: Invitation 3679X-UID: 2 3680 3681I don't see any wine 3682 3683From hare@wonder.land Mon Jul 29 22:00:10 2002 3684Received: (from hare@wonder.land) 3685 by wonder.land id 3303 3686 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3687Date: Mon, 29 Jul 2002 22:00:03 +0100 3688From: March Hare <hare@wonder.land> 3689Message-Id: <200207292200.3303@wonder.land> 3690To: Alice <alice@wonder.land> 3691Subject: Re: Invitation 3692X-UID: 3 3693 3694There isn't any 3695 3696From alice@wonder.land Mon Jul 29 22:00:11 2002 3697Received: (from alice@wonder.land) 3698 by wonder.land id 3304 3699 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3700Date: Mon, 29 Jul 2002 22:00:04 +0100 3701From: Alice <alice@wonder.land> 3702Message-Id: <200207292200.3304@wonder.land> 3703To: March Hare <hare@wonder.land> 3704Subject: Re: Invitation 3705X-UID: 4 3706 3707Then it wasn't very civil of you to offer it 3708 3709From hare@wonder.land Mon Jul 29 22:00:12 2002 3710Received: (from hare@wonder.land) 3711 by wonder.land id 3305 3712 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 3713Date: Mon, 29 Jul 2002 22:00:05 +0100 3714From: March Hare <hare@wonder.land> 3715Message-Id: <200207292200.3305@wonder.land> 3716To: Alice <alice@wonder.land> 3717Subject: Re: Invitation 3718X-UID: 5 3719 3720It wasn't very civil of you to sit down without being invited 3721_ATEOF 3722 3723 3724{ set +x 3725$as_echo "$at_srcdir/uidvalidity.at:86: mbop -m inbox uidvalidity \\; uidnext" 3726at_fn_check_prepare_trace "uidvalidity.at:86" 3727( $at_check_trace; mbop -m inbox uidvalidity \; uidnext 3728) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3729at_status=$? at_failed=false 3730$at_check_filter 3731at_fn_diff_devnull "$at_stderr" || at_failed=: 3732echo >>"$at_stdout"; $as_echo "uidvalidity: 10 3733uidnext: 9 3734" | \ 3735 $at_diff - "$at_stdout" || at_failed=: 3736at_fn_check_status 0 $at_status "$at_srcdir/uidvalidity.at:86" 3737$at_failed && at_fn_log_failure 3738$at_traceon; } 3739 3740 3741{ set +x 3742$as_echo "$at_srcdir/uidvalidity.at:92: grep ^X- inbox" 3743at_fn_check_prepare_trace "uidvalidity.at:92" 3744( $at_check_trace; grep ^X- inbox 3745) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3746at_status=$? at_failed=false 3747$at_check_filter 3748at_fn_diff_devnull "$at_stderr" || at_failed=: 3749echo >>"$at_stdout"; $as_echo "X-IMAPbase: 10 9 3750X-UID: 1 3751X-UID: 2 3752X-UID: 3 3753X-UID: 4 3754X-UID: 5 3755" | \ 3756 $at_diff - "$at_stdout" || at_failed=: 3757at_fn_check_status 0 $at_status "$at_srcdir/uidvalidity.at:92" 3758$at_failed && at_fn_log_failure 3759$at_traceon; } 3760 3761 3762{ set +x 3763$as_echo "$at_srcdir/uidvalidity.at:102: mbop -m inbox uidvalidity \\; uidnext" 3764at_fn_check_prepare_trace "uidvalidity.at:102" 3765( $at_check_trace; mbop -m inbox uidvalidity \; uidnext 3766) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3767at_status=$? at_failed=false 3768$at_check_filter 3769at_fn_diff_devnull "$at_stderr" || at_failed=: 3770echo >>"$at_stdout"; $as_echo "uidvalidity: 10 3771uidnext: 9 3772" | \ 3773 $at_diff - "$at_stdout" || at_failed=: 3774at_fn_check_status 0 $at_status "$at_srcdir/uidvalidity.at:102" 3775$at_failed && at_fn_log_failure 3776$at_traceon; } 3777 3778 3779 set +x 3780 $at_times_p && times >"$at_times_file" 3781) 5>&1 2>&1 7>&- | eval $at_tee_pipe 3782read at_status <"$at_status_file" 3783#AT_STOP_11 3784#AT_START_12 3785at_fn_group_banner 12 'uidnext.at:17' \ 3786 "UID monotonicity" " " 3787at_xfail=no 3788( 3789 $as_echo "12. $at_setup_line: testing $at_desc ..." 3790 $at_traceon 3791 3792cat >inbox <<'_ATEOF' 3793From hare@wonder.land Mon Jul 29 22:00:08 2002 3794Received: (from hare@wonder.land) 3795 by wonder.land id 3301 3796 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 3797Date: Mon, 29 Jul 2002 22:00:01 +0100 3798From: March Hare <hare@wonder.land> 3799Message-Id: <200207292200.3301@wonder.land> 3800To: Alice <alice@wonder.land> 3801Subject: Invitation 3802X-IMAPbase: 10 9 3803X-UID: 1 3804 3805Have some wine 3806 3807From alice@wonder.land Mon Jul 29 22:00:09 2002 3808Received: (from alice@wonder.land) 3809 by wonder.land id 3302 3810 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 3811Date: Mon, 29 Jul 2002 22:00:02 +0100 3812From: Alice <alice@wonder.land> 3813Message-Id: <200207292200.3302@wonder.land> 3814To: March Hare <hare@wonder.land> 3815Subject: Re: Invitation 3816X-UID: 2 3817 3818I don't see any wine 3819 3820From hare@wonder.land Mon Jul 29 22:00:10 2002 3821Received: (from hare@wonder.land) 3822 by wonder.land id 3303 3823 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 3824Date: Mon, 29 Jul 2002 22:00:03 +0100 3825From: March Hare <hare@wonder.land> 3826Message-Id: <200207292200.3303@wonder.land> 3827To: Alice <alice@wonder.land> 3828Subject: Re: Invitation 3829X-UID: 3 3830 3831There isn't any 3832 3833From alice@wonder.land Mon Jul 29 22:00:11 2002 3834Received: (from alice@wonder.land) 3835 by wonder.land id 3304 3836 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 3837Date: Mon, 29 Jul 2002 22:00:04 +0100 3838From: Alice <alice@wonder.land> 3839Message-Id: <200207292200.3304@wonder.land> 3840To: March Hare <hare@wonder.land> 3841Subject: Re: Invitation 3842X-UID: 4 3843 3844Then it wasn't very civil of you to offer it 3845 3846From hare@wonder.land Mon Jul 29 22:00:12 2002 3847Received: (from hare@wonder.land) 3848 by wonder.land id 3305 3849 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 3850Date: Mon, 29 Jul 2002 22:00:05 +0100 3851From: March Hare <hare@wonder.land> 3852Message-Id: <200207292200.3305@wonder.land> 3853To: Alice <alice@wonder.land> 3854Subject: Re: Invitation 3855X-UID: 5 3856 3857It wasn't very civil of you to sit down without being invited 3858_ATEOF 3859 3860 3861{ set +x 3862$as_echo "$at_srcdir/uidnext.at:86: mbop -m inbox uidnext \\; uidvalidity" 3863at_fn_check_prepare_trace "uidnext.at:86" 3864( $at_check_trace; mbop -m inbox uidnext \; uidvalidity 3865) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3866at_status=$? at_failed=false 3867$at_check_filter 3868at_fn_diff_devnull "$at_stderr" || at_failed=: 3869echo >>"$at_stdout"; $as_echo "uidnext: 9 3870uidvalidity: 10 3871" | \ 3872 $at_diff - "$at_stdout" || at_failed=: 3873at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:86" 3874$at_failed && at_fn_log_failure 3875$at_traceon; } 3876 3877 3878{ set +x 3879$as_echo "$at_srcdir/uidnext.at:92: mbop -m inbox 5 \\; set_deleted \\; expunge" 3880at_fn_check_prepare_trace "uidnext.at:92" 3881( $at_check_trace; mbop -m inbox 5 \; set_deleted \; expunge 3882) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3883at_status=$? at_failed=false 3884$at_check_filter 3885at_fn_diff_devnull "$at_stderr" || at_failed=: 3886echo >>"$at_stdout"; $as_echo "5 current message 38875 set_deleted: OK 3888expunge: OK 3889" | \ 3890 $at_diff - "$at_stdout" || at_failed=: 3891at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:92" 3892$at_failed && at_fn_log_failure 3893$at_traceon; } 3894 3895{ set +x 3896$as_echo "$at_srcdir/uidnext.at:98: mbop -m inbox uidnext \\; uidvalidity" 3897at_fn_check_prepare_trace "uidnext.at:98" 3898( $at_check_trace; mbop -m inbox uidnext \; uidvalidity 3899) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3900at_status=$? at_failed=false 3901$at_check_filter 3902at_fn_diff_devnull "$at_stderr" || at_failed=: 3903echo >>"$at_stdout"; $as_echo "uidnext: 9 3904uidvalidity: 10 3905" | \ 3906 $at_diff - "$at_stdout" || at_failed=: 3907at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:98" 3908$at_failed && at_fn_log_failure 3909$at_traceon; } 3910 3911 3912{ set +x 3913$as_echo "$at_srcdir/uidnext.at:104: mbop -m inbox 3 \\; set_deleted \\; expunge" 3914at_fn_check_prepare_trace "uidnext.at:104" 3915( $at_check_trace; mbop -m inbox 3 \; set_deleted \; expunge 3916) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3917at_status=$? at_failed=false 3918$at_check_filter 3919at_fn_diff_devnull "$at_stderr" || at_failed=: 3920echo >>"$at_stdout"; $as_echo "3 current message 39213 set_deleted: OK 3922expunge: OK 3923" | \ 3924 $at_diff - "$at_stdout" || at_failed=: 3925at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:104" 3926$at_failed && at_fn_log_failure 3927$at_traceon; } 3928 3929{ set +x 3930$as_echo "$at_srcdir/uidnext.at:110: mbop -m inbox uidnext \\; uidvalidity" 3931at_fn_check_prepare_trace "uidnext.at:110" 3932( $at_check_trace; mbop -m inbox uidnext \; uidvalidity 3933) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3934at_status=$? at_failed=false 3935$at_check_filter 3936at_fn_diff_devnull "$at_stderr" || at_failed=: 3937echo >>"$at_stdout"; $as_echo "uidnext: 9 3938uidvalidity: 10 3939" | \ 3940 $at_diff - "$at_stdout" || at_failed=: 3941at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:110" 3942$at_failed && at_fn_log_failure 3943$at_traceon; } 3944 3945 3946cat >msg <<'_ATEOF' 3947From alice@wonder.land Mon Jul 29 22:00:13 2002 3948Received: (from alice@wonder.land) 3949 by wonder.land id 3306 3950 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 3951Date: Mon, 29 Jul 2002 22:00:06 +0100 3952From: Alice <alice@wonder.land> 3953Message-Id: <200207292200.3306@wonder.land> 3954To: March Hare <hare@wonder.land> 3955Subject: Re: Invitation 3956 3957I didn't know it was YOUR table, it's laid for a 3958great many more than three. 3959_ATEOF 3960 3961 3962{ set +x 3963$as_echo "$at_srcdir/uidnext.at:131: mbop -m inbox append msg \\; count \\; 4 \\; uid \\; uidnext" 3964at_fn_check_prepare_trace "uidnext.at:131" 3965( $at_check_trace; mbop -m inbox append msg \; count \; 4 \; uid \; uidnext 3966) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3967at_status=$? at_failed=false 3968$at_check_filter 3969at_fn_diff_devnull "$at_stderr" || at_failed=: 3970echo >>"$at_stdout"; $as_echo "append: OK 3971count: 4 39724 current message 39734 uid: 9 3974uidnext: 10 3975" | \ 3976 $at_diff - "$at_stdout" || at_failed=: 3977at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:131" 3978$at_failed && at_fn_log_failure 3979$at_traceon; } 3980 3981{ set +x 3982$as_echo "$at_srcdir/uidnext.at:139: mbop -m inbox uidnext \\; uidvalidity" 3983at_fn_check_prepare_trace "uidnext.at:139" 3984( $at_check_trace; mbop -m inbox uidnext \; uidvalidity 3985) >>"$at_stdout" 2>>"$at_stderr" 5>&- 3986at_status=$? at_failed=false 3987$at_check_filter 3988at_fn_diff_devnull "$at_stderr" || at_failed=: 3989echo >>"$at_stdout"; $as_echo "uidnext: 10 3990uidvalidity: 10 3991" | \ 3992 $at_diff - "$at_stdout" || at_failed=: 3993at_fn_check_status 0 $at_status "$at_srcdir/uidnext.at:139" 3994$at_failed && at_fn_log_failure 3995$at_traceon; } 3996 3997 3998 set +x 3999 $at_times_p && times >"$at_times_file" 4000) 5>&1 2>&1 7>&- | eval $at_tee_pipe 4001read at_status <"$at_status_file" 4002#AT_STOP_12 4003#AT_START_13 4004at_fn_group_banner 13 'notify.at:17' \ 4005 "append notification" " " 4006at_xfail=no 4007( 4008 $as_echo "13. $at_setup_line: testing $at_desc ..." 4009 $at_traceon 4010 4011{ set +x 4012$as_echo "$at_srcdir/notify.at:18: cat \$spooldir/mbox1 > inbox" 4013at_fn_check_prepare_dynamic "cat $spooldir/mbox1 > inbox" "notify.at:18" 4014( $at_check_trace; cat $spooldir/mbox1 > inbox 4015) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4016at_status=$? at_failed=false 4017$at_check_filter 4018at_fn_diff_devnull "$at_stderr" || at_failed=: 4019at_fn_diff_devnull "$at_stdout" || at_failed=: 4020at_fn_check_status 0 $at_status "$at_srcdir/notify.at:18" 4021$at_failed && at_fn_log_failure 4022$at_traceon; } 4023 4024cat >msg <<'_ATEOF' 4025Received: (from alice@wonder.land) 4026 by wonder.land id 3304 4027 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4028Date: Mon, 29 Jul 2002 22:00:04 +0100 4029From: Alice <alice@wonder.land> 4030Message-Id: <200207292200.3304@wonder.land> 4031To: March Hare <hare@wonder.land> 4032Subject: Re: Invitation 4033Return-Path: alice@wonder.land 4034 4035Then it wasn't very civil of you to offer it 4036_ATEOF 4037 4038{ set +x 4039$as_echo "$at_srcdir/notify.at:32: 4040mbop -m inbox --notify append msg 4041" 4042at_fn_check_prepare_notrace 'an embedded newline' "notify.at:32" 4043( $at_check_trace; 4044mbop -m inbox --notify append msg 4045 4046) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4047at_status=$? at_failed=false 4048$at_check_filter 4049echo >>"$at_stderr"; $as_echo "mbop: new message: Alice <alice@wonder.land> Re: Invitation 4050" | \ 4051 $at_diff - "$at_stderr" || at_failed=: 4052echo >>"$at_stdout"; $as_echo "append: OK 4053" | \ 4054 $at_diff - "$at_stdout" || at_failed=: 4055at_fn_check_status 0 $at_status "$at_srcdir/notify.at:32" 4056$at_failed && at_fn_log_failure 4057$at_traceon; } 4058 4059 set +x 4060 $at_times_p && times >"$at_times_file" 4061) 5>&1 2>&1 7>&- | eval $at_tee_pipe 4062read at_status <"$at_status_file" 4063#AT_STOP_13 4064#AT_START_14 4065at_fn_group_banner 14 'rospool.at:17' \ 4066 "read-only spool directory" " " 4067at_xfail=no 4068( 4069 $as_echo "14. $at_setup_line: testing $at_desc ..." 4070 $at_traceon 4071 4072 4073# Basically, this testcase is a copy of delete.at that is run over mailboxes 4074# located in a directory not writable to the current user. 4075# 4076# Obviously, it is useless when run with root privileges. 4077 4078{ set +x 4079$as_echo "$at_srcdir/rospool.at:24: 4080mkdir mailspool 4081cat >mailspool/inbox <<'_ATEOF' 4082From hare@wonder.land Mon Jul 29 22:00:08 2002 4083Received: (from hare@wonder.land) 4084 by wonder.land id 3301 4085 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 4086Date: Mon, 29 Jul 2002 22:00:01 +0100 4087From: March Hare <hare@wonder.land> 4088Message-Id: <200207292200.3301@wonder.land> 4089To: Alice <alice@wonder.land> 4090Subject: Invitation 4091X-IMAPbase: 10 9 4092X-UID: 1 4093 4094Have some wine 4095 4096From alice@wonder.land Mon Jul 29 22:00:09 2002 4097Received: (from alice@wonder.land) 4098 by wonder.land id 3302 4099 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 4100Date: Mon, 29 Jul 2002 22:00:02 +0100 4101From: Alice <alice@wonder.land> 4102Message-Id: <200207292200.3302@wonder.land> 4103To: March Hare <hare@wonder.land> 4104Subject: Re: Invitation 4105X-UID: 2 4106 4107I don't see any wine 4108 4109From hare@wonder.land Mon Jul 29 22:00:10 2002 4110Received: (from hare@wonder.land) 4111 by wonder.land id 3303 4112 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 4113Date: Mon, 29 Jul 2002 22:00:03 +0100 4114From: March Hare <hare@wonder.land> 4115Message-Id: <200207292200.3303@wonder.land> 4116To: Alice <alice@wonder.land> 4117Subject: Re: Invitation 4118X-UID: 3 4119 4120There isn't any 4121 4122From alice@wonder.land Mon Jul 29 22:00:11 2002 4123Received: (from alice@wonder.land) 4124 by wonder.land id 3304 4125 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4126Date: Mon, 29 Jul 2002 22:00:04 +0100 4127From: Alice <alice@wonder.land> 4128Message-Id: <200207292200.3304@wonder.land> 4129To: March Hare <hare@wonder.land> 4130Subject: Re: Invitation 4131X-UID: 4 4132 4133Then it wasn't very civil of you to offer it 4134 4135From hare@wonder.land Mon Jul 29 22:00:12 2002 4136Received: (from hare@wonder.land) 4137 by wonder.land id 3305 4138 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 4139Date: Mon, 29 Jul 2002 22:00:05 +0100 4140From: March Hare <hare@wonder.land> 4141Message-Id: <200207292200.3305@wonder.land> 4142To: Alice <alice@wonder.land> 4143Subject: Re: Invitation 4144X-UID: 5 4145 4146It wasn't very civil of you to sit down without being invited 4147 4148From alice@wonder.land Mon Jul 29 22:00:13 2002 4149Received: (from alice@wonder.land) 4150 by wonder.land id 3306 4151 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4152Date: Mon, 29 Jul 2002 22:00:06 +0100 4153From: Alice <alice@wonder.land> 4154Message-Id: <200207292200.3306@wonder.land> 4155To: March Hare <hare@wonder.land> 4156Subject: Re: Invitation 4157X-UID: 6 4158 4159I didn't know it was YOUR table, it's laid for a 4160great many more than three. 4161 4162_ATEOF 4163 4164cp mailspool/inbox mailspool/inbox1 4165cp mailspool/inbox mailspool/inbox2 4166chmod -w mailspool 4167" 4168at_fn_check_prepare_notrace 'an embedded newline' "rospool.at:24" 4169( $at_check_trace; 4170mkdir mailspool 4171cat >mailspool/inbox <<'_ATEOF' 4172From hare@wonder.land Mon Jul 29 22:00:08 2002 4173Received: (from hare@wonder.land) 4174 by wonder.land id 3301 4175 for alice@wonder.land; Mon, 29 Jul 2002 22:00:06 +0100 4176Date: Mon, 29 Jul 2002 22:00:01 +0100 4177From: March Hare <hare@wonder.land> 4178Message-Id: <200207292200.3301@wonder.land> 4179To: Alice <alice@wonder.land> 4180Subject: Invitation 4181X-IMAPbase: 10 9 4182X-UID: 1 4183 4184Have some wine 4185 4186From alice@wonder.land Mon Jul 29 22:00:09 2002 4187Received: (from alice@wonder.land) 4188 by wonder.land id 3302 4189 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 4190Date: Mon, 29 Jul 2002 22:00:02 +0100 4191From: Alice <alice@wonder.land> 4192Message-Id: <200207292200.3302@wonder.land> 4193To: March Hare <hare@wonder.land> 4194Subject: Re: Invitation 4195X-UID: 2 4196 4197I don't see any wine 4198 4199From hare@wonder.land Mon Jul 29 22:00:10 2002 4200Received: (from hare@wonder.land) 4201 by wonder.land id 3303 4202 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 4203Date: Mon, 29 Jul 2002 22:00:03 +0100 4204From: March Hare <hare@wonder.land> 4205Message-Id: <200207292200.3303@wonder.land> 4206To: Alice <alice@wonder.land> 4207Subject: Re: Invitation 4208X-UID: 3 4209 4210There isn't any 4211 4212From alice@wonder.land Mon Jul 29 22:00:11 2002 4213Received: (from alice@wonder.land) 4214 by wonder.land id 3304 4215 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4216Date: Mon, 29 Jul 2002 22:00:04 +0100 4217From: Alice <alice@wonder.land> 4218Message-Id: <200207292200.3304@wonder.land> 4219To: March Hare <hare@wonder.land> 4220Subject: Re: Invitation 4221X-UID: 4 4222 4223Then it wasn't very civil of you to offer it 4224 4225From hare@wonder.land Mon Jul 29 22:00:12 2002 4226Received: (from hare@wonder.land) 4227 by wonder.land id 3305 4228 for alice@wonder.land; Mon, 29 Jul 2002 22:00:10 +0100 4229Date: Mon, 29 Jul 2002 22:00:05 +0100 4230From: March Hare <hare@wonder.land> 4231Message-Id: <200207292200.3305@wonder.land> 4232To: Alice <alice@wonder.land> 4233Subject: Re: Invitation 4234X-UID: 5 4235 4236It wasn't very civil of you to sit down without being invited 4237 4238From alice@wonder.land Mon Jul 29 22:00:13 2002 4239Received: (from alice@wonder.land) 4240 by wonder.land id 3306 4241 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4242Date: Mon, 29 Jul 2002 22:00:06 +0100 4243From: Alice <alice@wonder.land> 4244Message-Id: <200207292200.3306@wonder.land> 4245To: March Hare <hare@wonder.land> 4246Subject: Re: Invitation 4247X-UID: 6 4248 4249I didn't know it was YOUR table, it's laid for a 4250great many more than three. 4251 4252_ATEOF 4253 4254cp mailspool/inbox mailspool/inbox1 4255cp mailspool/inbox mailspool/inbox2 4256chmod -w mailspool 4257 4258) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4259at_status=$? at_failed=false 4260$at_check_filter 4261at_fn_diff_devnull "$at_stderr" || at_failed=: 4262at_fn_diff_devnull "$at_stdout" || at_failed=: 4263at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:24" 4264$at_failed && at_fn_log_failure 4265$at_traceon; } 4266 4267 4268cat >commands <<'_ATEOF' 42693 4270set_deleted 4271expunge 4272count 4273# Message 4 becomes 3 after expunge. Re-select it. 42743 4275uid 4276headers 4277_ATEOF 4278 4279 4280{ set +x 4281$as_echo "$at_srcdir/rospool.at:124: mbop -m mailspool/inbox < commands" 4282at_fn_check_prepare_trace "rospool.at:124" 4283( $at_check_trace; mbop -m mailspool/inbox < commands 4284) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4285at_status=$? at_failed=false 4286$at_check_filter 4287at_fn_diff_devnull "$at_stderr" || at_failed=: 4288echo >>"$at_stdout"; $as_echo "3 current message 42893 set_deleted: OK 4290expunge: OK 4291count: 5 42923 current message 42933 uid: 4 42943 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4295Date:Mon, 29 Jul 2002 22:00:04 +0100 4296From:Alice <alice@wonder.land> 4297Message-Id:<200207292200.3304@wonder.land> 4298To:March Hare <hare@wonder.land> 4299Subject:Re: Invitation 4300X-UID:4 4301 4302" | \ 4303 $at_diff - "$at_stdout" || at_failed=: 4304at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:124" 4305$at_failed && at_fn_log_failure 4306$at_traceon; } 4307 4308 4309cat >commands1 <<'_ATEOF' 43101 4311set_deleted 43122 4313set_deleted 43145 4315set_deleted 4316expunge 4317count 43181 4319uid 4320headers 43212 4322uid 4323headers 43243 4325uid 4326headers 4327_ATEOF 4328 4329 4330{ set +x 4331$as_echo "$at_srcdir/rospool.at:162: mbop -m mailspool/inbox1 < commands1|x_imapbase_normalize" 4332at_fn_check_prepare_notrace 'a shell pipeline' "rospool.at:162" 4333( $at_check_trace; mbop -m mailspool/inbox1 < commands1|x_imapbase_normalize 4334) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4335at_status=$? at_failed=false 4336$at_check_filter 4337at_fn_diff_devnull "$at_stderr" || at_failed=: 4338echo >>"$at_stdout"; $as_echo "1 current message 43391 set_deleted: OK 43402 current message 43412 set_deleted: OK 43425 current message 43435 set_deleted: OK 4344expunge: OK 4345count: 3 43461 current message 43471 uid: 3 43481 headers: Received:(from hare@wonder.land) by wonder.land id 3303 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 4349Date:Mon, 29 Jul 2002 22:00:03 +0100 4350From:March Hare <hare@wonder.land> 4351Message-Id:<200207292200.3303@wonder.land> 4352To:Alice <alice@wonder.land> 4353Subject:Re: Invitation 4354X-IMAPbase:10 9 4355X-UID:3 4356 43572 current message 43582 uid: 4 43592 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4360Date:Mon, 29 Jul 2002 22:00:04 +0100 4361From:Alice <alice@wonder.land> 4362Message-Id:<200207292200.3304@wonder.land> 4363To:March Hare <hare@wonder.land> 4364Subject:Re: Invitation 4365X-UID:4 4366 43673 current message 43683 uid: 6 43693 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4370Date:Mon, 29 Jul 2002 22:00:06 +0100 4371From:Alice <alice@wonder.land> 4372Message-Id:<200207292200.3306@wonder.land> 4373To:March Hare <hare@wonder.land> 4374Subject:Re: Invitation 4375X-UID:6 4376 4377" | \ 4378 $at_diff - "$at_stdout" || at_failed=: 4379at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:162" 4380$at_failed && at_fn_log_failure 4381$at_traceon; } 4382 4383 4384# ## 4385cat >commands1a <<'_ATEOF' 4386count 43871 4388uid 4389headers 43902 4391uid 4392headers 43933 4394uid 4395headers 4396_ATEOF 4397 4398 4399{ set +x 4400$as_echo "$at_srcdir/rospool.at:219: mbop -m mailspool/inbox1 < commands1a|x_imapbase_normalize" 4401at_fn_check_prepare_notrace 'a shell pipeline' "rospool.at:219" 4402( $at_check_trace; mbop -m mailspool/inbox1 < commands1a|x_imapbase_normalize 4403) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4404at_status=$? at_failed=false 4405$at_check_filter 4406at_fn_diff_devnull "$at_stderr" || at_failed=: 4407echo >>"$at_stdout"; $as_echo "count: 3 44081 current message 44091 uid: 3 44101 headers: Received:(from hare@wonder.land) by wonder.land id 3303 for alice@wonder.land; Mon, 29 Jul 2002 22:00:08 +0100 4411Date:Mon, 29 Jul 2002 22:00:03 +0100 4412From:March Hare <hare@wonder.land> 4413Message-Id:<200207292200.3303@wonder.land> 4414To:Alice <alice@wonder.land> 4415Subject:Re: Invitation 4416X-IMAPbase:10 9 4417X-UID:3 4418 44192 current message 44202 uid: 4 44212 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4422Date:Mon, 29 Jul 2002 22:00:04 +0100 4423From:Alice <alice@wonder.land> 4424Message-Id:<200207292200.3304@wonder.land> 4425To:March Hare <hare@wonder.land> 4426Subject:Re: Invitation 4427X-UID:4 4428 44293 current message 44303 uid: 6 44313 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4432Date:Mon, 29 Jul 2002 22:00:06 +0100 4433From:Alice <alice@wonder.land> 4434Message-Id:<200207292200.3306@wonder.land> 4435To:March Hare <hare@wonder.land> 4436Subject:Re: Invitation 4437X-UID:6 4438 4439" | \ 4440 $at_diff - "$at_stdout" || at_failed=: 4441at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:219" 4442$at_failed && at_fn_log_failure 4443$at_traceon; } 4444 4445 4446# ## 4447cat >commands2 <<'_ATEOF' 44481 4449set_deleted 44503 4451set_deleted 44525 4453set_deleted 4454expunge 4455count 44561 4457uid 4458headers 44592 4460uid 4461headers 44623 4463uid 4464headers 4465_ATEOF 4466 4467 4468{ set +x 4469$as_echo "$at_srcdir/rospool.at:276: mbop -m mailspool/inbox2 < commands2|x_imapbase_normalize" 4470at_fn_check_prepare_notrace 'a shell pipeline' "rospool.at:276" 4471( $at_check_trace; mbop -m mailspool/inbox2 < commands2|x_imapbase_normalize 4472) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4473at_status=$? at_failed=false 4474$at_check_filter 4475at_fn_diff_devnull "$at_stderr" || at_failed=: 4476echo >>"$at_stdout"; $as_echo "1 current message 44771 set_deleted: OK 44783 current message 44793 set_deleted: OK 44805 current message 44815 set_deleted: OK 4482expunge: OK 4483count: 3 44841 current message 44851 uid: 2 44861 headers: Received:(from alice@wonder.land) by wonder.land id 3302 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 4487Date:Mon, 29 Jul 2002 22:00:02 +0100 4488From:Alice <alice@wonder.land> 4489Message-Id:<200207292200.3302@wonder.land> 4490To:March Hare <hare@wonder.land> 4491Subject:Re: Invitation 4492X-IMAPbase:10 9 4493X-UID:2 4494 44952 current message 44962 uid: 4 44972 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4498Date:Mon, 29 Jul 2002 22:00:04 +0100 4499From:Alice <alice@wonder.land> 4500Message-Id:<200207292200.3304@wonder.land> 4501To:March Hare <hare@wonder.land> 4502Subject:Re: Invitation 4503X-UID:4 4504 45053 current message 45063 uid: 6 45073 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4508Date:Mon, 29 Jul 2002 22:00:06 +0100 4509From:Alice <alice@wonder.land> 4510Message-Id:<200207292200.3306@wonder.land> 4511To:March Hare <hare@wonder.land> 4512Subject:Re: Invitation 4513X-UID:6 4514 4515" | \ 4516 $at_diff - "$at_stdout" || at_failed=: 4517at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:276" 4518$at_failed && at_fn_log_failure 4519$at_traceon; } 4520 4521 4522cat >commands2a <<'_ATEOF' 4523count 45241 4525uid 4526headers 45272 4528uid 4529headers 45303 4531uid 4532headers 4533_ATEOF 4534 4535 4536{ set +x 4537$as_echo "$at_srcdir/rospool.at:332: mbop -m mailspool/inbox2 < commands2a|x_imapbase_normalize" 4538at_fn_check_prepare_notrace 'a shell pipeline' "rospool.at:332" 4539( $at_check_trace; mbop -m mailspool/inbox2 < commands2a|x_imapbase_normalize 4540) >>"$at_stdout" 2>>"$at_stderr" 5>&- 4541at_status=$? at_failed=false 4542$at_check_filter 4543at_fn_diff_devnull "$at_stderr" || at_failed=: 4544echo >>"$at_stdout"; $as_echo "count: 3 45451 current message 45461 uid: 2 45471 headers: Received:(from alice@wonder.land) by wonder.land id 3302 for hare@wonder.land; Mon, 29 Jul 2002 22:00:07 +0100 4548Date:Mon, 29 Jul 2002 22:00:02 +0100 4549From:Alice <alice@wonder.land> 4550Message-Id:<200207292200.3302@wonder.land> 4551To:March Hare <hare@wonder.land> 4552Subject:Re: Invitation 4553X-IMAPbase:10 9 4554X-UID:2 4555 45562 current message 45572 uid: 4 45582 headers: Received:(from alice@wonder.land) by wonder.land id 3304 for hare@wonder.land; Mon, 29 Jul 2002 22:00:09 +0100 4559Date:Mon, 29 Jul 2002 22:00:04 +0100 4560From:Alice <alice@wonder.land> 4561Message-Id:<200207292200.3304@wonder.land> 4562To:March Hare <hare@wonder.land> 4563Subject:Re: Invitation 4564X-UID:4 4565 45663 current message 45673 uid: 6 45683 headers: Received:(from alice@wonder.land) by wonder.land id 3306 for hare@wonder.land; Mon, 29 Jul 2002 22:00:11 +0100 4569Date:Mon, 29 Jul 2002 22:00:06 +0100 4570From:Alice <alice@wonder.land> 4571Message-Id:<200207292200.3306@wonder.land> 4572To:March Hare <hare@wonder.land> 4573Subject:Re: Invitation 4574X-UID:6 4575 4576" | \ 4577 $at_diff - "$at_stdout" || at_failed=: 4578at_fn_check_status 0 $at_status "$at_srcdir/rospool.at:332" 4579$at_failed && at_fn_log_failure 4580$at_traceon; } 4581 4582 4583 set +x 4584 $at_times_p && times >"$at_times_file" 4585) 5>&1 2>&1 7>&- | eval $at_tee_pipe 4586read at_status <"$at_status_file" 4587#AT_STOP_14 4588