def test_save_guild_not_exists(kudos: ChatKudos) -> None: """Save changes to a guild that does't exist""" kudos.save_guild("999", max=-1, gain_message="TEST") kudos.save_guild("999", loss_message="TEST02") assert kudos.get_guild("999").max == -1 assert kudos.get_guild("999").gain_message == "TEST" assert kudos.get_guild("999").loss_message == "TEST02"
def test_save_guild_exists(kudos: ChatKudos) -> None: """Save explict changes, confirm existing don't change""" kudos.save_guild("111", max=-1, gain_message="TEST") kudos.save_guild("111", loss_message="TEST02") assert kudos.get_guild("111").max == -1 assert kudos.get_guild("111").gain_message == "TEST" assert kudos.get_guild("111").loss_message == "TEST02"
def test_is_command_allowed(kudos: ChatKudos, message: Mock) -> None: """Case checks for accessing commands""" kudos.save_guild("111", lock=True) # Server Owner message.content = "kudos!help" message.author.id = "333" assert kudos.is_command_allowed(message) # On User List message.author.id = "111" kudos.save_guild("111", users=["111"]) assert kudos.is_command_allowed(message) # Not on User List message.author.id = "999" assert not kudos.is_command_allowed(message)
def test_find_kudos(kudos: ChatKudos, message: Mock) -> None: """Return the accurate Kudos count for messages""" message.content = "<#!111> ++-++-++ <!222#> just kidding" message.mentions = [ Mock(id="111", display_name="Tester01"), Mock(id="222", display_name="Tester02"), ] result = kudos.find_kudos(message) assert len(result) == 1 assert result[0].display_name == "Tester01" assert result[0].amount == 4 assert result[0].current == -38 kudos.save_guild("111", max=1) result = kudos.find_kudos(message) assert result[0].amount == 1
def test_is_kudos_allowed(kudos: ChatKudos, message: Mock) -> None: """Case checks for accessing Kudos, only new test is role list""" # On Role List Roles = namedtuple("Roles", ["id"]) message.author.roles = [Roles(112), Roles(113), Roles(114)] message.content = "@Tester1 +++" kudos.save_guild("111", users=[], roles=["114"]) assert kudos.is_kudos_allowed(message) # Not allowed on lock kudos.save_guild("111", roles=[]) assert not kudos.is_kudos_allowed(message) # Unlock and pass kudos.save_guild("111", lock=False) assert kudos.is_kudos_allowed(message)