예제 #1
0
    def setUp(self):
        src = iCalendar(string=content)
        src = StringIO(src.to_str())
        cal = icalendarTable()
        cal.load_state_from_ical_file(src)
        self.cal1 = cal

        src = iCalendar(string=content2)
        src = StringIO(src.to_str())
        cal = icalendarTable()
        cal.load_state_from_ical_file(src)
        self.cal2 = cal
예제 #2
0
파일: test_ical.py 프로젝트: kennym/itools
    def setUp(self):
        src = iCalendar(string=content)
        src = StringIO(src.to_str())
        cal = icalendarTable()
        cal.load_state_from_ical_file(src)
        self.cal1 = cal

        src = iCalendar(string=content2)
        src = StringIO(src.to_str())
        cal = icalendarTable()
        cal.load_state_from_ical_file(src)
        self.cal2 = cal
예제 #3
0
파일: test_ical.py 프로젝트: kennym/itools
    def test_add_to_calendar(self):
        """Test to add property and component to an empty icalendar object.
        """
        cal = iCalendar()
        cal.add_component('VEVENT')
        self.assertEqual(len(cal.get_components('VEVENT')), 1)

        value = Property('PUBLISH')
        cal.set_property('METHOD', value)
        self.assertEqual(cal.get_property_values('METHOD'), value)
예제 #4
0
    def test_add_to_calendar(self):
        """Test to add property and component to an empty icalendar object.
        """
        cal = iCalendar()
        cal.add_component('VEVENT')
        self.assertEqual(len(cal.get_components('VEVENT')), 1)

        value = Property('PUBLISH')
        cal.set_property('METHOD', value)
        self.assertEqual(cal.get_property_values('METHOD'), value)
예제 #5
0
파일: test_ical.py 프로젝트: Ramel/itools
 def test_vtimezone(self):
     handler = iCalendar('tests/test_vtimezone.ics')
     tz = handler.get_components('VTIMEZONE')
     self.assertEqual(len(tz), 1)
     tz = tz[0]
     self.assertEqual(tz.__class__, VTimezone)
     self.assertTrue(isinstance(tz, tzinfo))
     for dt, (tzname, dst, utcoffset) in tz_file_test:
         dt = datetime(*dt, tzinfo=tz)
         self.assertEqual(tz.tzname(dt), tzname)
         self.assertEqual(tz.dst(dt), timedelta(*dst))
         self.assertEqual(tz.utcoffset(dt), timedelta(*utcoffset))
