Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Added unit tests for EXDATE in iCalendarJournal/ObjectDataTests.
[xestiacalendar/.git] / source / tests / xestiacalendar_icaljournalload.h
index 8ccab78..fae9e65 100644 (file)
@@ -444,4 +444,190 @@ 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);
+       
 }
\ 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