diff --git a/tests/extensions/imap4flags/execute.svtest b/tests/extensions/imap4flags/execute.svtest index 4aa5c613876e301f85a307777927e483aa21b5ac..8383e31bb704ddbc1481d50bd90b580ab3fcd720 100644 --- a/tests/extensions/imap4flags/execute.svtest +++ b/tests/extensions/imap4flags/execute.svtest @@ -1,7 +1,10 @@ require "vnd.dovecot.testsuite"; +require "imap4flags"; +require "relational"; + /* - * Execution testing (currently just meant to trigger any segfaults) + * Execution testing */ test_mailbox_create "INBOX.Junk"; @@ -19,4 +22,47 @@ test "Flags Side Effect" { if not test_result_execute { test_fail "result execute failed"; } + + test_result_reset; + + if not test_message :folder "INBOX.Junk" 0 { + test_fail "message not stored in INBOX.Junk"; + } + + if not hasflag :count "eq" "1" { + test_fail "invalid number of flags for message in INBOX.Junk"; + } + + if not hasflag :is "NONSENSE" { + test_fail "invalid flag set for message in INBOX.Junk"; + } + + test_result_reset; + + if not test_message :folder "INBOX" 0 { + test_fail "message not stored in INBOX"; + } + + if not hasflag :count "eq" "1" { + test_fail "invalid number of flags for message in INBOX"; + } + + if not hasflag :is "\\seen" { + test_fail "invalid flag set for message in INBOX"; + } + + test_result_reset; + + if not test_message :folder "INBOX.Nonsense" 0 { + test_fail "message not stored in INBOX.Nonsense"; + } + + if not hasflag :count "eq" "1" { + test_fail "invalid number of flags for message in Inbox.Nonsense"; + } + + if not hasflag :is "IMPLICIT" { + test_fail "invalid flag set for message in Inbox.Nonsene"; + } + }