From ee41885e89e0f8875d6c27321abc173aa05e6d4a Mon Sep 17 00:00:00 2001 From: Xevion Date: Sat, 13 Feb 2021 08:29:35 -0600 Subject: [PATCH] running bot with database, switch to helper function for testing --- bot/constants.py | 1 + main.py | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/bot/constants.py b/bot/constants.py index c5cbec1..cd98fc6 100644 --- a/bot/constants.py +++ b/bot/constants.py @@ -5,6 +5,7 @@ import os BASE_DIR = os.path.dirname(os.path.abspath(os.path.join(__file__, '..'))) TOKEN = os.path.join(BASE_DIR, 'token.dat') DATABASE = os.path.join(BASE_DIR, 'database.db') +DATABASE_URI = f'sqlite:///{DATABASE}' # Other constants LOGGING_LEVEL = logging.DEBUG diff --git a/main.py b/main.py index 823dcf4..6f61315 100644 --- a/main.py +++ b/main.py @@ -1,11 +1,19 @@ import logging from sqlalchemy import create_engine +from sqlalchemy.engine import Engine from bot import constants from bot.bot import ContestBot from bot.models import Base + +def load_db(url=constants.DATABASE_URI) -> Engine: + engine = create_engine(url) + Base.metadata.create_all(engine) + return engine + + if __name__ == "__main__": logger = logging.getLogger(__file__) logger.setLevel(constants.LOGGING_LEVEL) @@ -17,10 +25,9 @@ if __name__ == "__main__": logging.StreamHandler() ]) - initial_extensions = ['contest.cogs.contest'] + initial_extensions = ['bot.cogs.contest'] - engine = create_engine(constants.DATABASE) - Base.metadata.create_all(engine) + engine = load_db() bot = ContestBot(engine, description='A assistant for the Photography Lounge\'s monday contests') for extension in initial_extensions: