cd $MH_TEST_DIR
-folder -create +other -fast >/dev/null
-folder -create +another -fast >/dev/null
+run_prog folder -create +other -fast >/dev/null
+run_prog folder -create +another -fast >/dev/null
# check with no options and no current message
run_test 'refile' 'refile: no folder specified'
# check with current message
-folder +inbox 4 >/dev/null
+run_prog folder +inbox 4 >/dev/null
run_test 'refile +other' ''
run_test 'folders -noheader' \
'another has no messages.
TOTAL = 10 messages in 3 folders.'
# check with specified message
-folder +inbox 5 >/dev/null
+run_prog folder +inbox 5 >/dev/null
run_test 'refile 5 +other' ''
run_test 'folders -noheader' \
'another has no messages.
# check message number greater than highest
run_test 'refile 11 +other' "refile: message 11 doesn't exist"
-folder -f +another >/dev/null
+run_prog folder -f +another >/dev/null
# check -src
run_test 'refile 9 -src +inbox +other' ''
TOTAL = 11 messages in 2 folders.'
-# check -link
-run_test 'refile 7 -src +inbox +other -link' ''
-run_test 'folders -noheader' \
-'inbox+ has 10 messages (1-10); cur=7.
+check_for_hard_links
+if [ $hard_links_supported -eq 1 ]; then
+ # check -link
+ run_test 'refile 7 -src +inbox +other -link' ''
+ run_test 'folders -noheader' \
+ 'inbox+ has 10 messages (1-10); cur=7.
other has 2 messages (1- 2).
TOTAL = 12 messages in 2 folders.'
-# inbox/7 and other/2 are linked. Modify one and verify
-# that the other changes as well.
-echo '' >>$MH_TEST_DIR/Mail/other/2
-run_test "cmp $MH_TEST_DIR/Mail/inbox/7 $MH_TEST_DIR/Mail/other/2" ''
+ # inbox/7 and other/2 are linked. Modify one and verify
+ # that the other changes as well.
+ echo '' >>$MH_TEST_DIR/Mail/other/2
+ run_test "cmp $MH_TEST_DIR/Mail/inbox/7 $MH_TEST_DIR/Mail/other/2" ''
+else
+ # Hard links are not supported. Skip the -link test but emulate
+ # what it would have done using a copy instead of a link.
+ cp -p Mail/inbox/7 Mail/other/2
+ folder -f +inbox 7 >/dev/null
+fi
# check -nolink
run_test 'refile 7 +other -link -nolink' ''
other has 7 messages (1-13).
TOTAL = 12 messages in 2 folders.'
-if ! test -f $MH_TEST_DIR/Mail/inbox/,2; then
+if test -f $MH_TEST_DIR/Mail/inbox/,2; then
+ :
+else
echo "$0: refile -nounlink failed" 1>&2
failed=`expr ${failed:-0} + 1`
fi
TOTAL = 13 messages in 3 folders.'
+# test -retainsequences
+mark first -seq seq1
+mark last -seq seq2
+refile first last -retainsequences +other
+#### The following command changes the current folder to +other.
+run_test 'mark +other -list -sequence seq1 -sequence seq2' \
+ "seq1: 16
+seq2: 17"
+
+# test -retainsequences when refiling to same folder (+other)
+# cur is set to the original message number of the last message refiled.
+mark first -seq seq1 -zero
+mark first=2 -seq seq2 -zero
+refile first:2 -retainsequences +other
+run_test 'mark -list' "cur: 2
+seq1: 18
+seq2: 19"
exit $failed