]> diplodocus.org Git - nmh/blobdiff - test/ali/test-ali
Added tests of MMDF mailbox format to test-eom-align.
[nmh] / test / ali / test-ali
index 7af25cc87517098d3fd44188053e6456b8d38d73..019f329ad0fdf7a616b55f6f4bb110e2da14c9d6 100755 (executable)
@@ -19,6 +19,13 @@ fi
 
 setup_test
 
+check_exit '-eq 1' ali -
+check_exit '-eq 1' ali -noalias -alias
+check_exit '-eq 1' ali -user
+check_exit '-eq 1' ali -user ''
+check_exit '-eq 1' ali -user 'foo bar'
+check_exit '-eq 0' ali -user foo,bar
+
 expected=$MH_TEST_DIR/$$.expected
 expected_err=$MH_TEST_DIR/$$.expected_err
 actual=$MH_TEST_DIR/$$.actual
@@ -30,15 +37,16 @@ cat >$expected <<EOF
 Usage: ali [switches] aliases ...
   switches are:
   -alias aliasfile
+  -noalias
   -[no]list
-  -[no]normalize
   -[no]user
   -version
   -help
 EOF
 
-ali -help >$actual 2>&1
-check $expected $actual
+#### Skip nmh intro text.
+ali -help | sed '/^$/,$d' >"$actual" 2>&1
+check "$expected" "$actual"
 
 # check -version
 case `ali -v` in
@@ -54,18 +62,24 @@ run_test 'ali -nonexistent' 'ali: -nonexistent unknown'
 run_test 'ali' ''
 
 # check with nonexistent alias file
-run_test 'ali -alias aliases' \
-         "ali: aliasing error in aliases - unable to read 'aliases'"
+run_test 'ali -alias nonexistent' \
+         "ali: aliasing error in nonexistent - unable to read 'nonexistent'"
 
-cat >${MH_TEST_DIR}/Mail/aliases <<EOF
+cat >"${MH_TEST_DIR}/Mail/aliases" <<EOF
 me: me@example.com
-rush: geddy@example.com, alex@example.com, neil@example.com
+rush: geddy, alex, neil
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com
 EOF
 
 # check -alias
 run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases" \
          'me: me@example.com
-rush: geddy@example.com, alex@example.com, neil@example.com'
+rush: geddy@example.com, alex@example.com, neil@example.com
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com'
 
 # check for a specific alias
 run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases rush" \
@@ -80,21 +94,49 @@ run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases -list" \
          'me: me@example.com
 rush: geddy@example.com
       alex@example.com
-      neil@example.com'
+      neil@example.com
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com'
 
 # check -nolist, which is the default
 run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases -list -nolist" \
          'me: me@example.com
-rush: geddy@example.com, alex@example.com, neil@example.com'
+rush: geddy@example.com, alex@example.com, neil@example.com
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com'
 
 # check -user
 run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases -user geddy@example.com" \
-         'rush'
+         'rush, geddy'
 
 # check -nouser
 run_test \
   "ali -alias ${MH_TEST_DIR}/Mail/aliases -user -nouser geddy@example.com" \
   'geddy@example.com'
 
+# check expansion of first address of blind list [Bug #15604]
+cat >"${MH_TEST_DIR}/Mail/aliases" <<EOF
+rush: Rush: geddy, alex, neil
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com
+EOF
+
+run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases rush" \
+         'Rush: geddy@example.com, alex@example.com, neil@example.com'
+
+# check that aliases followed by ; are not expanded [Bug #15604]
+cat >"${MH_TEST_DIR}/Mail/aliases" <<EOF
+rush: Rush: geddy, alex, neil;
+geddy: geddy@example.com
+alex: alex@example.com
+neil: neil@example.com
+EOF
+
+run_test "ali -alias ${MH_TEST_DIR}/Mail/aliases rush" \
+         'Rush: geddy@example.com, alex@example.com, neil;'
+
 
 exit $failed