コード例 #1
0
ファイル: test_user_api.py プロジェクト: tracim/tracim
 def test_unit__get_known__user__admin__too_short_acp_str(self):
     api = UserApi(
         current_user=None,
         session=self.session,
         config=self.app_config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     with pytest.raises(TooShortAutocompleteString):
         api.get_known_user('e')
コード例 #2
0
 def test_unit__get_known__user__admin__too_short_acp_str(self):
     api = UserApi(
         current_user=None,
         session=self.session,
         config=self.app_config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     with pytest.raises(TooShortAutocompleteString):
         api.get_known_user('e')
コード例 #3
0
ファイル: test_user_api.py プロジェクト: tracim/tracim
 def test_unit__get_known__user__distinct_workspaces_users_by_name__exclude_workspace(self):
     admin = self.session.query(User) \
         .filter(User.email == '*****@*****.**') \
         .one()
     api = UserApi(
         current_user=None,
         session=self.session,
         config=self.app_config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     u2 = api.create_user(
         email='email2@email2',
         name='name2',
         do_notify=False,
         do_save=True,
     )
     u3 = api.create_user(
         email='notfound@notfound',
         name='notfound',
         do_notify=False,
         do_save=True,
     )
     wapi = WorkspaceApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     workspace = wapi.create_workspace(
         'test workspace n°1',
         save_now=True)
     wapi = WorkspaceApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     workspace_2 = wapi.create_workspace(
         'test workspace n°2',
         save_now=True)
     role_api = RoleApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace_2, UserRoleInWorkspace.READER, False)
     api2 = UserApi(
         current_user=u3,
         session=self.session,
         config=self.app_config,
     )
     users = api2.get_known_user('name', exclude_workspace_ids=[workspace.workspace_id])
     assert len(users) == 1
     assert users[0] == u2
コード例 #4
0
ファイル: test_user_api.py プロジェクト: lezardrouge/tracim
 def test_unit__get_known__user__user__no_workspace_empty_known_user(self):
     admin = self.session.query(User).filter(User.email == "*****@*****.**").one()
     api = UserApi(current_user=admin, session=self.session, config=self.app_config)
     u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     api2 = UserApi(current_user=u1, session=self.session, config=self.app_config)
     users = api2.get_known_user("email")
     assert len(users) == 0
コード例 #5
0
ファイル: test_user_api.py プロジェクト: lezardrouge/tracim
    def test_unit__get_known__user__admin__by_name(self):
        api = UserApi(current_user=None, session=self.session, config=self.app_config)
        u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)

        users = api.get_known_user("nam")
        assert len(users) == 1
        assert users[0] == u1
コード例 #6
0
ファイル: test_user_api.py プロジェクト: lezardrouge/tracim
 def test_unit__get_known__user__distinct_workspaces_users_by_name__exclude_workspace_and_name(
     self
 ):
     admin = self.session.query(User).filter(User.email == "*****@*****.**").one()
     api = UserApi(current_user=None, session=self.session, config=self.app_config)
     u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     u2 = api.create_user(email="email2@email2", name="name2", do_notify=False, do_save=True)
     u3 = api.create_user(
         email="notfound@notfound", name="notfound", do_notify=False, do_save=True
     )
     u4 = api.create_user(email="email3@email3", name="name3", do_notify=False, do_save=True)
     wapi = WorkspaceApi(current_user=admin, session=self.session, config=self.app_config)
     workspace = wapi.create_workspace("test workspace n°1", save_now=True)
     wapi = WorkspaceApi(current_user=admin, session=self.session, config=self.app_config)
     workspace_2 = wapi.create_workspace("test workspace n°2", save_now=True)
     role_api = RoleApi(current_user=admin, session=self.session, config=self.app_config)
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u4, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace_2, UserRoleInWorkspace.READER, False)
     api2 = UserApi(current_user=u3, session=self.session, config=self.app_config)
     users = api2.get_known_user(
         "name", exclude_workspace_ids=[workspace.workspace_id], exclude_user_ids=[u4.user_id]
     )
     assert len(users) == 1
     assert users[0] == u2
