diff --git a/gitlab/v4/objects/members.py b/gitlab/v4/objects/members.py index 8fa2bb318..c7be039ab 100644 --- a/gitlab/v4/objects/members.py +++ b/gitlab/v4/objects/members.py @@ -17,9 +17,11 @@ "GroupBillableMemberMembership", "GroupBillableMemberMembershipManager", "GroupMember", + "GroupMemberAll", "GroupMemberManager", "GroupMemberAllManager", "ProjectMember", + "ProjectMemberAll", "ProjectMemberManager", "ProjectMemberAllManager", ] @@ -70,15 +72,19 @@ class GroupBillableMemberMembershipManager(ListMixin, RESTManager): _from_parent_attrs = {"group_id": "group_id", "user_id": "id"} +class GroupMemberAll(RESTObject): + _short_print_attr = "username" + + class GroupMemberAllManager(RetrieveMixin, RESTManager): _path = "/groups/{group_id}/members/all" - _obj_cls = GroupMember + _obj_cls = GroupMemberAll _from_parent_attrs = {"group_id": "id"} def get( self, id: Union[str, int], lazy: bool = False, **kwargs: Any - ) -> GroupMember: - return cast(GroupMember, super().get(id=id, lazy=lazy, **kwargs)) + ) -> GroupMemberAll: + return cast(GroupMemberAll, super().get(id=id, lazy=lazy, **kwargs)) class ProjectMember(SaveMixin, ObjectDeleteMixin, RESTObject): @@ -103,12 +109,16 @@ def get( return cast(ProjectMember, super().get(id=id, lazy=lazy, **kwargs)) +class ProjectMemberAll(RESTObject): + _short_print_attr = "username" + + class ProjectMemberAllManager(RetrieveMixin, RESTManager): _path = "/projects/{project_id}/members/all" - _obj_cls = ProjectMember + _obj_cls = ProjectMemberAll _from_parent_attrs = {"project_id": "id"} def get( self, id: Union[str, int], lazy: bool = False, **kwargs: Any - ) -> ProjectMember: - return cast(ProjectMember, super().get(id=id, lazy=lazy, **kwargs)) + ) -> ProjectMemberAll: + return cast(ProjectMemberAll, super().get(id=id, lazy=lazy, **kwargs)) diff --git a/tests/functional/cli/test_cli_v4.py b/tests/functional/cli/test_cli_v4.py index 91c0afa6f..da649577b 100644 --- a/tests/functional/cli/test_cli_v4.py +++ b/tests/functional/cli/test_cli_v4.py @@ -701,6 +701,31 @@ def test_delete_group_deploy_token(gitlab_cli, group_deploy_token): # TODO assert not in list +def test_project_member_all(gitlab_cli, project): + cmd = [ + "project-member-all", + "list", + "--project-id", + project.id, + ] + ret = gitlab_cli(cmd) + + assert ret.success + + +def test_group_member_all(gitlab_cli, group): + cmd = [ + "group-member-all", + "list", + "--group-id", + group.id, + ] + ret = gitlab_cli(cmd) + + assert ret.success + + +# Deleting the project and group. Add your tests above here. def test_delete_project(gitlab_cli, project): cmd = ["project", "delete", "--id", project.id] ret = gitlab_cli(cmd) @@ -713,3 +738,6 @@ def test_delete_group(gitlab_cli, group): ret = gitlab_cli(cmd) assert ret.success + + +# Don't add tests below here as the group and project have been deleted pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy