Move the cog test out into py so it can access state
This commit is contained in:
parent
c04c6d672d
commit
d014b1a7fd
1 changed files with 6 additions and 2 deletions
38
py/owner_cog_test.py
Normal file
38
py/owner_cog_test.py
Normal file
|
@ -0,0 +1,38 @@
|
|||
import discord
|
||||
import discord.ext.commands as commands
|
||||
import pytest
|
||||
import pytest_asyncio
|
||||
import state
|
||||
import discord.ext.test as dpytest
|
||||
|
||||
from cogs.owner_cog import OwnerCog
|
||||
|
||||
# Primarily borrowing from https://dpytest.readthedocs.io/en/latest/tutorials/using_pytest.html
|
||||
# TODO: Test more somehow, though it seems like dpytest is pretty incomplete
|
||||
|
||||
|
||||
@pytest_asyncio.fixture
|
||||
async def bot():
|
||||
# Setup
|
||||
intents = discord.Intents.default()
|
||||
intents.members = True
|
||||
intents.message_content = True
|
||||
b = commands.Bot(command_prefix="$",
|
||||
intents=intents)
|
||||
await b._async_setup_hook()
|
||||
await b.add_cog(OwnerCog(b, state.State()))
|
||||
dpytest.configure(b)
|
||||
yield b
|
||||
await dpytest.empty_queue()
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_must_be_owner(bot):
|
||||
with pytest.raises(commands.errors.NotOwner):
|
||||
await dpytest.message("$sync")
|
||||
|
||||
with pytest.raises(commands.errors.NotOwner):
|
||||
await dpytest.message("$close")
|
||||
|
||||
with pytest.raises(commands.errors.NotOwner):
|
||||
await dpytest.message("$grant")
|
Loading…
Add table
Add a link
Reference in a new issue