Code Duplication    Length = 60-61 lines in 2 locations

backend/tracim_backend/tests/functional/test_workspaces.py 2 locations

@@ 746-806 (lines=61) @@
743
        workspace = res.json_body
744
        assert workspace['is_deleted'] is False
745
746
    def test_api__undelete_workspace__ok_200__manager_workspace_manager(self) -> None:
747
        """
748
        Test undelete workspace as global manager and workspace manager
749
        """
750
        self.testapp.authorization = (
751
            'Basic',
752
            (
753
                '[email protected]',
754
                '[email protected]'
755
            )
756
        )
757
        dbsession = get_tm_session(self.session_factory, transaction.manager)
758
        admin = dbsession.query(models.User) \
759
            .filter(models.User.email == '[email protected]') \
760
            .one()
761
        uapi = UserApi(
762
            current_user=admin,
763
            session=dbsession,
764
            config=self.app_config,
765
        )
766
        gapi = GroupApi(
767
            current_user=admin,
768
            session=dbsession,
769
            config=self.app_config,
770
        )
771
        groups = [gapi.get_one_with_name('trusted-users')]
772
        user = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups)  # nopep8
773
        workspace_api = WorkspaceApi(
774
            current_user=admin,
775
            session=dbsession,
776
            config=self.app_config,
777
            show_deleted=True,
778
        )
779
        workspace = workspace_api.create_workspace('test', save_now=True)  # nopep8
780
        workspace_api.delete(workspace, flush=True)
781
        rapi = RoleApi(
782
            current_user=admin,
783
            session=dbsession,
784
            config=self.app_config,
785
        )
786
        rapi.create_one(user, workspace, UserRoleInWorkspace.WORKSPACE_MANAGER, False)  # nopep8
787
        transaction.commit()
788
        workspace_id = int(workspace.workspace_id)
789
        self.testapp.authorization = (
790
            'Basic',
791
            (
792
                '[email protected]',
793
                '[email protected]'
794
            )
795
        )
796
        # delete
797
        res = self.testapp.put(
798
            '/api/v2/workspaces/{}/trashed/restore'.format(workspace_id),
799
            status=204
800
        )
801
        res = self.testapp.get(
802
            '/api/v2/workspaces/{}'.format(workspace_id),
803
            status=200
804
        )
805
        workspace = res.json_body
806
        assert workspace['is_deleted'] is False
807
808
    def test_api__undelete_workspace__err_403__user_workspace_manager(self) -> None:
809
        """
@@ 425-484 (lines=60) @@
422
        workspace = res.json_body
423
        assert workspace['is_deleted'] is True
424
425
    def test_api__delete_workspace__ok_200__manager_workspace_manager(self) -> None:
426
        """
427
        Test delete workspace as global manager and workspace manager
428
        """
429
        self.testapp.authorization = (
430
            'Basic',
431
            (
432
                '[email protected]',
433
                '[email protected]'
434
            )
435
        )
436
        dbsession = get_tm_session(self.session_factory, transaction.manager)
437
        admin = dbsession.query(models.User) \
438
            .filter(models.User.email == '[email protected]') \
439
            .one()
440
        uapi = UserApi(
441
            current_user=admin,
442
            session=dbsession,
443
            config=self.app_config,
444
        )
445
        gapi = GroupApi(
446
            current_user=admin,
447
            session=dbsession,
448
            config=self.app_config,
449
        )
450
        groups = [gapi.get_one_with_name('trusted-users')]
451
        user = uapi.create_user('[email protected]', password='[email protected]', do_save=True, do_notify=False, groups=groups)  # nopep8
452
        workspace_api = WorkspaceApi(
453
            current_user=admin,
454
            session=dbsession,
455
            config=self.app_config,
456
            show_deleted=True,
457
        )
458
        workspace = workspace_api.create_workspace('test', save_now=True)  # nopep8
459
        rapi = RoleApi(
460
            current_user=admin,
461
            session=dbsession,
462
            config=self.app_config,
463
        )
464
        rapi.create_one(user, workspace, UserRoleInWorkspace.WORKSPACE_MANAGER, False)  # nopep8
465
        transaction.commit()
466
        workspace_id = int(workspace.workspace_id)
467
        self.testapp.authorization = (
468
            'Basic',
469
            (
470
                '[email protected]',
471
                '[email protected]'
472
            )
473
        )
474
        # delete
475
        res = self.testapp.put(
476
            '/api/v2/workspaces/{}/trashed'.format(workspace_id),
477
            status=204
478
        )
479
        res = self.testapp.get(
480
            '/api/v2/workspaces/{}'.format(workspace_id),
481
            status=200
482
        )
483
        workspace = res.json_body
484
        assert workspace['is_deleted'] is True
485
486
    def test_api__delete_workspace__err_403__user_workspace_manager(self) -> None:
487
        """