コード例 #7
0
 def test_unit__get_known__user__distinct_workspaces_users_by_name__exclude_workspace_and_name(
     self, session, app_config, workspace_api_factory, role_api_factory, admin_user
 ):
     api = UserApi(current_user=admin_user, session=session, config=app_config)
     u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     u2 = api.create_user(email="email2@email2", name="name2", do_notify=False, do_save=True)
     u3 = api.create_user(
         email="notfound@notfound", name="notfound", do_notify=False, do_save=True
     )
     u4 = api.create_user(email="email3@email3", name="name3", do_notify=False, do_save=True)
     wapi = workspace_api_factory.get()
     workspace = wapi.create_workspace("test workspace n°1", save_now=True)
     wapi = workspace_api_factory.get()
     workspace_2 = wapi.create_workspace("test workspace n°2", save_now=True)
     role_api = role_api_factory.get()
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u4, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace_2, UserRoleInWorkspace.READER, False)
     api2 = UserApi(current_user=u3, session=session, config=app_config)
     users = api2.get_known_user(
         "name", exclude_workspace_ids=[workspace.workspace_id], exclude_user_ids=[u4.user_id]
     )
     assert len(users) == 1
     assert users[0] == u2
コード例 #8
0
ファイル: test_user_api.py プロジェクト: tracim/tracim_v2
 def test_unit__get_known__user__distinct_workspaces_users_by_name__exclude_workspace(self):
     admin = self.session.query(models.User) \
         .filter(models.User.email == '*****@*****.**') \
         .one()
     api = UserApi(
         current_user=None,
         session=self.session,
         config=self.config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     u2 = api.create_user(
         email='email2@email2',
         name='name2',
         do_notify=False,
         do_save=True,
     )
     u3 = api.create_user(
         email='notfound@notfound',
         name='notfound',
         do_notify=False,
         do_save=True,
     )
     wapi = WorkspaceApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     workspace = wapi.create_workspace(
         'test workspace n°1',
         save_now=True)
     wapi = WorkspaceApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     workspace_2 = wapi.create_workspace(
         'test workspace n°2',
         save_now=True)
     role_api = RoleApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace_2, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace_2, UserRoleInWorkspace.READER, False)
     api2 = UserApi(
         current_user=u3,
         session=self.session,
         config=self.config,
     )
     users = api2.get_known_user('name', exclude_workspace_ids=[workspace.workspace_id])
     assert len(users) == 1
     assert users[0] == u2
コード例 #9
0
    def test_unit__get_known__user__user__no_workspace_empty_known_user(
        self, session, app_config, admin_user
    ):

        api = UserApi(current_user=admin_user, session=session, config=app_config)
        u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
        api2 = UserApi(current_user=u1, session=session, config=app_config)
        users = api2.get_known_user("email")
        assert len(users) == 0
コード例 #10
0
    def test_unit__get_known__user__admin__by_email(self):
        api = UserApi(
            current_user=None,
            session=self.session,
            config=self.app_config,
        )
        u1 = api.create_user(
            email='email@email',
            name='name',
            do_notify=False,
            do_save=True,
        )

        users = api.get_known_user('email')
        assert len(users) == 1
        assert users[0] == u1
コード例 #11
0
ファイル: test_user_api.py プロジェクト: tracim/tracim
    def test_unit__get_known__user__admin__by_name(self):
        api = UserApi(
            current_user=None,
            session=self.session,
            config=self.app_config,
        )
        u1 = api.create_user(
            email='email@email',
            name='name',
            do_notify=False,
            do_save=True,
        )

        users = api.get_known_user('nam')
        assert len(users) == 1
        assert users[0] == u1
コード例 #12
0
ファイル: user_controller.py プロジェクト: tracim/tracim_v2
 def known_members(self, context, request: TracimRequest, hapic_data=None):
     """
     Get known users list
     """
     app_config = request.registry.settings['CFG']
     uapi = UserApi(
         current_user=request.candidate_user,  # User
         session=request.dbsession,
         config=app_config,
         show_deactivated=False,
     )
     users = uapi.get_known_user(
         acp=hapic_data.query.acp,
         exclude_user_ids=hapic_data.query.exclude_user_ids,
         exclude_workspace_ids=hapic_data.query.exclude_workspace_ids,
     )
     context_users = [uapi.get_user_with_context(user) for user in users]
     return context_users
