Commit 819b5576 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Bug resolution with integration testing

parent 71b8d9fb
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -23,9 +23,13 @@ ENGINES = {

DEFAULT_DB_ENGINE = DatabaseEngineEnum.INMEMORY

def get_database(**settings) -> Database:
    engine = os.environ.get('DB_ENGINE', DEFAULT_DB_ENGINE)
    engine = settings.pop('DB_ENGINE', engine)
def get_database(engine=None, **settings) -> Database:
    # return an instance of Database initialized with selected engine.
    # Engine is selected using following criteria (first that is not None is selected):
    # 1. user selected by parameter (engine=...)
    # 2. environment variable DB_ENGINE
    # 3. default engine: INMEMORY
    if engine is None: engine = os.environ.get('DB_ENGINE', DEFAULT_DB_ENGINE)
    if engine is None: raise Exception('Database Engine not specified')
    if isinstance(engine, DatabaseEngineEnum): engine = engine.value
    engine_class = ENGINES.get(engine)
+1 −1
Original line number Diff line number Diff line
@@ -6,5 +6,5 @@ logging.basicConfig(level=logging.INFO)

def test_inmemory():
    database = get_database(
        DB_ENGINE=DatabaseEngineEnum.INMEMORY)
        engine=DatabaseEngineEnum.INMEMORY)
    sequence(database)
+1 −1
Original line number Diff line number Diff line
@@ -6,6 +6,6 @@ logging.basicConfig(level=logging.INFO)

def test_redis():
    database = get_database(
        DB_ENGINE=DatabaseEngineEnum.REDIS, REDISDB_SERVICE_HOST='127.0.0.1', REDISDB_SERVICE_PORT=31926,
        engine=DatabaseEngineEnum.REDIS, REDISDB_SERVICE_HOST='127.0.0.1', REDISDB_SERVICE_PORT=31926,
        REDISDB_DATABASE_ID=0)
    sequence(database)