Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Version 0.06 release
[xestiacalendar/.git] / source / tests / xestiacalendar_icaltimezoneload.h
index a189b33..78dc2b9 100644 (file)
@@ -1,14 +1,14 @@
-// xestiacalendar_icaleventload.h - Xestia Calendar iCalendar Timezone Component Unit Tests
+// xestiacalendar_icaltimezoneload.h - Xestia Calendar iCalendar Timezone Component Unit Tests
 //
-// (c) 2016 Xestia Software Development.
+// (c) 2016-2017 Xestia Software Development.
 //
 // This file is part of Xestia Calendar.
 //
-// Xestia Address Book is free software: you can redistribute it and/or modify
+// Xestia Calendar is free software: you can redistribute it and/or modify
 // it under the terms of the GNU General Public License as published by the
 // Free Software Foundation, version 3 of the license.
 //
-// Xestia Address Book is distributed in the hope that it will be useful,
+// Xestia Calendar is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 // GNU General Public License for more details.
 
 TEST(iCalendarTimezone, BasicTests){
 
-       CalendarTimezoneObject TestTimezone;
+       CalendarTimezoneObject testTimezone;
        
-       ASSERT_EQ(CALENDAROBJECTLOAD_MISSING, TestTimezone.LoadFile("iCalendarTimezone-Missing.vcf"));
-       ASSERT_EQ(CALENDAROBJECTLOAD_CANNOTOPEN, TestTimezone.LoadFile("iCalendarTimezone-InvalidPermissions.vcf"));
-       ASSERT_EQ(CALENDAROBJECTLOAD_OK, TestTimezone.LoadFile("iCalendarTimezone-Load1.vcf"));
+       ASSERT_EQ(CALENDAROBJECTLOAD_MISSING, testTimezone.LoadFile("iCalendarTimezone-Missing.vcf"));
+       ASSERT_EQ(CALENDAROBJECTLOAD_CANNOTOPEN, testTimezone.LoadFile("iCalendarTimezone-InvalidPermissions.vcf"));
+       ASSERT_EQ(CALENDAROBJECTLOAD_OK, testTimezone.LoadFile("iCalendarTimezone-Load1.vcf"));
        
 }
 
 TEST(iCalendarTimezone, ObjectDataTests){
        
-       CalendarTimezoneObject TestTimezone;
-       ASSERT_EQ(CALENDAROBJECTLOAD_OK, TestTimezone.LoadFile("iCalendarTimezone-Load2.vcf"));
-       ASSERT_EQ(CALENDAROBJECTVALID_OK, TestTimezone.ValidBaseObject());
+       CalendarTimezoneObject testTimezone;
+       ASSERT_EQ(CALENDAROBJECTLOAD_OK, testTimezone.LoadFile("iCalendarTimezone-Load2.vcf"));
+       ASSERT_EQ(CALENDAROBJECTVALID_OK, testTimezone.ValidBaseObject());
        
        // Tests for UID.
        
-       ASSERT_EQ("Example/Starrgazy", TestTimezone.TimeZoneData);
-       ASSERT_EQ("OTHER=PARAM", TestTimezone.TimeZoneDataTokens);
+       ASSERT_EQ("Example/Starrgazy", testTimezone.timeZoneData);
+       ASSERT_EQ("OTHER=PARAM", testTimezone.timeZoneDataTokens);
        
        // Tests for LAST-MODIFIED.
        
-       ASSERT_EQ("20160203T200700Z", TestTimezone.LastModifiedData);
-       ASSERT_EQ("FUTURE=ODD", TestTimezone.LastModifiedTokens);
+       ASSERT_EQ("20160203T200700Z", testTimezone.lastModifiedData);
+       ASSERT_EQ("FUTURE=ODD", testTimezone.lastModifiedTokens);
+
+       // Tests for TZURL.
+       
+       ASSERT_EQ("http://www.example.com/", testTimezone.timeZoneURLData);
+       ASSERT_EQ("URL=YES", testTimezone.timeZoneURLTokens);
+       
+       // Tests for the first STANDARD data.
+       
+       std::string dateTimeStartData;
+       std::string timeZoneOffsetToData;
+       std::string timeZoneOffsetFromData;
+       
+       if (testTimezone.timezoneStandardCollection.size() > 0){
+       
+               dateTimeStartData = testTimezone.timezoneStandardCollection[0].dateTimeStartData;
+       
+       }
+
+       if (testTimezone.timezoneStandardCollection.size() > 0){
+       
+               timeZoneOffsetToData = testTimezone.timezoneStandardCollection[0].timeZoneOffsetToData;
+       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 0){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneStandardCollection[0].timeZoneOffsetFromData;
+       
+       }
+       
+       ASSERT_EQ("20160204T020000", dateTimeStartData);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       
+       // Tests for the second STANDARD data.
+       
+       std::string dateTimeStartTokens;
+       std::string timeZoneOffsetToTokens;
+       std::string timeZoneOffsetFromTokens;
+       
+       std::string recurranceRuleData;
+       std::string recurranceRuleDataTokens;
+       
+       std::string commentList;
+       std::string commentListAltRep;
+       std::string commentListLanguage;
+       std::string commentListTokens;
+       
+       std::string recurranceDateData;
+       std::string recurranceDateValue;
+       std::string recurranceDateDataTimeZoneParam;
+       std::string recurranceDateDataTokens;
+       
+       std::string timeZoneNameData;
+       std::string timeZoneNameLanguage;
+       std::string timeZoneNameTokens;
+       
+       std::string xTokensData;
+       std::string xTokensDataTokens;
+       
+       dateTimeStartData.clear();
+       timeZoneOffsetToData.clear();
+       timeZoneOffsetFromData.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 1){
+       
+               dateTimeStartData = testTimezone.timezoneStandardCollection[1].dateTimeStartData;
+               dateTimeStartTokens = testTimezone.timezoneStandardCollection[1].dateTimeStartTokens;
+       
+       }
+
+       if (testTimezone.timezoneStandardCollection.size() > 1){
+       
+               timeZoneOffsetToData = testTimezone.timezoneStandardCollection[1].timeZoneOffsetToData;
+               timeZoneOffsetToTokens = testTimezone.timezoneStandardCollection[1].timeZoneOffsetToTokens;
+       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 1){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneStandardCollection[1].timeZoneOffsetFromData;
+               timeZoneOffsetFromTokens = testTimezone.timezoneStandardCollection[1].timeZoneOffsetFromTokens;
+       
+       }
+       
+       ASSERT_EQ("20160205T020000", dateTimeStartData);
+       ASSERT_EQ("MEEP=MOO", dateTimeStartTokens);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("EXAMPLE=DATA", timeZoneOffsetToTokens);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       ASSERT_EQ("LETS=GO", timeZoneOffsetFromTokens);
+       
+       // Tests for third STANDARD data.
+       
+       dateTimeStartData.clear();
+       dateTimeStartTokens.clear();
+       timeZoneOffsetToData.clear();
+       timeZoneOffsetToTokens.clear();
+       timeZoneOffsetFromData.clear();
+       timeZoneOffsetFromTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2){
+       
+               dateTimeStartData = testTimezone.timezoneStandardCollection[2].dateTimeStartData;
+               dateTimeStartTokens = testTimezone.timezoneStandardCollection[2].dateTimeStartTokens;
+       
+       }
+
+       if (testTimezone.timezoneStandardCollection.size() > 2){
+       
+               timeZoneOffsetToData = testTimezone.timezoneStandardCollection[2].timeZoneOffsetToData;
+               timeZoneOffsetToTokens = testTimezone.timezoneStandardCollection[2].timeZoneOffsetToTokens;
+       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneStandardCollection[2].timeZoneOffsetFromData;
+               timeZoneOffsetFromTokens = testTimezone.timezoneStandardCollection[2].timeZoneOffsetFromTokens;
+       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].commentList.size() > 0){
+               
+               commentList = testTimezone.timezoneStandardCollection[2].commentList[0];
+               commentListAltRep = testTimezone.timezoneStandardCollection[2].commentListAltRep[0];
+               commentListLanguage = testTimezone.timezoneStandardCollection[2].commentListLanguage[0];
+               commentListTokens = testTimezone.timezoneStandardCollection[2].commentListTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].recurranceRuleData.size() > 0){
+               
+               recurranceRuleData = testTimezone.timezoneStandardCollection[2].recurranceRuleData;
+               recurranceRuleDataTokens = testTimezone.timezoneStandardCollection[2].recurranceRuleDataTokens;
+                       
+       }
+
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].recurranceDateData.size() > 0){
+               
+               recurranceDateData = testTimezone.timezoneStandardCollection[2].recurranceDateData[0];
+               recurranceDateValue = testTimezone.timezoneStandardCollection[2].recurranceDateDataValue[0];
+               recurranceDateDataTimeZoneParam = testTimezone.timezoneStandardCollection[2].recurranceDateDataTimeZoneParam[0];
+               recurranceDateDataTokens = testTimezone.timezoneStandardCollection[2].recurranceDateDataTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].timeZoneNameData.size() > 0){
+               
+               timeZoneNameData = testTimezone.timezoneStandardCollection[2].timeZoneNameData[0];
+               timeZoneNameLanguage = testTimezone.timezoneStandardCollection[2].timeZoneNameLanguage[0];
+               timeZoneNameTokens = testTimezone.timezoneStandardCollection[2].timeZoneNameTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 0){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[0];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[0];
+                       
+       }
+       
+       ASSERT_EQ("20160206T020000", dateTimeStartData);
+       ASSERT_EQ("MEEP=MOO", dateTimeStartTokens);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("EXAMPLE=DATA", timeZoneOffsetToTokens);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       ASSERT_EQ("LETS=GO", timeZoneOffsetFromTokens);
+
+       ASSERT_EQ("Example timezone comment.", commentList);
+       ASSERT_EQ("null:nodata", commentListAltRep);
+       ASSERT_EQ("kw", commentListLanguage);
+       ASSERT_EQ("YO=YOYOS", commentListTokens);
+
+       ASSERT_EQ("FREQ=DAILY;COUNT=10", recurranceRuleData);
+       ASSERT_EQ("YAK=YES", recurranceRuleDataTokens);
+       
+       ASSERT_EQ("20160205,20160207,20160216,20160305", recurranceDateData);
+       ASSERT_EQ("DATE", recurranceDateValue);
+       ASSERT_EQ("Europe/Truro", recurranceDateDataTimeZoneParam);
+       ASSERT_EQ("BEEP=BOOP", recurranceDateDataTokens);
+
+       ASSERT_EQ("Example Timezone Name 1", timeZoneNameData);
+       ASSERT_EQ("en", timeZoneNameLanguage);
+       ASSERT_EQ("NOPE=YES", timeZoneNameTokens);
+
+       ASSERT_EQ("Example Timezone Name 1", timeZoneNameData);
+       ASSERT_EQ("en", timeZoneNameLanguage);
+
+       ASSERT_EQ("Meep", xTokensData);
+       ASSERT_EQ("X-MOO", xTokensDataTokens);
+
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 1){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[1];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[1];
+                       
+       }
+
+       ASSERT_EQ("Moop", xTokensData);
+       ASSERT_EQ("X-MOO", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 2){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[2];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[2];
+                       
+       }
+
+       ASSERT_EQ("Zaap", xTokensData);
+       ASSERT_EQ("X-MOO;MEEP=YIKES", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 3){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[3];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[3];
+                       
+       }
+
+       ASSERT_EQ("Fork", xTokensData);
+       ASSERT_EQ("X-ITEM", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 4){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[4];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[4];
+                       
+       }
+
+       ASSERT_EQ("Spoon", xTokensData);
+       ASSERT_EQ("X-ITEM", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 5){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[5];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[5];
+                       
+       }
+
+       ASSERT_EQ("Knife", xTokensData);
+       ASSERT_EQ("X-ITEM;DIRTY=NO", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 6){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[6];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[6];
+                       
+       }
+
+       ASSERT_EQ("1", xTokensData);
+       ASSERT_EQ("X-NOPE", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 7){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[7];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[7];
+                       
+       }
+
+       ASSERT_EQ("2", xTokensData);
+       ASSERT_EQ("X-NOPE", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneStandardCollection.size() > 2 && 
+               testTimezone.timezoneStandardCollection[2].xTokensData.size() > 8){
+               
+               xTokensData = testTimezone.timezoneStandardCollection[2].xTokensData[8];
+               xTokensDataTokens = testTimezone.timezoneStandardCollection[2].xTokensDataTokens[8];
+                       
+       }
+
+       ASSERT_EQ("3", xTokensData);
+       ASSERT_EQ("X-NOPE;LONG=YES", xTokensDataTokens);
+       
+       // Tests for the first DAYLIGHT data.
+       
+       dateTimeStartData.clear();
+       timeZoneOffsetToData.clear();
+       timeZoneOffsetFromData.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 0){
+       
+               dateTimeStartData = testTimezone.timezoneDaylightCollection[0].dateTimeStartData;
+       
+       }
+
+       if (testTimezone.timezoneDaylightCollection.size() > 0){
+       
+               timeZoneOffsetToData = testTimezone.timezoneDaylightCollection[0].timeZoneOffsetToData;
+       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 0){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneDaylightCollection[0].timeZoneOffsetFromData;
+       
+       }
+       
+       ASSERT_EQ("20160204T020000", dateTimeStartData);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       
+       // Tests for the second DAYLIGHT data.
+       
+       dateTimeStartTokens.clear();
+       timeZoneOffsetToTokens.clear();
+       timeZoneOffsetFromTokens.clear();
+       
+       recurranceRuleData.clear();
+       recurranceRuleDataTokens.clear();
+       
+       commentList.clear();
+       commentListAltRep.clear();
+       commentListLanguage.clear();
+       commentListTokens.clear();
+       
+       recurranceDateData.clear();
+       recurranceDateValue.clear();
+       recurranceDateDataTimeZoneParam.clear();
+       recurranceDateDataTokens.clear();
+       
+       timeZoneNameData.clear();
+       timeZoneNameLanguage.clear();
+       timeZoneNameTokens.clear();
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       dateTimeStartData.clear();
+       timeZoneOffsetToData.clear();
+       timeZoneOffsetFromData.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 1){
+       
+               dateTimeStartData = testTimezone.timezoneDaylightCollection[1].dateTimeStartData;
+               dateTimeStartTokens = testTimezone.timezoneDaylightCollection[1].dateTimeStartTokens;
+       
+       }
+
+       if (testTimezone.timezoneDaylightCollection.size() > 1){
+       
+               timeZoneOffsetToData = testTimezone.timezoneDaylightCollection[1].timeZoneOffsetToData;
+               timeZoneOffsetToTokens = testTimezone.timezoneDaylightCollection[1].timeZoneOffsetToTokens;
+       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 1){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneDaylightCollection[1].timeZoneOffsetFromData;
+               timeZoneOffsetFromTokens = testTimezone.timezoneDaylightCollection[1].timeZoneOffsetFromTokens;
+       
+       }
+       
+       ASSERT_EQ("20160205T020000", dateTimeStartData);
+       ASSERT_EQ("MEEP=MOO", dateTimeStartTokens);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("EXAMPLE=DATA", timeZoneOffsetToTokens);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       ASSERT_EQ("LETS=GO", timeZoneOffsetFromTokens);
+       
+       // Tests for third DAYLIGHT data.
+       
+       dateTimeStartData.clear();
+       dateTimeStartTokens.clear();
+       timeZoneOffsetToData.clear();
+       timeZoneOffsetToTokens.clear();
+       timeZoneOffsetFromData.clear();
+       timeZoneOffsetFromTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2){
+       
+               dateTimeStartData = testTimezone.timezoneDaylightCollection[2].dateTimeStartData;
+               dateTimeStartTokens = testTimezone.timezoneDaylightCollection[2].dateTimeStartTokens;
+       
+       }
+
+       if (testTimezone.timezoneDaylightCollection.size() > 2){
+       
+               timeZoneOffsetToData = testTimezone.timezoneDaylightCollection[2].timeZoneOffsetToData;
+               timeZoneOffsetToTokens = testTimezone.timezoneDaylightCollection[2].timeZoneOffsetToTokens;
+       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2){
+       
+               timeZoneOffsetFromData = testTimezone.timezoneDaylightCollection[2].timeZoneOffsetFromData;
+               timeZoneOffsetFromTokens = testTimezone.timezoneDaylightCollection[2].timeZoneOffsetFromTokens;
+       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].commentList.size() > 0){
+               
+               commentList = testTimezone.timezoneDaylightCollection[2].commentList[0];
+               commentListAltRep = testTimezone.timezoneDaylightCollection[2].commentListAltRep[0];
+               commentListLanguage = testTimezone.timezoneDaylightCollection[2].commentListLanguage[0];
+               commentListTokens = testTimezone.timezoneDaylightCollection[2].commentListTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].recurranceRuleData.size() > 0){
+               
+               recurranceRuleData = testTimezone.timezoneDaylightCollection[2].recurranceRuleData;
+               recurranceRuleDataTokens = testTimezone.timezoneDaylightCollection[2].recurranceRuleDataTokens;
+                       
+       }
+
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].recurranceDateData.size() > 0){
+               
+               recurranceDateData = testTimezone.timezoneDaylightCollection[2].recurranceDateData[0];
+               recurranceDateValue = testTimezone.timezoneDaylightCollection[2].recurranceDateDataValue[0];
+               recurranceDateDataTimeZoneParam = testTimezone.timezoneDaylightCollection[2].recurranceDateDataTimeZoneParam[0];
+               recurranceDateDataTokens = testTimezone.timezoneDaylightCollection[2].recurranceDateDataTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].timeZoneNameData.size() > 0){
+               
+               timeZoneNameData = testTimezone.timezoneDaylightCollection[2].timeZoneNameData[0];
+               timeZoneNameLanguage = testTimezone.timezoneDaylightCollection[2].timeZoneNameLanguage[0];
+               timeZoneNameTokens = testTimezone.timezoneDaylightCollection[2].timeZoneNameTokens[0];
+                       
+       }
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 0){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[0];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[0];
+                       
+       }
+       
+       ASSERT_EQ("20160206T020000", dateTimeStartData);
+       ASSERT_EQ("MEEP=MOO", dateTimeStartTokens);
+       ASSERT_EQ("-0400", timeZoneOffsetToData);
+       ASSERT_EQ("EXAMPLE=DATA", timeZoneOffsetToTokens);
+       ASSERT_EQ("-0500", timeZoneOffsetFromData);
+       ASSERT_EQ("LETS=GO", timeZoneOffsetFromTokens);
+
+       ASSERT_EQ("Example timezone comment.", commentList);
+       ASSERT_EQ("null:nodata", commentListAltRep);
+       ASSERT_EQ("kw", commentListLanguage);
+       ASSERT_EQ("YO=YOYOS", commentListTokens);
+
+       ASSERT_EQ("FREQ=DAILY;COUNT=10", recurranceRuleData);
+       ASSERT_EQ("YAK=YES", recurranceRuleDataTokens);
+       
+       ASSERT_EQ("20160205,20160207,20160216,20160305", recurranceDateData);
+       ASSERT_EQ("DATE", recurranceDateValue);
+       ASSERT_EQ("Europe/Truro", recurranceDateDataTimeZoneParam);
+       ASSERT_EQ("BEEP=BOOP", recurranceDateDataTokens);
+
+       ASSERT_EQ("Example Timezone Name 1", timeZoneNameData);
+       ASSERT_EQ("en", timeZoneNameLanguage);
+       ASSERT_EQ("NOPE=YES", timeZoneNameTokens);
+
+       ASSERT_EQ("Example Timezone Name 1", timeZoneNameData);
+       ASSERT_EQ("en", timeZoneNameLanguage);
+
+       ASSERT_EQ("Meep", xTokensData);
+       ASSERT_EQ("X-MOO", xTokensDataTokens);
+
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 1){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[1];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[1];
+                       
+       }
+
+       ASSERT_EQ("Moop", xTokensData);
+       ASSERT_EQ("X-MOO", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 2){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[2];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[2];
+                       
+       }
+
+       ASSERT_EQ("Zaap", xTokensData);
+       ASSERT_EQ("X-MOO;MEEP=YIKES", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 3){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[3];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[3];
+                       
+       }
+
+       ASSERT_EQ("Fork", xTokensData);
+       ASSERT_EQ("X-ITEM", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 4){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[4];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[4];
+                       
+       }
+
+       ASSERT_EQ("Spoon", xTokensData);
+       ASSERT_EQ("X-ITEM", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 5){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[5];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[5];
+                       
+       }
+
+       ASSERT_EQ("Knife", xTokensData);
+       ASSERT_EQ("X-ITEM;DIRTY=NO", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 6){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[6];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[6];
+                       
+       }
+
+       ASSERT_EQ("1", xTokensData);
+       ASSERT_EQ("X-NOPE", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 7){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[7];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[7];
+                       
+       }
+
+       ASSERT_EQ("2", xTokensData);
+       ASSERT_EQ("X-NOPE", xTokensDataTokens);
+       
+       xTokensData.clear();
+       xTokensDataTokens.clear();
+       
+       if (testTimezone.timezoneDaylightCollection.size() > 2 && 
+               testTimezone.timezoneDaylightCollection[2].xTokensData.size() > 8){
+               
+               xTokensData = testTimezone.timezoneDaylightCollection[2].xTokensData[8];
+               xTokensDataTokens = testTimezone.timezoneDaylightCollection[2].xTokensDataTokens[8];
+                       
+       }
+
+       ASSERT_EQ("3", xTokensData);
+       ASSERT_EQ("X-NOPE;LONG=YES", xTokensDataTokens);
        
 }
\ 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