diff options
| author | 2019-08-23 15:00:17 +0200 | |
|---|---|---|
| committer | 2019-08-23 15:00:17 +0200 | |
| commit | c5a691260e30266049f9a42c7f44e132d724bba3 (patch) | |
| tree | d3b681a62f5497c929efad1026df378c64b55f02 /tests/cogs | |
| parent | Merge pull request #395 from kosayoda/no_fun_allowed (diff) | |
| parent | Changing logging interpolation style to f-strings (diff) | |
Merge pull request #397 from python-discord/django-role-api-changes
Django role api changes
Diffstat (limited to 'tests/cogs')
| -rw-r--r-- | tests/cogs/sync/test_roles.py | 81 | 
1 files changed, 60 insertions, 21 deletions
| diff --git a/tests/cogs/sync/test_roles.py b/tests/cogs/sync/test_roles.py index 18682f39f..c561ba447 100644 --- a/tests/cogs/sync/test_roles.py +++ b/tests/cogs/sync/test_roles.py @@ -2,63 +2,102 @@ from bot.cogs.sync.syncers import Role, get_roles_for_sync  def test_get_roles_for_sync_empty_return_for_equal_roles(): -    api_roles = {Role(id=41, name='name', colour=33, permissions=0x8)} -    guild_roles = {Role(id=41, name='name', colour=33, permissions=0x8)} +    api_roles = {Role(id=41, name='name', colour=33, permissions=0x8, position=1)} +    guild_roles = {Role(id=41, name='name', colour=33, permissions=0x8, position=1)} -    assert get_roles_for_sync(guild_roles, api_roles) == (set(), set()) +    assert get_roles_for_sync(guild_roles, api_roles) == (set(), set(), set())  def test_get_roles_for_sync_returns_roles_to_update_with_non_id_diff(): -    api_roles = {Role(id=41, name='old name', colour=35, permissions=0x8)} -    guild_roles = {Role(id=41, name='new name', colour=33, permissions=0x8)} +    api_roles = {Role(id=41, name='old name', colour=35, permissions=0x8, position=1)} +    guild_roles = {Role(id=41, name='new name', colour=33, permissions=0x8, position=2)}      assert get_roles_for_sync(guild_roles, api_roles) == (          set(), -        guild_roles +        guild_roles, +        set(),      )  def test_get_roles_only_returns_roles_that_require_update():      api_roles = { -        Role(id=41, name='old name', colour=33, permissions=0x8), -        Role(id=53, name='other role', colour=55, permissions=0) +        Role(id=41, name='old name', colour=33, permissions=0x8, position=1), +        Role(id=53, name='other role', colour=55, permissions=0, position=3)      }      guild_roles = { -        Role(id=41, name='new name', colour=35, permissions=0x8), -        Role(id=53, name='other role', colour=55, permissions=0) +        Role(id=41, name='new name', colour=35, permissions=0x8, position=2), +        Role(id=53, name='other role', colour=55, permissions=0, position=3)      }      assert get_roles_for_sync(guild_roles, api_roles) == (          set(), -        {Role(id=41, name='new name', colour=35, permissions=0x8)}, +        {Role(id=41, name='new name', colour=35, permissions=0x8, position=2)}, +        set(),      )  def test_get_roles_returns_new_roles_in_first_tuple_element():      api_roles = { -        Role(id=41, name='name', colour=35, permissions=0x8), +        Role(id=41, name='name', colour=35, permissions=0x8, position=1),      }      guild_roles = { -        Role(id=41, name='name', colour=35, permissions=0x8), -        Role(id=53, name='other role', colour=55, permissions=0) +        Role(id=41, name='name', colour=35, permissions=0x8, position=1), +        Role(id=53, name='other role', colour=55, permissions=0, position=2)      }      assert get_roles_for_sync(guild_roles, api_roles) == ( -        {Role(id=53, name='other role', colour=55, permissions=0)}, -        set() +        {Role(id=53, name='other role', colour=55, permissions=0, position=2)}, +        set(), +        set(),      )  def test_get_roles_returns_roles_to_update_and_new_roles():      api_roles = { -        Role(id=41, name='old name', colour=35, permissions=0x8), +        Role(id=41, name='old name', colour=35, permissions=0x8, position=1), +    } +    guild_roles = { +        Role(id=41, name='new name', colour=40, permissions=0x16, position=2), +        Role(id=53, name='other role', colour=55, permissions=0, position=3) +    } + +    assert get_roles_for_sync(guild_roles, api_roles) == ( +        {Role(id=53, name='other role', colour=55, permissions=0, position=3)}, +        {Role(id=41, name='new name', colour=40, permissions=0x16, position=2)}, +        set(), +    ) + + +def test_get_roles_returns_roles_to_delete(): +    api_roles = { +        Role(id=41, name='name', colour=35, permissions=0x8, position=1), +        Role(id=61, name='to delete', colour=99, permissions=0x9, position=2), +    } +    guild_roles = { +        Role(id=41, name='name', colour=35, permissions=0x8, position=1), +    } + +    assert get_roles_for_sync(guild_roles, api_roles) == ( +        set(), +        set(), +        {Role(id=61, name='to delete', colour=99, permissions=0x9, position=2)}, +    ) + + +def test_get_roles_returns_roles_to_delete_update_and_new_roles(): +    api_roles = { +        Role(id=41, name='not changed', colour=35, permissions=0x8, position=1), +        Role(id=61, name='to delete', colour=99, permissions=0x9, position=2), +        Role(id=71, name='to update', colour=99, permissions=0x9, position=3),      }      guild_roles = { -        Role(id=41, name='new name', colour=40, permissions=0x16), -        Role(id=53, name='other role', colour=55, permissions=0) +        Role(id=41, name='not changed', colour=35, permissions=0x8, position=1), +        Role(id=81, name='to create', colour=99, permissions=0x9, position=4), +        Role(id=71, name='updated', colour=101, permissions=0x5, position=3),      }      assert get_roles_for_sync(guild_roles, api_roles) == ( -        {Role(id=53, name='other role', colour=55, permissions=0)}, -        {Role(id=41, name='new name', colour=40, permissions=0x16)} +        {Role(id=81, name='to create', colour=99, permissions=0x9, position=4)}, +        {Role(id=71, name='updated', colour=101, permissions=0x5, position=3)}, +        {Role(id=61, name='to delete', colour=99, permissions=0x9, position=2)},      ) | 
