231
231
/* Step 4. Create child folder */
232
232
mapitest_print(mt, "* Create GENERIC child folder\n");
233
retval = CreateFolder(&obj_top, FOLDER_GENERIC, "[MT] Child folder", NULL,
233
retval = CreateFolder(&obj_top, FOLDER_GENERIC, "MT Child folder", NULL,
234
234
OPEN_IF_EXISTS, &obj_child);
235
235
mapitest_print_retval(mt, "CreateFolder - child");
236
236
if (retval != MAPI_E_SUCCESS) {
241
241
/* Step 5. Create child of the child (grandchild) folder */
242
242
mapitest_print(mt, "* Create GENERIC grandchild folder\n");
243
retval = CreateFolder(&obj_child, FOLDER_GENERIC, "[MT] grandchild folder", NULL,
243
retval = CreateFolder(&obj_child, FOLDER_GENERIC, "MT grandchild folder", NULL,
244
244
OPEN_IF_EXISTS, &obj_grandchild);
245
245
mapitest_print_retval(mt, "CreateFolder - grandchild");
246
246
if (retval != MAPI_E_SUCCESS) {
506
506
/* Step 8. Create child folder */
507
507
mapitest_print(mt, "* Create GENERIC child folder\n");
508
retval = CreateFolder(&obj_top3, FOLDER_GENERIC, "[MT] Child folder", NULL,
508
retval = CreateFolder(&obj_top3, FOLDER_GENERIC, "MT Child folder", NULL,
510
510
mapitest_print_retval_clean(mt, "CreateFolder - child", retval);
511
511
if (retval != MAPI_E_SUCCESS) {
516
516
/* Step 9. Create the child test folder (again) - should error out*/
517
517
mapitest_print(mt, "* Create GENERIC child folder (duplicate name - expect collision)\n");
518
retval = CreateFolder(&obj_top3, FOLDER_GENERIC, "[MT] Child folder", NULL,
518
retval = CreateFolder(&obj_top3, FOLDER_GENERIC, "MT Child folder", NULL,
520
520
mapitest_print_retval_clean(mt, "CreateFolder - child", retval);
521
521
if (retval != MAPI_E_COLLISION) {
588
587
/* Step 1. Logon */
589
588
mapi_object_init(&obj_store);
590
retval = OpenMsgStore(mt->session, &obj_store);
589
OpenMsgStore(mt->session, &obj_store);
591
590
mapitest_print_retval(mt, "OpenMsgStore");
592
591
if (GetLastError() != MAPI_E_SUCCESS) {
596
595
/* Step 2. Open Top Information Store folder */
597
596
mapi_object_init(&obj_folder);
599
retval = GetDefaultFolder(&obj_store, &id_folder, olFolderTopInformationStore);
598
GetDefaultFolder(&obj_store, &id_folder, olFolderTopInformationStore);
600
599
mapitest_print_retval(mt, "GetDefaultFolder");
602
retval = OpenFolder(&obj_store, id_folder, &obj_folder);
601
OpenFolder(&obj_store, id_folder, &obj_folder);
603
602
mapitest_print_retval(mt, "OpenFolder");
604
603
if (GetLastError() != MAPI_E_SUCCESS) {
608
607
/* Step 3. Get the Hierarchy Table */
609
608
mapi_object_init(&obj_htable);
610
retval = GetHierarchyTable(&obj_folder, &obj_htable, 0, &RowCount);
609
GetHierarchyTable(&obj_folder, &obj_htable, 0, &RowCount);
611
610
mapitest_print_retval_fmt(mt, "GetHierarchyTable", "(%d rows)", RowCount);
612
611
if (GetLastError() != MAPI_E_SUCCESS) {
646
644
/* Step 1. Logon */
647
645
mapi_object_init(&obj_store);
648
retval = OpenMsgStore(mt->session, &obj_store);
646
OpenMsgStore(mt->session, &obj_store);
649
647
mapitest_print_retval(mt, "OpenMsgStore");
650
648
if (GetLastError() != MAPI_E_SUCCESS) {
654
652
/* Step 2. Open Top Information Store folder */
655
653
mapi_object_init(&obj_folder);
656
retval = GetDefaultFolder(&obj_store, &id_folder, olFolderTopInformationStore);
654
GetDefaultFolder(&obj_store, &id_folder, olFolderTopInformationStore);
657
655
mapitest_print_retval(mt, "GetDefaultFolder");
659
retval = OpenFolder(&obj_store, id_folder, &obj_folder);
657
OpenFolder(&obj_store, id_folder, &obj_folder);
660
658
mapitest_print_retval(mt, "OpenFolder");
661
659
if (GetLastError() != MAPI_E_SUCCESS) {
665
663
/* Step 3. Get the Contents Table */
666
664
mapi_object_init(&obj_ctable);
667
retval = GetContentsTable(&obj_folder, &obj_ctable, 0, &RowCount);
665
GetContentsTable(&obj_folder, &obj_ctable, 0, &RowCount);
668
666
mapitest_print_retval_fmt(mt, "GetContentsTable", "(%d rows)", RowCount);
669
667
if (GetLastError() != MAPI_E_SUCCESS) {
712
709
/* Step 1. Logon */
713
710
mapi_object_init(&obj_store);
714
retval = OpenMsgStore(mt->session, &obj_store);
711
OpenMsgStore(mt->session, &obj_store);
715
712
mapitest_print_retval(mt, "OpenMsgStore");
716
713
if (GetLastError() != MAPI_E_SUCCESS) {
720
717
/* Open Inbox folder */
721
retval = GetDefaultFolder(&obj_store, &id_inbox, olFolderInbox);
718
GetDefaultFolder(&obj_store, &id_inbox, olFolderInbox);
722
719
mapitest_print_retval(mt, "GetDefaultFolder");
723
720
if (GetLastError() != MAPI_E_SUCCESS) {
727
724
/* Step 3. Open Search folder */
728
retval = GetDefaultFolder(&obj_store, &id_search, olFolderFinder);
725
GetDefaultFolder(&obj_store, &id_search, olFolderFinder);
729
726
mapitest_print_retval(mt, "GetDefaultFolder");
730
727
if (GetLastError() != MAPI_E_SUCCESS) {
734
731
mapi_object_init(&obj_search);
735
retval = OpenFolder(&obj_store, id_search, &obj_search);
732
OpenFolder(&obj_store, id_search, &obj_search);
736
733
mapitest_print_retval(mt, "OpenFolder");
737
734
if (GetLastError() != MAPI_E_SUCCESS) {
741
738
/* Step 4. Create a search folder */
742
739
mapi_object_init(&obj_searchdir);
743
retval = CreateFolder(&obj_search, FOLDER_SEARCH, "mapitest",
740
CreateFolder(&obj_search, FOLDER_SEARCH, "mapitest",
744
741
"mapitest search folder", OPEN_IF_EXISTS,
746
743
mapitest_print_retval(mt, "CreateFolder");
751
748
/* Step 5. Set properties on this search folder */
752
749
lpProps[0].ulPropTag = PR_CONTAINER_CLASS;
753
750
lpProps[0].value.lpszA = IPF_NOTE;
754
retval = SetProps(&obj_searchdir, 0, lpProps, 1);
751
SetProps(&obj_searchdir, 0, lpProps, 1);
755
752
mapitest_print_retval(mt, "SetProps");
756
753
if (GetLastError() != MAPI_E_SUCCESS) {
761
758
/* Step 6. Search criteria on this folder */
762
mapi_id_array_init(mt->mapi_ctx, &id);
759
mapi_id_array_init(mt->mapi_ctx->mem_ctx, &id);
763
760
mapi_id_array_add_id(&id, id_inbox);
765
762
res.rt = RES_CONTENT;
766
763
res.res.resContent.fuzzy = FL_SUBSTRING;
767
764
res.res.resContent.ulPropTag = PR_SUBJECT;
768
765
res.res.resContent.lpProp.ulPropTag = PR_SUBJECT;
769
res.res.resContent.lpProp.value.lpszA = "[MT]";
766
res.res.resContent.lpProp.value.lpszA = "MT";
771
retval = SetSearchCriteria(&obj_searchdir, &res,
768
SetSearchCriteria(&obj_searchdir, &res,
772
769
BACKGROUND_SEARCH|RECURSIVE_SEARCH, &id);
773
770
mapitest_print_retval(mt, "SetSearchCriteria");
774
771
mapi_id_array_release(&id);
780
retval = DeleteFolder(&obj_search, mapi_object_get_id(&obj_searchdir),
777
DeleteFolder(&obj_search, mapi_object_get_id(&obj_searchdir),
781
778
DEL_MESSAGES|DEL_FOLDERS|DELETE_HARD_DELETE, NULL);
782
779
mapitest_print_retval(mt, "DeleteFolder");
783
780
mapi_object_release(&obj_searchdir);
824
820
/* Step 1. Logon */
825
821
mapi_object_init(&obj_store);
826
retval = OpenMsgStore(mt->session, &obj_store);
822
OpenMsgStore(mt->session, &obj_store);
827
823
mapitest_print_retval(mt, "OpenMsgStore");
828
824
if (GetLastError() != MAPI_E_SUCCESS) {
832
828
/* Open Inbox folder */
833
retval = GetDefaultFolder(&obj_store, &id_inbox, olFolderInbox);
829
GetDefaultFolder(&obj_store, &id_inbox, olFolderInbox);
834
830
mapitest_print_retval(mt, "GetDefaultFolder");
835
831
if (GetLastError() != MAPI_E_SUCCESS) {
839
835
/* Step 3. Open Search folder */
840
retval = GetDefaultFolder(&obj_store, &id_search, olFolderFinder);
836
GetDefaultFolder(&obj_store, &id_search, olFolderFinder);
841
837
mapitest_print_retval(mt, "GetDefaultFolder");
842
838
if (GetLastError() != MAPI_E_SUCCESS) {
846
842
mapi_object_init(&obj_search);
847
retval = OpenFolder(&obj_store, id_search, &obj_search);
843
OpenFolder(&obj_store, id_search, &obj_search);
848
844
mapitest_print_retval(mt, "OpenFolder");
849
845
if (GetLastError() != MAPI_E_SUCCESS) {
853
849
/* Step 4. Create a search folder */
854
850
mapi_object_init(&obj_searchdir);
855
retval = CreateFolder(&obj_search, FOLDER_SEARCH, "mapitest",
851
CreateFolder(&obj_search, FOLDER_SEARCH, "mapitest",
856
852
"mapitest search folder", OPEN_IF_EXISTS,
858
854
mapitest_print_retval(mt, "CreateFolder");
863
859
/* Step 5. Set properties on this search folder */
864
860
lpProps[0].ulPropTag = PR_CONTAINER_CLASS;
865
861
lpProps[0].value.lpszA = IPF_NOTE;
866
retval = SetProps(&obj_searchdir, 0, lpProps, 1);
862
SetProps(&obj_searchdir, 0, lpProps, 1);
867
863
mapitest_print_retval(mt, "SetProps");
868
864
if (GetLastError() != MAPI_E_SUCCESS) {
873
869
/* Step 6. Search criteria on this folder */
874
mapi_id_array_init(mt->mapi_ctx, &id);
870
mapi_id_array_init(mt->mapi_ctx->mem_ctx, &id);
875
871
mapi_id_array_add_id(&id, id_inbox);
877
873
res.rt = RES_CONTENT;
878
874
res.res.resContent.fuzzy = FL_SUBSTRING;
879
875
res.res.resContent.ulPropTag = PR_SUBJECT;
880
876
res.res.resContent.lpProp.ulPropTag = PR_SUBJECT;
881
res.res.resContent.lpProp.value.lpszA = "[MT]";
877
res.res.resContent.lpProp.value.lpszA = "MT";
883
retval = SetSearchCriteria(&obj_searchdir, &res,
879
SetSearchCriteria(&obj_searchdir, &res,
884
880
BACKGROUND_SEARCH|RECURSIVE_SEARCH, &id);
885
881
mapitest_print_retval(mt, "SetSearchCriteria");
886
882
mapi_id_array_release(&id);
892
888
/* Step 7. Call GetSearchCriteria */
893
retval = GetSearchCriteria(&obj_searchdir, &res, &ulSearchFlags, &count, &fid);
889
GetSearchCriteria(&obj_searchdir, &res, &ulSearchFlags, &count, &fid);
894
890
mapitest_print_retval(mt, "GetSearchCriteria");
895
891
if (GetLastError() != MAPI_E_SUCCESS) {
902
retval = DeleteFolder(&obj_search, mapi_object_get_id(&obj_searchdir),
903
DEL_MESSAGES|DEL_FOLDERS|DELETE_HARD_DELETE, NULL);
898
DeleteFolder(&obj_search, mapi_object_get_id(&obj_searchdir),
899
DEL_MESSAGES|DEL_FOLDERS|DELETE_HARD_DELETE, NULL);
904
900
mapitest_print_retval(mt, "DeleteFolder");
905
901
mapi_object_release(&obj_searchdir);
906
902
mapi_object_release(&obj_search);
982
978
/* Step 4. Create sample messages */
983
mapi_id_array_init(mt->mapi_ctx, &msg_id_array);
979
mapi_id_array_init(mt->mapi_ctx->mem_ctx, &msg_id_array);
984
980
for (i = 0; i < 3; i++) {
985
981
mapi_object_init(&obj_message);
986
982
common_result = mapitest_common_message_create(mt, &obj_folder_src, &obj_message, MT_MAIL_SUBJECT);
1340
1336
/* Step 3. Create sample messages */
1341
mapi_id_array_init(mt->mapi_ctx, &msg_id_array);
1337
mapi_id_array_init(mt->mapi_ctx->mem_ctx, &msg_id_array);
1342
1338
for (i = 0; i < 3; i++) {
1343
1339
mapi_object_init(&obj_message);
1344
1340
ret = mapitest_common_message_create(mt, &obj_folder, &obj_message, MT_MAIL_SUBJECT);