mirror of
https://github.com/samsonjs/vdirsyncer.git
synced 2026-03-25 08:55:50 +00:00
More tests
This commit is contained in:
parent
9c265a8bc1
commit
1018ed6da6
2 changed files with 44 additions and 15 deletions
|
|
@ -16,9 +16,10 @@ import random
|
|||
class StorageTests(object):
|
||||
item_template = u'UID:{uid}\nX-SOMETHING:{r}'
|
||||
|
||||
def _create_bogus_item(self, uid):
|
||||
def _create_bogus_item(self, uid, item_template=None):
|
||||
r = random.random()
|
||||
return Item(self.item_template.format(uid=uid, r=r))
|
||||
item_template = item_template or self.item_template
|
||||
return Item(item_template.format(uid=uid, r=r))
|
||||
|
||||
def _get_storage(self, **kwargs):
|
||||
raise NotImplementedError()
|
||||
|
|
|
|||
|
|
@ -15,20 +15,48 @@ from vdirsyncer.storage.dav.caldav import CaldavStorage
|
|||
from . import DavStorageTests
|
||||
|
||||
|
||||
TASK_TEMPLATE = u'''BEGIN:VCALENDAR
|
||||
VERSION:2.0
|
||||
PRODID:-//dmfs.org//mimedir.icalendar//EN
|
||||
BEGIN:VTODO
|
||||
CREATED:20130721T142233Z
|
||||
DTSTAMP:20130730T074543Z
|
||||
LAST-MODIFIED;VALUE=DATE-TIME:20140122T151338Z
|
||||
SEQUENCE:2
|
||||
SUMMARY:Book: Kowlani - Tödlicher Staub
|
||||
UID:{uid}
|
||||
X-SOMETHING:{r}
|
||||
END:VTODO
|
||||
END:VCALENDAR'''
|
||||
|
||||
|
||||
EVENT_TEMPLATE = u'''BEGIN:VCALENDAR
|
||||
BEGIN:VCALENDAR
|
||||
VERSION:2.0
|
||||
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
|
||||
BEGIN:VEVENT
|
||||
DTSTART:19970714T170000Z
|
||||
DTEND:19970715T035959Z
|
||||
SUMMARY:Bastille Day Party
|
||||
X-SOMETHING:{r}
|
||||
UID:{uid}
|
||||
END:VEVENT
|
||||
END:VCALENDAR'''
|
||||
|
||||
|
||||
class CaldavStorageTests(TestCase, DavStorageTests):
|
||||
storage_class = CaldavStorage
|
||||
radicale_path = '/bob/test.ics/'
|
||||
|
||||
item_template = (u'BEGIN:VCALENDAR\n'
|
||||
u'VERSION:2.0\n'
|
||||
u'PRODID:-//dmfs.org//mimedir.icalendar//EN\n'
|
||||
u'BEGIN:VTODO\n'
|
||||
u'CREATED:20130721T142233Z\n'
|
||||
u'DTSTAMP:20130730T074543Z\n'
|
||||
u'LAST-MODIFIED;VALUE=DATE-TIME:20140122T151338Z\n'
|
||||
u'SEQUENCE:2\n'
|
||||
u'SUMMARY:Book: Kowlani - Tödlicher Staub\n'
|
||||
u'UID:{uid}\n'
|
||||
u'X-SOMETHING:{r}\n'
|
||||
u'END:VTODO\n'
|
||||
u'END:VCALENDAR')
|
||||
item_template = TASK_TEMPLATE
|
||||
|
||||
def test_both_vtodo_and_vevent(self):
|
||||
task = self._create_bogus_item(1, item_template=TASK_TEMPLATE)
|
||||
event = self._create_bogus_item(2, item_template=EVENT_TEMPLATE)
|
||||
s = self._get_storage()
|
||||
href_etag_task = s.upload(task)
|
||||
href_etag_event = s.upload(event)
|
||||
assert set(s.list()) == set([
|
||||
href_etag_task,
|
||||
href_etag_event
|
||||
])
|
||||
|
|
|
|||
Loading…
Reference in a new issue