public void CheckProperties() { var calString = @"BEGIN:VCALENDAR PRODID:-//Google Inc//Google Calendar 70.9054//EN VERSION:2.0 CALSCALE:GREGORIAN X-WR-CALNAME:[email protected] X-WR-TIMEZONE:America/Los_Angeles BEGIN:VTIMEZONE TZID:America/Los_Angeles X-LIC-LOCATION:America/Los_Angeles BEGIN:DAYLIGHT TZOFFSETFROM:-0800 TZOFFSETTO:-0700 TZNAME:PDT DTSTART:19700308T020000 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU END:DAYLIGHT BEGIN:STANDARD TZOFFSETFROM:-0700 TZOFFSETTO:-0800 TZNAME:PST DTSTART:19701101T020000 RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU END:STANDARD END:VTIMEZONE BEGIN:VEVENT DTSTART;TZID=America/Los_Angeles:20120629T130000 DTEND;TZID=America/Los_Angeles:20120629T140000 DTSTAMP:20120629T112428Z UID:[email protected] CREATED:20120629T111935Z DESCRIPTION:foo LAST-MODIFIED:20120629T112428Z LOCATION:Barcelona SEQUENCE:0 STATUS:CONFIRMED SUMMARY:Demo B2G Calendar TRANSP:OPAQUE BEGIN:VALARM ACTION:EMAIL DESCRIPTION:This is an event reminder SUMMARY:Alarm notification ATTENDEE:mailto:[email protected] TRIGGER:-P0DT0H30M0S END:VALARM BEGIN:VALARM ACTION:DISPLAY DESCRIPTION:This is an event reminder TRIGGER:-P0DT0H30M0S END:VALARM END:VEVENT END:VCALENDAR "; VCalendar calendar = VCalendar.Parse(calString); var calEvent = calendar.GetCalendarComponents("VEVENT").First() as VEvent; var eventAlarms = calEvent.CalendarComponents["VALARM"]; Assert.Equal((calEvent.GetComponentProperty("UID") as IValue <string>).Value, "*****@*****.**"); Assert.Equal((calEvent.GetComponentProperty("DESCRIPTION") as IValue <string>).Value, "foo"); Assert.Equal(2, eventAlarms.Count); }