Esempio n. 1
0
    def test_timestamp_in_recursive_event_with_exceptions(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART:20151010T100000Z
DTEND:20151010T120000Z
CREATED:20151010T100000Z
RRULE:FREQ=DAILY;COUNT=5
EXDATE:20151011T100000Z,20151012T100000Z
EXDATE:20151013T100000Z
UID:123456
END:VEVENT"""))

        assert_that(etp.start(), is_(datetime(2015, 10, 10, 10, tzinfo=pytz.utc)))
        assert_that(etp.duration(), is_(timedelta(hours=2)))

        assert_that(datetime(2015, 10, 10, 11, tzinfo=pytz.utc) in etp, is_(True))
        assert_that(datetime(2015, 10, 10, 9, tzinfo=pytz.utc) in etp, is_(False))
        assert_that(datetime(2015, 10, 10, 13, tzinfo=pytz.utc) in etp, is_(False))

        assert_that(datetime(2015, 10, 11, 11, tzinfo=pytz.utc) in etp, is_(False))
        assert_that(datetime(2015, 10, 12, 11, tzinfo=pytz.utc) in etp, is_(False))
        assert_that(datetime(2015, 10, 13, 11, tzinfo=pytz.utc) in etp, is_(False))

        assert_that(datetime(2015, 10, 14, 11, tzinfo=pytz.utc) in etp, is_(True))

        assert_that(datetime(2015, 10, 15, 11, tzinfo=pytz.utc) in etp, is_(False))
Esempio n. 2
0
    def test_timestamp_in_event_without_an_end(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART:20130921T230000Z
DTSTAMP:20150925T051339Z
SEQUENCE:1
CREATED:20130903T183447Z
LAST-MODIFIED:20130916T165029Z
END:VEVENT"""))

        assert_that(etp.start(), is_(datetime(2013, 9, 21, 23, tzinfo=pytz.utc)))
        assert_that(datetime(2013, 9, 21, 23, tzinfo=pytz.utc) in etp, is_(False))
Esempio n. 3
0
    def test_timestamp_in_byday_event(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART;TZID=America/Toronto:20150602T183000
DTEND;TZID=America/Toronto:20150602T193000
DTSTAMP:20150925T035639Z
SEQUENCE:0
EXDATE;TZID=America/Toronto:20150827T183000
CREATED:20150519T235325Z
LAST-MODIFIED:20150706T153006Z
RRULE:FREQ=WEEKLY;UNTIL=20150827T223000Z;BYDAY=TU,TH;WKST=SU
END:VEVENT"""))

        assert_that(etp.start(), is_(datetime(2015, 06, 02, 18, 30, tzinfo=pytz.timezone('Etc/GMT+4'))))
Esempio n. 4
0
    def test_timestamp_in_yearly_event(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART;VALUE=DATE:20120702
DTEND;VALUE=DATE:20120703
DTSTAMP:20150925T043431Z
SEQUENCE:2
CREATED:20110922T001534Z
LAST-MODIFIED:20150706T153006Z
RRULE:FREQ=YEARLY
END:VEVENT"""))

        assert_that(etp.start(), is_(date(2012, 07, 02)))
        assert_that(etp.duration(), is_(timedelta(days=1)))

        assert_that(datetime(2012, 07, 02, 12) in etp, is_(True))
Esempio n. 5
0
    def test_timestamp_in_simple_event(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART:20151010T100000Z
DTEND:20151010T120000Z
CREATED:20151010T100000Z
UID:123456
END:VEVENT"""))

        assert_that(etp.start(), is_(datetime(2015, 10, 10, 10, tzinfo=pytz.utc)))
        assert_that(etp.duration(), is_(timedelta(hours=2)))

        assert_that(datetime(2015, 10, 10, 11, tzinfo=pytz.utc) in etp, is_(True))

        assert_that(datetime(2015, 10, 10, 9, tzinfo=pytz.utc) in etp, is_(False))

        assert_that(datetime(2015, 10, 10, 13, tzinfo=pytz.utc) in etp, is_(False))
Esempio n. 6
0
    def test_timestamp_in_timeless_event(self):
        etp = CalendarTimePeriod(Event.from_ical("""BEGIN:VEVENT
DTSTART;VALUE=DATE:20151113
DTEND;VALUE=DATE:20151114
DTSTAMP:20150925T034508Z
UID:9E783D57-BF34-47B0-86D8-FE6FD83B05A2
SEQUENCE:0
CREATED:20150922T191411Z
LAST-MODIFIED:20150922T191823Z
END:VEVENT"""))

        assert_that(etp.start(), is_(date(2015, 11, 13)))
        assert_that(etp.duration(), is_(timedelta(days=1)))

        assert_that(datetime(2015, 11, 12, 12, tzinfo=pytz.utc) in etp, is_(False))
        assert_that(datetime(2015, 11, 13, 12, tzinfo=pytz.utc) in etp, is_(True))
        assert_that(datetime(2015, 11, 14, 9, tzinfo=pytz.utc) in etp, is_(False))