コード例 #13
0
ファイル: test_user_api.py プロジェクト: lezardrouge/tracim
 def test_unit__get_known__user__same_workspaces_users_by_email(self):
     admin = self.session.query(User).filter(User.email == "*****@*****.**").one()
     api = UserApi(current_user=None, session=self.session, config=self.app_config)
     u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     u2 = api.create_user(email="email2@email2", name="name2", do_notify=False, do_save=True)
     u3 = api.create_user(
         email="notfound@notfound", name="notfound", do_notify=False, do_save=True
     )
     wapi = WorkspaceApi(current_user=admin, session=self.session, config=self.app_config)
     workspace = wapi.create_workspace("test workspace n°1", save_now=True)
     role_api = RoleApi(current_user=admin, session=self.session, config=self.app_config)
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     api2 = UserApi(current_user=u1, session=self.session, config=self.app_config)
     users = api2.get_known_user("email")
     assert len(users) == 2
     assert users[0] == u1
     assert users[1] == u2
コード例 #14
0
 def test_unit__get_known__user__same_workspaces_users_by_email(
     self, session, app_config, workspace_api_factory, role_api_factory, admin_user
 ):
     api = UserApi(current_user=admin_user, session=session, config=app_config)
     u1 = api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     u2 = api.create_user(email="email2@email2", name="name2", do_notify=False, do_save=True)
     u3 = api.create_user(
         email="notfound@notfound", name="notfound", do_notify=False, do_save=True
     )
     wapi = workspace_api_factory.get()
     workspace = wapi.create_workspace("test workspace n°1", save_now=True)
     role_api = role_api_factory.get()
     role_api.create_one(u1, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u2, workspace, UserRoleInWorkspace.READER, False)
     role_api.create_one(u3, workspace, UserRoleInWorkspace.READER, False)
     api2 = UserApi(current_user=u1, session=session, config=app_config)
     users = api2.get_known_user("email")
     assert len(users) == 2
     assert users[0] == u1
     assert users[1] == u2
コード例 #15
0
ファイル: account_controller.py プロジェクト: tracim/tracim
 def account_known_members(self, context, request: TracimRequest, hapic_data=None):
     """
     Get known users list
     """
     app_config = request.registry.settings['CFG']
     uapi = UserApi(
         current_user=request.current_user,  # User
         session=request.dbsession,
         config=app_config,
         show_deactivated=False,
     )
     users = uapi.get_known_user(
         acp=hapic_data.query.acp,
         exclude_user_ids=hapic_data.query.exclude_user_ids,
         exclude_workspace_ids=hapic_data.query.exclude_workspace_ids,
     )
     context_users = [
         uapi.get_user_with_context(user) for user in users
     ]
     return context_users
コード例 #16
0
 def account_known_members(self,
                           context,
                           request: TracimRequest,
                           hapic_data=None):
     """
     Get known users list
     """
     app_config = request.registry.settings["CFG"]  # type: CFG
     uapi = UserApi(
         current_user=request.current_user,  # User
         session=request.dbsession,
         config=app_config,
         show_deactivated=False,
     )
     users = uapi.get_known_user(
         acp=hapic_data.query.acp,
         exclude_user_ids=hapic_data.query.exclude_user_ids,
         exclude_workspace_ids=hapic_data.query.exclude_workspace_ids,
         filter_results=app_config.KNOWN_MEMBERS__FILTER,
     )
     context_users = [uapi.get_user_with_context(user) for user in users]
     return context_users
コード例 #17
0
 def test_unit__get_known__user__user__no_workspace_empty_known_user(self):
     admin = self.session.query(User) \
         .filter(User.email == '*****@*****.**') \
         .one()
     api = UserApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     api2 = UserApi(
         current_user=u1,
         session=self.session,
         config=self.app_config,
     )
     users = api2.get_known_user('email')
     assert len(users) == 0
コード例 #18
0
ファイル: test_user_api.py プロジェクト: tracim/tracim
 def test_unit__get_known__user__user__no_workspace_empty_known_user(self):
     admin = self.session.query(User) \
         .filter(User.email == '*****@*****.**') \
         .one()
     api = UserApi(
         current_user=admin,
         session=self.session,
         config=self.app_config,
     )
     u1 = api.create_user(
         email='email@email',
         name='name',
         do_notify=False,
         do_save=True,
     )
     api2 = UserApi(
         current_user=u1,
         session=self.session,
         config=self.app_config,
     )
     users = api2.get_known_user('email')
     assert len(users) == 0
コード例 #19
0
 def test_unit__get_known__user__admin__too_short_acp_str(self, session, app_config):
     api = UserApi(current_user=None, session=session, config=app_config)
     api.create_user(email="email@email", name="name", do_notify=False, do_save=True)
     with pytest.raises(TooShortAutocompleteString):
         api.get_known_user("e")