Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added CLIENTPIDMAP to the SaveString function of ContactDataObject
[xestiaab/.git] / source / tests / xestiaab_contactsave.h
index d243005..3eb41b1 100644 (file)
 
 #include <gtest/gtest.h>
 
-// TODO: Add tests for the Contact Saving process.
\ No newline at end of file
+#include "../contacteditor/cdo/ContactDataObject.h"
+
+TEST(ContactSave, ContactSaveTests){
+       
+       ContactDataObject TestFile1;
+       ContactDataObject TestFile2;
+       ContactDataObject TestFile3;
+       
+       wxString SaveData;
+       wxString SaveDataCompare = "BEGIN:VCARD\n"
+       "VERSION:4.0\n"
+       "PRODID:-//Xestia//Address Book Unit Testing//KW\n"
+       "FN:Test vCard\n"
+       "TITLE:Knight of the Tests\n"
+       "TITLE:The Tester of Cornwall\n"
+       "END:VCARD";
+       
+       ASSERT_EQ(CONTACTLOAD_OK, TestFile1.LoadFile("LoadCheck-Load1.vcf"));
+       
+       ASSERT_EQ(CONTACTSAVE_OK, TestFile1.SaveString(&SaveData));
+       
+       ASSERT_EQ(SaveDataCompare, SaveData);
+       
+       ASSERT_EQ(CONTACTLOAD_OK, TestFile2.LoadFile("LoadCheck-Load2.vcf"));
+       
+       SaveData.clear();
+       SaveDataCompare = "BEGIN:VCARD\n"
+       "VERSION:4.0\n"
+       "PRODID:-//Xestia//Address Book Unit Testing//KW\n"
+       "FN:Test vCard\n"
+       "TITLE:The Third Title\n"
+       "TITLE:Knight of the Tests\n"
+       "TITLE:The Tester of Cornwall\n"
+       "END:VCARD";
+       
+       ASSERT_EQ(CONTACTSAVE_OK, TestFile2.SaveString(&SaveData));
+       ASSERT_EQ(SaveDataCompare, SaveData);
+
+       SaveData.clear();
+       SaveDataCompare = "BEGIN:VCARD\n"
+       "VERSION:4.0\n"
+       "PRODID:-//Xestia//Address Book Unit Testing//KW\n"
+       "UID:903588-9082374-989120310-AAFECDBCDF\n"
+       "KIND:individual\n"
+       "SOURCE;ALTID=74;MEDIATYPE=text/plain;PID=71;PREF=72;STATUS=FEED:http://exampl\n"
+       " e.com/source/sourcea.vcf\n"
+       "SOURCE;TYPE=home;ALTID=84;MEDIATYPE=text/plainpaper;PID=81;PREF=82;STATUS=ONL\n"
+       " INE:http://example.com/source/sourceb.vcf\n"
+       "SOURCE;TYPE=work;ALTID=94;MEDIATYPE=text/sandpaper;PID=91;PREF=92;STATUS=OFFL\n"
+       " INE:http://example.com/source/sourcec.vcf\n"
+       "CLIENTPIDMAP:1;urn;uuid:aaaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa\n"
+       "CLIENTPIDMAP:2;urn;uuid:ccccccccc-cccc-cccc-cccc-cccccccccccc\n"
+       "CLIENTPIDMAP;MEEP=MOO;WOOP=WOO:3;urn;uuid:bbbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbb\n"
+       " bb\n"
+       "FN;TYPE=work;LANGUAGE=kw;ALTID=500;PID=40;PREF=45;EXAMPLE=Baaa:Test Contact\n"
+       "TITLE;ALTID=20;LANGUAGE=text/plain;PID=21;PREF=22;EEP=LIGHT:Lord of Light\n"
+       "TITLE;TYPE=home;ALTID=30;LANGUAGE=grass/dry;PID=31;PREF=32;EEP=DARK:Lord of D\n"
+       " arkness\n"
+       "TITLE;TYPE=work;ALTID=40;LANGUAGE=moths/eew;PID=41;PREF=42;EEP=BOTH:Master of\n"
+       "  the Light & Darkness\n"
+       "END:VCARD";
+
+       ASSERT_EQ(CONTACTLOAD_OK, TestFile3.LoadFile("LoadCheck-Load4.vcf"));
+       ASSERT_EQ(CONTACTSAVE_OK, TestFile3.SaveString(&SaveData));
+       
+       std::cout << SaveData << std::endl;
+       std::cout << SaveDataCompare << std::endl;
+       
+       ASSERT_EQ(SaveDataCompare, SaveData);
+
+}
\ No newline at end of file
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy