X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/e6bb9ec43b332fd1a4b0faddbe3c9f2f2ee80dde..94187a80bd60baab4b9c4b949ad820d730578123:/test/sequences/test-mark diff --git a/test/sequences/test-mark b/test/sequences/test-mark index cd3aedf2..bce141a5 100755 --- a/test/sequences/test-mark +++ b/test/sequences/test-mark @@ -16,6 +16,8 @@ fi setup_test +check_exit '-eq 1' mark - + # Test sequence creation. run_test 'mark 1 3 5 7 +inbox -sequence odd' '' run_test 'mark 2 4 6 8 10 +inbox -sequence even' '' @@ -54,9 +56,42 @@ run_test 'mark +nonexistent' \ "mark: unable to change directory to `mhpath +`/nonexistent: \ No such file or directory" +# Test message ranges +# Set current message for following tests. +folder +inbox 5 >/dev/null +run_test 'mark -s foo -zero cur' '' +run_test 'mark -s foo -list' 'foo: 5' +run_test 'mark -s foo -zero 5:-3' '' +run_test 'mark -s foo -list' 'foo: 3-5' +run_test 'mark -s foo -zero 5:2' '' +run_test 'mark -s foo -list' 'foo: 5-6' +run_test 'mark -s foo -zero 5=1' '' +run_test 'mark -s foo -list' 'foo: 5' +run_test 'mark -s foo -zero 5=-2' '' +run_test 'mark -s foo -list' 'foo: 4' +run_test 'mark -s foo -zero 5=7' 'mark: no such message' + +run_test 'mark -s onesix -zero 1 2 3 4 5 6' +run_test 'mark -s onesix -list' 'onesix: 1-6' +run_test 'mark -s foo -zero onesix:2' +run_test 'mark -s foo -list' 'foo: 1-2' +run_test 'mark -s foo -zero onesix=3' +run_test 'mark -s foo -list' 'foo: 3' +run_test 'mark -s foo -zero onesix:-3' +run_test 'mark -s foo -list' 'foo: 4-6' +run_test 'mark -s foo -zero onesix=-3' +run_test 'mark -s foo -list' 'foo: 4' +run_test 'mark -s foo -zero onesix:8' +run_test 'mark -s foo -list' 'foo: 1-6' +run_test 'mark -s foo -zero onesix=11' 'mark: no onesix=11 message' + +run_test 'mark -s foo -delete all' '' +run_test 'mark -s onesix -delete all' '' + + # Test private sequence creation. # Set current message for following tests. -folder +inbox 1 > /dev/null +folder +inbox 1 >/dev/null run_test 'mark 1 -sequence privateseq -add -nopublic' '' run_test 'mark -list' 'cur: 1 odd: 1 3 5 7 9 @@ -77,11 +112,23 @@ run_test 'mark -sequence privateseq -list' 'privateseq (private): 1-2' run_test 'mark -sequence privateseq -list -public' 'privateseq (private): 1-2' # Test mark on empty folder. -folder -create +other > /dev/null +folder -create +other >/dev/null run_test 'mark +other -sequence unseen all' 'mark: no messages in other' # Test removal of indication of cur message. mark +inbox -sequence cur -delete all run_test 'pick -nolist cur' 'pick: no cur message' +# Check large number of sequences. +for i in 1 2 3 4 5; do + for j in 0 1 2 3 4 5 6 7 8 9; do + run_prog mark $i -seq seq$i${j}0 -seq seq$i${j}1 -seq seq$i${j}2 \ + -seq seq$i${j}3 -seq seq$i${j}4 -seq seq$i${j}5 \ + -seq seq$i${j}6 -seq seq$i${j}7 -seq seq$i${j}8 \ + -seq seq$i${j}9 + run_test "pick seq$i${j}0 seq$i${j}1 seq$i${j}2 seq$i${j}3 seq$i${j}4 \ + seq$i${j}5 seq$i${j}6 seq$i${j}7 seq$i${j}8 seq$i${j}9" $i + done +done + exit $failed