Red-DiscordBot/tests/cogs/dataconverter/test_dataconverter.py
Will afa08713e0 [V3] Make pytest fixtures available as a plugin (#1858)
* Move all fixtures to pytest plugin folder

* Add core dunder all

* Update other dunder all's

* Black reformat
2018-06-23 11:33:06 +10:00

32 lines
1005 B
Python

import pytest
from collections import namedtuple
from redbot.pytest.dataconverter import *
from redbot.core.utils.data_converter import DataConverter
def mock_dpy_object(id_):
return namedtuple("DPYObject", "id")(int(id_))
def mock_dpy_member(guildid, userid):
return namedtuple("Member", "id guild")(int(userid), mock_dpy_object(guildid))
@pytest.mark.asyncio
async def test_mod_nicknames(red):
specresolver = get_specresolver(__file__)
filepath, converter, cogname, attr, _id = specresolver.get_conversion_info("Past Nicknames")
conf = specresolver.get_config_object(red, cogname, attr, _id)
v2data = DataConverter.json_load(filepath)
await specresolver.convert(red, "Past Nicknames", config=conf)
for guildid, guild_data in v2data.items():
guild = mock_dpy_object(guildid)
for userid, user_data in guild_data.items():
member = mock_dpy_member(guildid, userid)
assert await conf.member(member).past_nicks() == user_data