fixed start after move

This commit is contained in:
bacon
2024-03-18 01:49:40 +03:00
parent e1fc05dea2
commit fff1a5c0c7
16 changed files with 29 additions and 47 deletions

View File

@@ -1,5 +1,4 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
import asyncio
from os import getenv from os import getenv
from os.path import isfile from os.path import isfile
@@ -7,9 +6,9 @@ from disnake import OptionType, Option, Localized, ApplicationCommandInteraction
from disnake.ext.commands import Bot, is_owner from disnake.ext.commands import Bot, is_owner
from dotenv import load_dotenv from dotenv import load_dotenv
from lib.CogsPrep import work_with_cogs, cog_list from integral_lib.CogsPrep import work_with_cogs, cog_list
from lib.Comands import determine_prefix from integral_lib.Comands import determine_prefix
from lib.Logger import logger from integral_lib.Logger import logger
load_dotenv() load_dotenv()
if not isfile('.env') or not getenv('CONF_FILE'): if not isfile('.env') or not getenv('CONF_FILE'):
@@ -36,7 +35,7 @@ bot = Bot(command_prefix=determine_prefix,
bot.i18n.load("locale/") bot.i18n.load("locale/")
asyncio.run(work_with_cogs('load', bot, cog_list())) work_with_cogs('load', bot, cog_list())
@bot.event @bot.event

View File

@@ -4,9 +4,9 @@ import disnake
from disnake import Option, OptionType, Localized from disnake import Option, OptionType, Localized
from disnake.ext import tasks from disnake.ext import tasks
from lib.Comands import * from integral_lib.Comands import *
from lib.DB_Worker import fill_bd, prepare_db, work_with_db from integral_lib.DB_Worker import fill_bd, prepare_db, work_with_db
from lib.Logger import logger from integral_lib.Logger import logger
class Admin(commands.Cog, name='Admin'): class Admin(commands.Cog, name='Admin'):

View File

@@ -4,9 +4,9 @@ import disnake
from disnake import OptionChoice, Option, OptionType, Member, VoiceState from disnake import OptionChoice, Option, OptionType, Member, VoiceState
from disnake.ext import commands from disnake.ext import commands
from lib.ListGenerator import ListGenerator from integral_lib.ListGenerator import ListGenerator
from lib.Logger import logger from integral_lib.Logger import logger
from lib.Player import play_audio from integral_lib.Player import play_audio
class Audio(commands.Cog, name='Audio'): class Audio(commands.Cog, name='Audio'):
@@ -27,7 +27,7 @@ class Audio(commands.Cog, name='Audio'):
logger.info('Skip playing by Game') logger.info('Skip playing by Game')
else: else:
# Prepare list of audio # Prepare list of audio
from bot.lib.Comands import read_json from bot.integral_lib.Comands import read_json
_role = await read_json(member.guild.id, 'tigger_role') _role = await read_json(member.guild.id, 'tigger_role')
audio: list = [] audio: list = []
for _a in ListGenerator('audio'): for _a in ListGenerator('audio'):

View File

@@ -4,8 +4,8 @@ import disnake
from disnake import OptionChoice from disnake import OptionChoice
from disnake.ext import commands from disnake.ext import commands
from lib.Comands import write_json from integral_lib.Comands import write_json
from lib.Logger import logger from integral_lib.Logger import logger
class Fun(commands.Cog, name='Fun'): class Fun(commands.Cog, name='Fun'):

View File

@@ -2,8 +2,8 @@ import disnake
from disnake import Option from disnake import Option
from disnake.ext import commands from disnake.ext import commands
from lib import YandexPlayer from integral_lib import YandexPlayer
from lib.Logger import logger from integral_lib.Logger import logger
class Testing(commands.Cog, name='Testing'): class Testing(commands.Cog, name='Testing'):

View File

@@ -2,7 +2,7 @@ import disnake
from disnake import Option, OptionType, Colour from disnake import Option, OptionType, Colour
from disnake.ext import commands from disnake.ext import commands
from lib.Logger import logger from integral_lib.Logger import logger
class General(commands.Cog): class General(commands.Cog):

View File

@@ -6,8 +6,8 @@ from disnake import ApplicationCommandInteraction
from disnake.ext import commands from disnake.ext import commands
from __init__ import version_info as ver from __init__ import version_info as ver
from lib.Comands import determine_prefix from integral_lib.Comands import determine_prefix
from lib.Logger import logger from integral_lib.Logger import logger
class BotInfo(commands.Cog, name='Bot Info'): class BotInfo(commands.Cog, name='Bot Info'):

View File

@@ -1,5 +1,5 @@
""" """
lib.CogsPrepare integral_lib.CogsPrepare
~~~~~~~~~~~~~ ~~~~~~~~~~~~~
Loads, unloads Cogs files Loads, unloads Cogs files
cog_list: return list of cog filenames cog_list: return list of cog filenames
@@ -22,7 +22,7 @@ def cog_list(fold: str = './cogs') -> List[str]:
return cogs_list return cogs_list
async def work_with_cogs(what_do: str, def work_with_cogs(what_do: str,
bot: InteractionBotBase, bot: InteractionBotBase,
cog: str | list): cog: str | list):
if isinstance(cog, str): if isinstance(cog, str):

View File

@@ -1,5 +1,5 @@
""" """
lib.Commands integral_lib.Commands
~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
Some prepare for commands Some prepare for commands

View File

@@ -1,5 +1,5 @@
""" """
lib integral_lib
~~~~~~~~~~~~~ ~~~~~~~~~~~~~
Some libs for the bot which help him Some libs for the bot which help him
""" """

View File

@@ -1,34 +1,24 @@
import tracemalloc
tracemalloc.start()
import pytest import pytest
from disnake.ext.commands.common_bot_base import CommonBotBase from disnake.ext.commands.common_bot_base import CommonBotBase
from mock import mock from mock import mock
import os from integral_lib.CogsPrep import cog_list, work_with_cogs
import sys
sys.path.append(os.path.join(os.path.dirname(__file__), '..'))
from bot.lib.CogsPrep import cog_list, work_with_cogs
def test_cog_list(): def test_cog_list():
with mock.patch('bot.lib.CogsPrep.listdir') as MockClass: with mock.patch('integral_lib.CogsPrep.listdir') as MockClass:
MockClass.return_value = ['cog1.py', 'cog2.py'] MockClass.return_value = ['cog1.py', 'cog2.py']
result = cog_list() result = cog_list()
assert result == ['cog1', 'cog2'] assert result == ['cog1', 'cog2']
@pytest.mark.asyncio
@pytest.mark.parametrize("cog", ["cog1.py", "cog2"]) @pytest.mark.parametrize("cog", ["cog1.py", "cog2"])
@pytest.mark.parametrize("what_do", ['load', 'unload', 'reload', 'disable', 'enable']) @pytest.mark.parametrize("what_do", ['load', 'unload', 'reload', 'disable', 'enable'])
async def test_work_with_cogs(what_do, cog): def test_work_with_cogs(what_do, cog):
with mock.patch('bot.lib.CogsPrep.rename') as mock_rename: with mock.patch('integral_lib.CogsPrep.rename') as mock_rename:
mock_rename.return_value = None mock_rename.return_value = None
mock_bot = mock.MagicMock(spec=CommonBotBase) mock_bot = mock.MagicMock(spec=CommonBotBase)
result = await work_with_cogs(what_do, mock_bot, cog) result = work_with_cogs(what_do, mock_bot, cog)
if what_do in ['load', 'enable']: if what_do in ['load', 'enable']:
assert mock_bot.load_extension.called assert mock_bot.load_extension.called
elif what_do in ['unload', 'disable']: elif what_do in ['unload', 'disable']:
@@ -36,10 +26,3 @@ async def test_work_with_cogs(what_do, cog):
elif what_do == 'reload': elif what_do == 'reload':
assert mock_bot.reload_extension.called assert mock_bot.reload_extension.called
snapshot = tracemalloc.take_snapshot()
top_stats = snapshot.statistics('lineno')
print("[ Top 10 ]")
for stat in top_stats[:10]:
print(stat)