|
@@ -9,6 +9,7 @@ from requests.exceptions import ConnectionError
|
9
|
9
|
from sqlalchemy.orm.exc import NoResultFound
|
10
|
10
|
|
11
|
11
|
from tracim.config.app_cfg import daemons
|
|
12
|
+from tracim.lib.calendar import CalendarManager
|
12
|
13
|
from tracim.lib.workspace import WorkspaceApi
|
13
|
14
|
from tracim.model import DBSession
|
14
|
15
|
from tracim.tests import TestCalendar as BaseTestCalendar
|
|
@@ -23,7 +24,7 @@ class TestCalendar(BaseTestCalendar):
|
23
|
24
|
# ... radicale daemon started. We should lock something somewhere !
|
24
|
25
|
|
25
|
26
|
def test_func__radicale_connectivity__ok__nominal_case(self):
|
26
|
|
- radicale_base_url = self._get_base_url()
|
|
27
|
+ radicale_base_url = CalendarManager.get_base_url()
|
27
|
28
|
|
28
|
29
|
try:
|
29
|
30
|
response = requests.get(radicale_base_url)
|
|
@@ -32,7 +33,7 @@ class TestCalendar(BaseTestCalendar):
|
32
|
33
|
ok_(False, 'Unable to contact radicale on HTTP')
|
33
|
34
|
|
34
|
35
|
def test_func__radicale_auth__ok__as_lawrence(self):
|
35
|
|
- radicale_base_url = self._get_base_url()
|
|
36
|
+ radicale_base_url = CalendarManager.get_base_url()
|
36
|
37
|
client = caldav.DAVClient(
|
37
|
38
|
radicale_base_url,
|
38
|
39
|
username='lawrence-not-real-email@fsf.local',
|
|
@@ -45,7 +46,7 @@ class TestCalendar(BaseTestCalendar):
|
45
|
46
|
ok_(False, 'AuthorizationError when communicate with radicale')
|
46
|
47
|
|
47
|
48
|
def test_func__radicale_auth__fail__as_john_doe(self):
|
48
|
|
- radicale_base_url = self._get_base_url()
|
|
49
|
+ radicale_base_url = CalendarManager.get_base_url()
|
49
|
50
|
client = caldav.DAVClient(
|
50
|
51
|
radicale_base_url,
|
51
|
52
|
username='john.doe@foo.local',
|
|
@@ -59,7 +60,7 @@ class TestCalendar(BaseTestCalendar):
|
59
|
60
|
ok_(True, 'AuthorizationError thrown correctly')
|
60
|
61
|
|
61
|
62
|
def test_func__rights_read_user_calendar__ok__as_lawrence(self):
|
62
|
|
- radicale_base_url = self._get_base_url()
|
|
63
|
+ radicale_base_url = CalendarManager.get_base_url()
|
63
|
64
|
client = caldav.DAVClient(
|
64
|
65
|
radicale_base_url,
|
65
|
66
|
username='lawrence-not-real-email@fsf.local',
|
|
@@ -68,7 +69,7 @@ class TestCalendar(BaseTestCalendar):
|
68
|
69
|
user = DBSession.query(User).filter(
|
69
|
70
|
User.email == 'lawrence-not-real-email@fsf.local'
|
70
|
71
|
).one()
|
71
|
|
- user_calendar_url = self._get_user_calendar_url(user.user_id)
|
|
72
|
+ user_calendar_url = CalendarManager.get_user_calendar_url(user.user_id)
|
72
|
73
|
try:
|
73
|
74
|
caldav.Calendar(
|
74
|
75
|
parent=client,
|
|
@@ -81,7 +82,7 @@ class TestCalendar(BaseTestCalendar):
|
81
|
82
|
ok_(False, 'User should not access that')
|
82
|
83
|
|
83
|
84
|
def test_func__rights_read_user_calendar__fail__as_john_doe(self):
|
84
|
|
- radicale_base_url = self._get_base_url()
|
|
85
|
+ radicale_base_url = CalendarManager.get_base_url()
|
85
|
86
|
client = caldav.DAVClient(
|
86
|
87
|
radicale_base_url,
|
87
|
88
|
username='john.doe@foo.local',
|
|
@@ -90,7 +91,7 @@ class TestCalendar(BaseTestCalendar):
|
90
|
91
|
other_user = DBSession.query(User).filter(
|
91
|
92
|
User.email == 'admin@admin.admin'
|
92
|
93
|
).one()
|
93
|
|
- user_calendar_url = self._get_user_calendar_url(other_user.user_id)
|
|
94
|
+ user_calendar_url = CalendarManager.get_user_calendar_url(other_user.user_id)
|
94
|
95
|
try:
|
95
|
96
|
caldav.Calendar(
|
96
|
97
|
parent=client,
|
|
@@ -113,13 +114,13 @@ class TestCalendar(BaseTestCalendar):
|
113
|
114
|
workspace.calendar_enabled = True
|
114
|
115
|
DBSession.flush()
|
115
|
116
|
|
116
|
|
- workspace_calendar_url = self._get_workspace_calendar_url(
|
|
117
|
+ workspace_calendar_url = CalendarManager.get_workspace_calendar_url(
|
117
|
118
|
workspace.workspace_id
|
118
|
119
|
)
|
119
|
120
|
|
120
|
121
|
transaction.commit()
|
121
|
122
|
|
122
|
|
- radicale_base_url = self._get_base_url()
|
|
123
|
+ radicale_base_url = CalendarManager.get_base_url()
|
123
|
124
|
client = caldav.DAVClient(
|
124
|
125
|
radicale_base_url,
|
125
|
126
|
username='lawrence-not-real-email@fsf.local',
|
|
@@ -147,13 +148,13 @@ class TestCalendar(BaseTestCalendar):
|
147
|
148
|
workspace.calendar_enabled = True
|
148
|
149
|
DBSession.flush()
|
149
|
150
|
|
150
|
|
- workspace_calendar_url = self._get_workspace_calendar_url(
|
|
151
|
+ workspace_calendar_url = CalendarManager.get_workspace_calendar_url(
|
151
|
152
|
workspace.workspace_id
|
152
|
153
|
)
|
153
|
154
|
|
154
|
155
|
transaction.commit()
|
155
|
156
|
|
156
|
|
- radicale_base_url = self._get_base_url()
|
|
157
|
+ radicale_base_url = CalendarManager.get_base_url()
|
157
|
158
|
client = caldav.DAVClient(
|
158
|
159
|
radicale_base_url,
|
159
|
160
|
username='bob@fsf.local',
|
|
@@ -174,13 +175,15 @@ class TestCalendar(BaseTestCalendar):
|
174
|
175
|
lawrence = DBSession.query(User).filter(
|
175
|
176
|
User.email == 'lawrence-not-real-email@fsf.local'
|
176
|
177
|
).one()
|
177
|
|
- radicale_base_url = self._get_base_url()
|
|
178
|
+ radicale_base_url = CalendarManager.get_base_url()
|
178
|
179
|
client = caldav.DAVClient(
|
179
|
180
|
radicale_base_url,
|
180
|
181
|
username='lawrence-not-real-email@fsf.local',
|
181
|
182
|
password='foobarbaz'
|
182
|
183
|
)
|
183
|
|
- user_calendar_url = self._get_user_calendar_url(lawrence.user_id)
|
|
184
|
+ user_calendar_url = CalendarManager.get_user_calendar_url(
|
|
185
|
+ lawrence.user_id
|
|
186
|
+ )
|
184
|
187
|
user_calendar = caldav.Calendar(
|
185
|
188
|
parent=client,
|
186
|
189
|
client=client,
|