CraftSpider / dpytest

A package that assists in writing tests for discord.py
MIT License
103 stars 24 forks source link

Testing Role Assignment Overwrites Instead of Concatenates #55

Open starempire opened 3 years ago

starempire commented 3 years ago

Is your feature request related to a problem? Please describe.

Calling member.add_roles(role) while using an iterable (ex: member.add_roles(*[role1, role2])) replaces the member's role property with the last role called. Calling the above for example leaves the member with the @everyone role and role2.

Describe the solution you'd like

Calling member.add_roles only appends new roles to an existing role list. In the above example, role 1 and 2 both exist on user. Calling member.add_roles(*[role3, role4]) next should result in a member having roles 1, 2, 3, 4, and the default @everyone role. In current implementation, the member ends up with only role4 in this example, plus @everyone.

Describe alternatives you've considered

n/a

Additional context

n/a