X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Ftests%2Fxestiacalendar_icaleventload.h;h=b9a989e105c0ffed85c0635521a6ce0020810be4;hb=b301c6e7e7f6848581e3b773468b3becac420ecc;hp=30856765fe82920b648c06643e3fc103760cc3e0;hpb=284c77ac5ae39b716dca3b88b365dc335759af22;p=xestiacalendar%2F.git diff --git a/source/tests/xestiacalendar_icaleventload.h b/source/tests/xestiacalendar_icaleventload.h index 3085676..b9a989e 100644 --- a/source/tests/xestiacalendar_icaleventload.h +++ b/source/tests/xestiacalendar_icaleventload.h @@ -1069,27 +1069,106 @@ TEST(iCalendarEvent, ObjectDataTests){ 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); - if (TestEvent.CalendarAlarmData.size() > 0){ + ASSERT_EQ("PT5H", DurationData); + ASSERT_EQ("FLYING=NO", DurationTokens); + + ASSERT_EQ("PT5M", RepeatData); + ASSERT_EQ("NEVER=SLEEP", RepeatTokens); - ActionDataTokens = TestEvent.CalendarAlarmData[0].AlarmActionTokens; + // 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("AUDIO", ActionData); - ASSERT_EQ("FUNKY=SOUNDS", ActionDataTokens); + 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(); -} \ No newline at end of file + 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); + +}