Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added unit tests for RELATED-TO in iCalendarJournal/ObjectDataTests.
[xestiacalendar/.git] / source / tests / xestiacalendar_icaljournalload.h
index 8ccab78..708fd72 100644 (file)
@@ -444,4 +444,244 @@ TEST(iCalendarJournal, ObjectDataTests){
        ASSERT_EQ("This is the third comment.", CommentData);
        ASSERT_EQ("ZEBRAS=YES", CommentDataTokens);
        
+       // Get the first CONTACT.
+       
+       std::string ContactData;
+       
+       if (TestJournal.ContactList.begin() != TestJournal.ContactList.end()){
+               
+               ContactData = TestJournal.ContactList[0];
+               
+       }
+       
+       ASSERT_EQ("First Contact", ContactData);
+       
+       // Get the second CONTACT.
+       
+       ContactData.clear();
+       
+       std::string ContactDataAltRep;
+       std::string ContactDataLanguage;
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ContactData = TestJournal.ContactList[1];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ContactDataAltRep = TestJournal.ContactListAltRep[1];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ContactDataLanguage = TestJournal.ContactListLanguage[1];
+               
+       }
+       
+       ASSERT_EQ("Second Contact", ContactData);
+       ASSERT_EQ("null:nodata", ContactDataAltRep);
+       ASSERT_EQ("en-GB", ContactDataLanguage);
+       
+       // Get the third CONTACT.
+       
+       ContactData.clear();
+       
+       std::string ContactDataTokens;
+       
+       if (TestJournal.ContactList.size() > 2){
+               
+               ContactData = TestJournal.ContactList[2];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 2){
+               
+               ContactDataTokens = TestJournal.ContactListTokens[2];
+               
+       }
+       
+       ASSERT_EQ("Third Contact", ContactData);
+       ASSERT_EQ("ZEBRAS=NO", ContactDataTokens);
+       
+       // Get the first DESCRIPTION.
+       
+       std::string DescriptionData;
+       
+       if (TestJournal.DescriptionList.begin() != TestJournal.DescriptionList.end()){
+               
+               DescriptionData = TestJournal.DescriptionList[0];
+               
+       }
+       
+       ASSERT_EQ("First Journal Entry Description", DescriptionData);
+       
+       // Get the second DESCRIPTION.
+       
+       DescriptionData.clear();
+       
+       std::string DescriptionAltRep;
+       std::string DescriptionLanguage;
+       
+       if (TestJournal.DescriptionList.size() > 1){
+               
+               DescriptionData = TestJournal.DescriptionList[1];
+               
+       }
+       
+       if (TestJournal.DescriptionList.size() > 1){
+               
+               DescriptionAltRep = TestJournal.DescriptionListAltRep[1];
+               
+       }
+       
+       if (TestJournal.DescriptionList.size() > 1){
+               
+               DescriptionLanguage = TestJournal.DescriptionListLanguage[1];
+               
+       }
+       
+       ASSERT_EQ("This is the second journal description.", DescriptionData);
+       ASSERT_EQ("null:nodata", DescriptionAltRep);
+       ASSERT_EQ("en-GB", DescriptionLanguage);
+       
+       // Get the third DESCRIPTION.
+       
+       DescriptionData.clear();
+       
+       std::string DescriptionDataTokens;
+       
+       if (TestJournal.DescriptionList.size() > 2){
+               
+               DescriptionData = TestJournal.DescriptionList[2];
+               
+       }
+       
+       if (TestJournal.DescriptionList.size() > 2){
+               
+               DescriptionDataTokens = TestJournal.DescriptionListTokens[2];
+               
+       }
+       
+       ASSERT_EQ("This is the third journal description.", DescriptionData);
+       ASSERT_EQ("ZEBRAS=NO", DescriptionDataTokens);
+       
+       // Get the first EXDATE.
+       
+       std::string ExcludeDate;
+       
+       if (TestJournal.ExcludeDateData.begin() != TestJournal.ExcludeDateData.end()){
+               
+               ExcludeDate = TestJournal.ExcludeDateData[0];
+               
+       }
+       
+       ASSERT_EQ("20160125T120000Z", ExcludeDate);
+       
+       // Get the second EXDATE.
+
+       ExcludeDate.clear();
+       
+       std::string ExcludeDataTimeZoneParam;
+       std::string ExcludeDataValue;
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ExcludeDate = TestJournal.ExcludeDateData[1];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ExcludeDataTimeZoneParam = TestJournal.ExcludeDateDataTimeZoneParam[1];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 1){
+               
+               ExcludeDataValue = TestJournal.ExcludeDateDataValue[1];
+               
+       }
+       
+       ASSERT_EQ("20160125T130000Z", ExcludeDate);
+       ASSERT_EQ("DATE-TIME", ExcludeDataValue);
+       ASSERT_EQ("Europe/Truro", ExcludeDataTimeZoneParam);
+       
+       // Get the third EXDATE.
+       
+       ExcludeDate.clear();
+       
+       std::string ExcludeDataTokens;
+       
+       if (TestJournal.ContactList.size() > 2){
+               
+               ExcludeDate = TestJournal.ExcludeDateData[2];
+               
+       }
+       
+       if (TestJournal.ContactList.size() > 2){
+               
+               ExcludeDataTokens = TestJournal.ExcludeDateDataTokens[2];
+               
+       }
+       
+       ASSERT_EQ("20160125T133000Z", ExcludeDate);
+       ASSERT_EQ("ZOOP=ZIPPO", ExcludeDataTokens);
+       
+       // Get the first RELATED-TO.
+       
+       std::string RelatedTo;
+       
+       if (TestJournal.RelatedToData.begin() != TestJournal.RelatedToData.end()){
+               
+               RelatedTo = TestJournal.RelatedToData[0];
+               
+       }
+       
+       ASSERT_EQ("person.1@example.com", RelatedTo);
+       
+       // Get the second RELATED-TO.
+       
+       RelatedTo.clear();
+       
+       std::string RelatedToType;
+       
+       if (TestJournal.RelatedToData.size() > 1){
+               
+               RelatedTo = TestJournal.RelatedToData[1];
+               
+       }
+       
+       if (TestJournal.RelatedToData.size() > 1){
+               
+               RelatedToType = TestJournal.RelatedToDataRelationType[1];
+               
+       }
+       
+       ASSERT_EQ("person.2@example.com", RelatedTo);
+       ASSERT_EQ("PARENT", RelatedToType);
+       
+       // Get the third RELATED-TO.
+       
+       RelatedTo.clear();
+       
+       std::string RelatedToTokens;
+       
+       if (TestJournal.RelatedToData.size() > 2){
+               
+               RelatedTo = TestJournal.RelatedToData[2];
+               
+       }
+       
+       if (TestJournal.RelatedToData.size() > 2){
+               
+               RelatedToTokens = TestJournal.RelatedToDataTokens[2];
+               
+       }
+       
+       ASSERT_EQ("person.3@example.com", RelatedTo);
+       ASSERT_EQ("SCHOOL=MEETING", RelatedToTokens);
+       
 }
\ 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