예제 #6
0
파일: test_ical.py 프로젝트: kennym/itools
    def test_search_events(self):
        """Test get events filtered by arguments given.
        """
        cal = self.cal1
        # Test with 1 event
        attendee_value = 'mailto:[email protected]'

        events = cal.search_events(ATTENDEE=attendee_value)
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='CONFIRMED')
        self.assertEqual(events, [])

        events = cal.search_events(STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(ATTENDEE=attendee_value, STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='TENTATIVE', PRIORITY=1)
        self.assertEqual(len(events), 1)

        events = cal.search_events(
            ATTENDEE=[attendee_value, 'mailto:[email protected]'],
            STATUS='TENTATIVE',
            PRIORITY=1)
        self.assertEqual(len(events), 1)

        # Tests with 2 events
        cal = iCalendar(string=content2)
        attendee_value = 'mailto:[email protected]'

        events = cal.search_events(ATTENDEE=attendee_value)
        self.assertEqual(len(events), 2)

        events = cal.search_events(STATUS='CONFIRMED')
        self.assertEqual(events, [])

        events = cal.search_events(STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(ATTENDEE=attendee_value, STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='TENTATIVE', PRIORITY=1)
        self.assertEqual(len(events), 1)

        events = cal.search_events(
            ATTENDEE=[attendee_value, 'mailto:[email protected]'],
            STATUS='TENTATIVE',
            PRIORITY=1)
        self.assertEqual(len(events), 1)
예제 #7
0
    def test_search_events(self):
        """Test get events filtered by arguments given.
        """
        cal = self.cal1
        # Test with 1 event
        attendee_value = 'mailto:[email protected]'

        events = cal.search_events(ATTENDEE=attendee_value)
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='CONFIRMED')
        self.assertEqual(events, [])

        events = cal.search_events(STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(ATTENDEE=attendee_value, STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='TENTATIVE', PRIORITY=1)
        self.assertEqual(len(events), 1)

        events = cal.search_events(
            ATTENDEE=[attendee_value, 'mailto:[email protected]'],
            STATUS='TENTATIVE',
            PRIORITY=1)
        self.assertEqual(len(events), 1)

        # Tests with 2 events
        cal = iCalendar(string=content2)
        attendee_value = 'mailto:[email protected]'

        events = cal.search_events(ATTENDEE=attendee_value)
        self.assertEqual(len(events), 2)

        events = cal.search_events(STATUS='CONFIRMED')
        self.assertEqual(events, [])

        events = cal.search_events(STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(ATTENDEE=attendee_value, STATUS='TENTATIVE')
        self.assertEqual(len(events), 1)

        events = cal.search_events(STATUS='TENTATIVE', PRIORITY=1)
        self.assertEqual(len(events), 1)

        events = cal.search_events(
            ATTENDEE=[attendee_value, 'mailto:[email protected]'],
            STATUS='TENTATIVE',
            PRIORITY=1)
        self.assertEqual(len(events), 1)
예제 #8
0
파일: test_ical.py 프로젝트: kennym/itools
    def test_new(self):
        cal = iCalendar()

        properties = []
        for name in cal.properties:
            params = cal.properties[name].parameters
            value = cal.properties[name].value
            property = '%s;%s:%s' % (name, params, value)
            properties.append(property)

        # Test properties
        expected_properties = [
            u'VERSION;{}:2.0',
            u'PRODID;{}:-//itaapy.com/NONSGML ikaaro icalendar V1.0//EN']
        self.assertEqual(properties, expected_properties)

        # Test components
        self.assertEqual(len(cal.get_components()), 0)
        self.assertEqual(cal.get_components('VEVENT'), [])
예제 #9
0
    def test_new(self):
        cal = iCalendar()

        properties = []
        for name in cal.properties:
            params = cal.properties[name].parameters
            value = cal.properties[name].value
            property = '%s;%s:%s' % (name, params, value)
            properties.append(property)

        # Test properties
        expected_properties = [
            u'VERSION;None:2.0',
            u'PRODID;None:-//itaapy.com/NONSGML ikaaro icalendar V1.0//EN'
        ]
        self.assertEqual(properties, expected_properties)

        # Test components
        self.assertEqual(len(cal.get_components()), 0)
        self.assertEqual(cal.get_components('VEVENT'), [])
예제 #10
0
파일: agenda.py 프로젝트: staverne/ikaaro
    def load_state_from_ical_file(self, file):
        # Clear Calendar
        for event in self._get_names():
            self.del_resource(event)

        ical = iCalendar()
        ical.reset()
        ical._load_state_from_file(file)
        timezones = ical.get_components('VTIMEZONE')
        events = ical.get_components('VEVENT')

        i = 0
        for event in events:
            filename = str(i)
            properties = {}
            for name, value in event.get_property().items():
                if name in ics_to_ikaaro:
                    name = ics_to_ikaaro[name]
                    properties[name] = value.value
            properties['uid'] = event.uid
            self.make_resource(filename, Event, **properties)
            i += 1
예제 #11
0
파일: test_ical.py 프로젝트: kennym/itools
 def setUp(self):
     self.cal1 = iCalendar(string=content)
     self.cal2 = iCalendar(string=content2)
예제 #12
0
 def setUp(self):
     self.cal1 = iCalendar(string=content)
     self.cal2 = iCalendar(string=content2)