require "vnd.stalwart.testsuite"; require "mboxmetadata"; require "servermetadata"; require "fileinto"; test "MetadataExists - None exist" { if metadataexists "INBOX" "/private/frop" { test_fail "metadataexists confirms existence of unknown annotation"; } } test_imap_metadata_set :mailbox "INBOX" "/private/frop" "FROP!"; test_imap_metadata_set :mailbox "INBOX" "/private/friep" "FRIEP!"; test "MetadataExists - Not all exist" { if metadataexists "INBOX" ["/private/frop", "/private/friep", "/private/frml"] { test_fail "metadataexists confirms existence of unknown annotation"; } } test_imap_metadata_set :mailbox "INBOX" "/private/friep" "FRIEP!"; test_imap_metadata_set :mailbox "INBOX" "/private/frml" "FRML!"; test "MetadataExists - One exists" { if not metadataexists "INBOX" ["/private/frop"] { test_fail "metadataexists fails to recognize annotation"; } } test "MetadataExists - All exist" { if not metadataexists "INBOX" ["/private/frop", "/private/friep", "/private/frml"] { test_fail "metadataexists fails to recognize annotations"; } } test "MetadataExists - Invalid" { if metadataexists "INBOX" ["/shared/frop", "/friep", "/private/frml"] { test_fail "metadataexists accepted invalid annotation name"; } } test "Metadata" { if not metadata :is "INBOX" "/private/frop" "FROP!" { test_fail "invalid metadata value for /private/frop"; } if metadata :is "INBOX" "/private/frop" "Hutsefluts" { test_fail "unexpected match for /private/frop"; } if not metadata :is "INBOX" "/private/friep" "FRIEP!" { test_fail "invalid metadata value for /private/friep"; } if metadata :is "INBOX" "/private/friep" "Hutsefluts" { test_fail "unexpected match for /private/friep"; } if not metadata :is "INBOX" "/private/frml" "FRML!" { test_fail "invalid metadata value for /private/frml"; } if metadata :is "INBOX" "/private/frml" "Hutsefluts" { test_fail "unexpected match for /private/frml"; } } test "Metadata - Invalid" { if metadata :contains "INBOX" "/frop" "" { test_fail "erroneously found a value for \"/frop\""; } } test "ServermetadataExists - None exist" { if servermetadataexists "/private/frop" { test_fail "servermetadataexists confirms existence of unknown annotation"; } } test_imap_metadata_set "/private/frop" "FROP!"; test_imap_metadata_set "/private/friep" "FRIEP!"; test "ServermetadataExists - Not all exist" { if servermetadataexists ["/private/frop", "/private/friep", "/private/frml"] { test_fail "metadataexists confirms existence of unknown annotation"; } } test_imap_metadata_set "/private/friep" "FRIEP!"; test_imap_metadata_set "/private/frml" "FRML!"; test "ServermetadataExists - One exists" { if not servermetadataexists ["/private/frop"] { test_fail "servermetadataexists fails to recognize annotation"; } } test "ServermetadataExists - All exist" { if not servermetadataexists ["/private/frop", "/private/friep", "/private/frml"] { test_fail "servermetadataexists fails to recognize annotations"; } } test "ServermetadataExists - Invalid" { if servermetadataexists ["frop", "/private/friep", "/private/frml"] { test_fail "servermetadataexists accepted invalid annotation name"; } } test "Servermetadata" { if not servermetadata :is "/private/frop" "FROP!" { test_fail "invalid servermetadata value for /private/frop"; } if servermetadata :is "/private/frop" "Hutsefluts" { test_fail "unexpected match for /private/frop"; } if not servermetadata :is "/private/friep" "FRIEP!" { test_fail "invalid servermetadata value for /private/friep"; } if servermetadata :is "/private/friep" "Hutsefluts" { test_fail "unexpected match for /private/friep"; } if not servermetadata :is "/private/frml" "FRML!" { test_fail "invalid servermetadata value for /private/frml"; } if servermetadata :is "/private/frml" "Hutsefluts" { test_fail "unexpected match for /private/frml"; } } test "Servermetadata - Invalid" { if servermetadata :contains "/frop" "" { test_fail "erroneously found a value for \"/frop\""; } }