X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Ftests%2Fxestiacalendar_icaleventload.h;h=b9a989e105c0ffed85c0635521a6ce0020810be4;hb=b301c6e7e7f6848581e3b773468b3becac420ecc;hp=a0227a89363deb31a98a380fd21c17e650e0c249;hpb=abbabe53be45daff42ce81c4d08c1687e82f567f;p=xestiacalendar%2F.git diff --git a/source/tests/xestiacalendar_icaleventload.h b/source/tests/xestiacalendar_icaleventload.h index a0227a8..b9a989e 100644 --- a/source/tests/xestiacalendar_icaleventload.h +++ b/source/tests/xestiacalendar_icaleventload.h @@ -94,7 +94,7 @@ TEST(iCalendarEvent, ObjectDataTests){ DescriptionAltRep = TestEvent.DescriptionListAltRep[0]; } - if (TestEvent.DescriptionListAltRep.begin() != TestEvent.DescriptionListAltRep.end()){ + if (TestEvent.DescriptionListLanguage.begin() != TestEvent.DescriptionListLanguage.end()){ DescriptionLanguage = TestEvent.DescriptionListLanguage[0]; } @@ -676,13 +676,13 @@ TEST(iCalendarEvent, ObjectDataTests){ std::string RequestLanguage; - if (TestEvent.ContactList.size() > 1){ + if (TestEvent.RequestStatusData.size() > 1){ RequestStatus = TestEvent.RequestStatusData[1]; } - if (TestEvent.ContactList.size() > 1){ + if (TestEvent.RequestStatusData.size() > 1){ RequestLanguage = TestEvent.RequestStatusLanguage[1]; @@ -697,13 +697,13 @@ TEST(iCalendarEvent, ObjectDataTests){ std::string RequestTokens; - if (TestEvent.ContactList.size() > 2){ + if (TestEvent.RequestStatusData.size() > 2){ RequestStatus = TestEvent.RequestStatusData[2]; } - if (TestEvent.ContactList.size() > 2){ + if (TestEvent.RequestStatusData.size() > 2){ RequestTokens = TestEvent.RequestStatusTokens[2]; @@ -828,4 +828,347 @@ TEST(iCalendarEvent, ObjectDataTests){ ASSERT_EQ("null:nodata", ResourcesAltRep); ASSERT_EQ("STATUS=BROKEN", ResourcesTokens); -} \ No newline at end of file + // Get the first RDATE. + + std::string RecurrenceDate; + + if (TestEvent.RecurranceDateData.begin() != TestEvent.RecurranceDateData.end()){ + + RecurrenceDate = TestEvent.RecurranceDateData[0]; + + } + + ASSERT_EQ("20160120", RecurrenceDate); + + // Get the second RDATE. + + RecurrenceDate.clear(); + + std::string RecurrenceDateTimeZoneParam; + std::string RecurrenceDateValue; + + if (TestEvent.RecurranceDateData.size() > 1){ + + RecurrenceDate = TestEvent.RecurranceDateData[1]; + + } + + if (TestEvent.RecurranceDateData.size() > 1){ + + RecurrenceDateTimeZoneParam = TestEvent.RecurranceDateDataTimeZoneParam[1]; + + } + + if (TestEvent.RecurranceDateData.size() > 1){ + + RecurrenceDateValue = TestEvent.RecurranceDateDataValue[1]; + + } + + ASSERT_EQ("20160121", RecurrenceDate); + ASSERT_EQ("DATE", RecurrenceDateValue); + ASSERT_EQ("Europe/Truro", RecurrenceDateTimeZoneParam); + + // Get the third RDATE. + + RecurrenceDate.clear(); + + std::string RecurrenceTokens; + + if (TestEvent.RecurranceDateData.size() > 2){ + + RecurrenceDate = TestEvent.RecurranceDateData[2]; + + } + + if (TestEvent.RecurranceDateData.size() > 2){ + + RecurrenceTokens = TestEvent.RecurranceDateDataTokens[2]; + + } + + ASSERT_EQ("20160520", RecurrenceDate); + ASSERT_EQ("ZILCH=DATA", RecurrenceTokens); + + // Get the first X-EXAMPLE1 token. + + std::string XTokenName; + std::string XTokenData; + + if (TestEvent.XTokensData.size() != 0 ){ + + XTokenData = TestEvent.XTokensData[0]; + + } + + if (TestEvent.XTokensData.size() != 0){ + + XTokenName = TestEvent.XTokensDataTokens[0]; + + } + + ASSERT_EQ("Moo", XTokenData); + ASSERT_EQ("X-EXAMPLE1", XTokenName); + + // Get the second X-EXAMPLE1 token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 1){ + + XTokenData = TestEvent.XTokensData[1]; + + } + + if (TestEvent.XTokensData.size() > 1){ + + XTokenName = TestEvent.XTokensDataTokens[1]; + + } + + ASSERT_EQ("Meep", XTokenData); + ASSERT_EQ("X-EXAMPLE1;ANIMAL=NOPE", XTokenName); + + // Get the third X-EXAMPLE1 token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 2){ + + XTokenData = TestEvent.XTokensData[2]; + + } + + if (TestEvent.XTokensData.size() > 2){ + + XTokenName = TestEvent.XTokensDataTokens[2]; + + } + + ASSERT_EQ("Meow", XTokenData); + ASSERT_EQ("X-EXAMPLE1;ANIMAL=CAT", XTokenName); + + // Get the first X-EXAMPLE2 token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 3){ + + XTokenData = TestEvent.XTokensData[3]; + + } + + if (TestEvent.XTokensData.size() > 3){ + + XTokenName = TestEvent.XTokensDataTokens[3]; + + } + + ASSERT_EQ("Dish", XTokenData); + ASSERT_EQ("X-EXAMPLE2", XTokenName); + + // Get the second X-EXAMPLE2 token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 4){ + + XTokenData = TestEvent.XTokensData[4]; + + } + + if (TestEvent.XTokensData.size() > 4){ + + XTokenName = TestEvent.XTokensDataTokens[4]; + + } + + ASSERT_EQ("Fork", XTokenData); + ASSERT_EQ("X-EXAMPLE2;OBJECT=KITCHEN", XTokenName); + + // Get the third X-EXAMPLE2 token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 5){ + + XTokenData = TestEvent.XTokensData[5]; + + } + + if (TestEvent.XTokensData.size() > 5){ + + XTokenName = TestEvent.XTokensDataTokens[5]; + + } + + ASSERT_EQ("Table", XTokenData); + ASSERT_EQ("X-EXAMPLE2;OBJECT=LIVINGROOM", XTokenName); + + // Get the X-STATUS token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 6){ + + XTokenData = TestEvent.XTokensData[6]; + + } + + if (TestEvent.XTokensData.size() > 6){ + + XTokenName = TestEvent.XTokensDataTokens[6]; + + } + + ASSERT_EQ("Idle", XTokenData); + ASSERT_EQ("X-STATUS;HOLIDAY=YES", XTokenName); + + // Get the X-TRANSPORT token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 7){ + + XTokenData = TestEvent.XTokensData[7]; + + } + + if (TestEvent.XTokensData.size() > 7){ + + XTokenName = TestEvent.XTokensDataTokens[7]; + + } + + ASSERT_EQ("Private Hire", XTokenData); + ASSERT_EQ("X-TRANSPORT;PUBLIC=NO", XTokenName); + + // Get the X-PHANTOM-STATUS token. + + XTokenName.clear(); + XTokenData.clear(); + + if (TestEvent.XTokensData.size() > 8){ + + XTokenData = TestEvent.XTokensData[8]; + + } + + if (TestEvent.XTokensData.size() > 8){ + + XTokenName = TestEvent.XTokensDataTokens[8]; + + } + + ASSERT_EQ("None", XTokenData); + ASSERT_EQ("X-PHANTOM-STATUS;HELP=NONE", XTokenName); + +} + +TEST(iCalendarEvent, AlarmTests){ + + CalendarEventObject TestEvent; + ASSERT_EQ(CALENDAROBJECTLOAD_OK, TestEvent.LoadFile("iCalendarEvent-Load2.vcf")); + ASSERT_EQ(CALENDAROBJECTVALID_OK, TestEvent.ValidBaseObject()); + + // Tests for the first VALARM property. + + std::string ActionData; + std::string ActionDataTokens; + + std::string TriggerData; + std::string TriggerRelated; + std::string TriggerValue; + std::string TriggerTokens; + + std::string DurationData; + std::string DurationTokens; + + std::string RepeatData; + std::string RepeatTokens; + + std::string XTokenData; + std::string XTokenName; + + if (TestEvent.CalendarAlarmData.size() > 0){ + + ActionData = TestEvent.CalendarAlarmData[0].AlarmAction; + ActionDataTokens = TestEvent.CalendarAlarmData[0].AlarmActionTokens; + + TriggerData = TestEvent.CalendarAlarmData[0].TriggerData; + TriggerRelated = TestEvent.CalendarAlarmData[0].TriggerRelated; + TriggerValue = TestEvent.CalendarAlarmData[0].TriggerValue; + TriggerTokens = TestEvent.CalendarAlarmData[0].TriggerTokens; + + DurationData = TestEvent.CalendarAlarmData[0].DurationData; + DurationTokens = TestEvent.CalendarAlarmData[0].DurationTokens; + + RepeatData = TestEvent.CalendarAlarmData[0].RepeatData; + RepeatTokens = TestEvent.CalendarAlarmData[0].RepeatTokens; + + } + + ASSERT_EQ("AUDIO", ActionData); + ASSERT_EQ("FUNKY=SOUNDS", ActionDataTokens); + + ASSERT_EQ("20160220T160000Z", TriggerData); + ASSERT_EQ("END", TriggerRelated); + ASSERT_EQ("DATE-TIME", TriggerValue); + ASSERT_EQ("PUSH=BUTTON", TriggerTokens); + + ASSERT_EQ("PT5H", DurationData); + ASSERT_EQ("FLYING=NO", DurationTokens); + + ASSERT_EQ("PT5M", RepeatData); + ASSERT_EQ("NEVER=SLEEP", RepeatTokens); + + // Test the first X-Token. + + if (TestEvent.CalendarAlarmData[0].XTokensData.size() > 0){ + + XTokenData = TestEvent.CalendarAlarmData[0].XTokensData[0]; + XTokenName = TestEvent.CalendarAlarmData[0].XTokensDataTokens[0]; + + } + + ASSERT_EQ("Example Data 1", XTokenData); + ASSERT_EQ("X-EXAMPLE1;YAY=YES", XTokenName); + + // Test the second X-Token. + + XTokenData.clear(); + XTokenName.clear(); + + if (TestEvent.CalendarAlarmData[0].XTokensData.size() > 1){ + + XTokenData = TestEvent.CalendarAlarmData[0].XTokensData[1]; + XTokenName = TestEvent.CalendarAlarmData[0].XTokensDataTokens[1]; + + } + + ASSERT_EQ("Example Data 2", XTokenData); + ASSERT_EQ("X-EXAMPLE2;NOPE=YEP", XTokenName); + + // Test the third X-Token. + + XTokenData.clear(); + XTokenName.clear(); + + if (TestEvent.CalendarAlarmData[0].XTokensData.size() > 2){ + + XTokenData = TestEvent.CalendarAlarmData[0].XTokensData[2]; + XTokenName = TestEvent.CalendarAlarmData[0].XTokensDataTokens[2]; + + } + + ASSERT_EQ("Example Data 3", XTokenData); + ASSERT_EQ("X-EXAMPLE3;WORLD=NO", XTokenName); + +}