|
@@ 316-334 (lines=19) @@
|
| 313 |
|
|
| 314 |
|
|
| 315 |
|
class InvitationGroupMemberCreationTests(APITestCase): |
| 316 |
|
@classmethod |
| 317 |
|
def setUpTestData(self): |
| 318 |
|
super(APITestCase, self).setUpTestData() |
| 319 |
|
|
| 320 |
|
# Routes |
| 321 |
|
self.members_url = "/group-member/" |
| 322 |
|
|
| 323 |
|
# Group with invitation only |
| 324 |
|
self.group = GroupFactory(req_rank_invite=5, default_member_rank=-1, is_private=True) |
| 325 |
|
|
| 326 |
|
# Testing user |
| 327 |
|
self.users = UserFactory.create_batch(2) |
| 328 |
|
self.memberships = [ |
| 329 |
|
None, |
| 330 |
|
GroupMemberFactory(user=self.users[1], group=self.group, perm_rank=self.group.req_rank_invite) |
| 331 |
|
] |
| 332 |
|
|
| 333 |
|
# Misc |
| 334 |
|
self.new_membership_data = {"group_id": self.group.id, "user_id": self.users[0].id} |
| 335 |
|
|
| 336 |
|
def test_create_not_authed(self): |
| 337 |
|
self.client.force_authenticate(user=None) |
|
@@ 359-375 (lines=17) @@
|
| 356 |
|
|
| 357 |
|
|
| 358 |
|
class InvitationGroupMemberInvitationWorkflowTests(APITestCase): |
| 359 |
|
@classmethod |
| 360 |
|
def setUpTestData(self): |
| 361 |
|
super(APITestCase, self).setUpTestData() |
| 362 |
|
|
| 363 |
|
# Routes |
| 364 |
|
self.members_url = "/group-member/" |
| 365 |
|
self.group_invite_url = "/group/%d/invite/"; |
| 366 |
|
self.group_invite_accept_url = "/group/%d/invite_accept/"; |
| 367 |
|
|
| 368 |
|
# Group with invitation only |
| 369 |
|
self.group = GroupFactory(req_rank_invite=5, default_member_rank=-1) |
| 370 |
|
|
| 371 |
|
# Testing user |
| 372 |
|
self.users = UserFactory.create_batch(2) |
| 373 |
|
self.memberships = [ |
| 374 |
|
None, |
| 375 |
|
GroupMemberFactory(user=self.users[1], group=self.group, perm_rank=self.group.req_rank_invite) |
| 376 |
|
] |
| 377 |
|
|
| 378 |
|
def test_invite_not_authed(self): |