|
@@ -347,35 +347,82 @@ class TestContentApi(BaseTest, TestStandard):
|
347
|
347
|
eq_(ActionDescription.COMMENT, c.revision_type)
|
348
|
348
|
|
349
|
349
|
|
350
|
|
- def test_mark_as_read(self):
|
|
350
|
+ def test_mark_read(self):
|
351
|
351
|
uapi = UserApi(None)
|
352
|
352
|
groups = [GroupApi(None).get_one(Group.TIM_USER),
|
353
|
353
|
GroupApi(None).get_one(Group.TIM_MANAGER),
|
354
|
354
|
GroupApi(None).get_one(Group.TIM_ADMIN)]
|
355
|
|
-
|
356
|
355
|
userA = uapi.create_user(email='this.is@user',
|
357
|
|
- groups=groups, save_now=True)
|
|
356
|
+ groups=groups, save_now=True)
|
|
357
|
+ userB = uapi.create_user(email='this.is@another.user',
|
|
358
|
+ groups=groups, save_now=True)
|
|
359
|
+
|
|
360
|
+ wapi = WorkspaceApi(userA)
|
|
361
|
+ workspace = wapi.create_workspace(
|
|
362
|
+ 'test workspace',
|
|
363
|
+ save_now=True)
|
|
364
|
+
|
|
365
|
+ role_api = RoleApi(userA)
|
|
366
|
+ role_api.create_one(userB, workspace, UserRoleInWorkspace.READER, False)
|
|
367
|
+ contapiA = ContentApi(userA)
|
|
368
|
+ contapiB = ContentApi(userB)
|
|
369
|
+
|
|
370
|
+ page1 = contapiA.create(ContentType.Page, workspace, None, "this is a page", do_save=True)
|
|
371
|
+
|
|
372
|
+ for rev in page1.revisions:
|
|
373
|
+ eq_(userB not in rev.read_by.keys(), True)
|
|
374
|
+
|
|
375
|
+ contapiB.mark_read(page1)
|
|
376
|
+
|
|
377
|
+ for rev in page1.revisions:
|
|
378
|
+ eq_(userB in rev.read_by.keys(), True)
|
358
|
379
|
|
359
|
|
- userB = uapi.create_user(email='this.is@nother_user',
|
|
380
|
+
|
|
381
|
+ def test_mark_read__all(self):
|
|
382
|
+ uapi = UserApi(None)
|
|
383
|
+ groups = [GroupApi(None).get_one(Group.TIM_USER),
|
|
384
|
+ GroupApi(None).get_one(Group.TIM_MANAGER),
|
|
385
|
+ GroupApi(None).get_one(Group.TIM_ADMIN)]
|
|
386
|
+ userA = uapi.create_user(email='this.is@user',
|
|
387
|
+ groups=groups, save_now=True)
|
|
388
|
+ userB = uapi.create_user(email='this.is@another.user',
|
360
|
389
|
groups=groups, save_now=True)
|
361
|
390
|
|
362
|
|
- workspace = WorkspaceApi(userA, userB).create_workspace('test workspace',
|
363
|
|
- save_now=True)
|
|
391
|
+ wapi = WorkspaceApi(userA)
|
|
392
|
+ workspace = wapi.create_workspace(
|
|
393
|
+ 'test workspace',
|
|
394
|
+ save_now=True)
|
|
395
|
+
|
|
396
|
+ role_api = RoleApi(userA)
|
|
397
|
+ role_api.create_one(userB, workspace, UserRoleInWorkspace.READER, False)
|
364
|
398
|
contapiA = ContentApi(userA)
|
365
|
399
|
contapiB = ContentApi(userB)
|
366
|
400
|
|
367
|
|
- page1 = contapiA.create(ContentType.page, workspace, "this is a page")
|
368
|
|
- page2 = contapiA.create(ContentType.page, workspace, "this is another page")
|
|
401
|
+ page2 = contapiA.create(ContentType.Page, workspace, None, "this is page1", do_save=True)
|
|
402
|
+ page3 = contapiA.create(ContentType.Thread, workspace, None, "this is page2", do_save=True)
|
|
403
|
+ page4 = contapiA.create(ContentType.File, workspace, None, "this is page3", do_save=True)
|
|
404
|
+
|
|
405
|
+ for rev in page2.revisions:
|
|
406
|
+ eq_(userB not in rev.read_by.keys(), True)
|
|
407
|
+ for rev in page3.revisions:
|
|
408
|
+ eq_(userB not in rev.read_by.keys(), True)
|
|
409
|
+ for rev in page4.revisions:
|
|
410
|
+ eq_(userB not in rev.read_by.keys(), True)
|
|
411
|
+
|
|
412
|
+ DBSession.refresh(page2)
|
|
413
|
+ DBSession.refresh(page3)
|
|
414
|
+ DBSession.refresh(page4)
|
|
415
|
+
|
|
416
|
+ contapiB.mark_read__all()
|
369
|
417
|
|
370
|
|
- eq_(page1.revisions[-1].read_by[userB], False)
|
371
|
|
- eq_(page2.revisions[-1].read_by[userB], False)
|
|
418
|
+ for rev in page2.revisions:
|
|
419
|
+ eq_(userB in rev.read_by.keys(), True)
|
|
420
|
+ for rev in page3.revisions:
|
|
421
|
+ eq_(userB in rev.read_by.keys(), True)
|
|
422
|
+ for rev in page4.revisions:
|
|
423
|
+ eq_(userB in rev.read_by.keys(), True)
|
372
|
424
|
|
373
|
|
- itemset = contapiB.get_last_unread(None, ContentType.Any, None)
|
374
|
|
- for item in itemset:
|
375
|
|
- contapiB.mark_read(item)
|
376
|
425
|
|
377
|
|
- eq_(page1.revisions[-1].read_by[userB], True)
|
378
|
|
- eq_(page2.revisions[-1].read_by[userB], True)
|
379
|
426
|
|
380
|
427
|
|
381
|
428
|
|