Пример #1
0
def session(postgresql_proc):
    db_name = 'unittests'
    port = postgresql_proc.port
    user = postgresql_proc.user
    socketdir = postgresql_proc.unixsocketdir
    pg_factory.init_postgresql_database(user, socketdir, port, db_name)
    db_url = (f'postgresql:///{db_name}?'
              f'user={user}&host={socketdir}&port={port}')
    database.init(db_url)
    database.migrate()
    yield database.session
    pg_factory.drop_postgresql_database(user, socketdir, port, db_name,
                                        postgresql_proc.version)
Пример #2
0
def config_database(request):
    connection_string = 'postgresql+psycopg2://{0}@{1}:{2}/{3}'

    config = get_config(request)
    pg_host = config.get('host')
    pg_port = config.get('port') or 5432
    pg_user = config.get('user')
    pg_db = config.get('db', 'tests')

    # Create the database
    init_postgresql_database(pg_user, pg_host, pg_port, pg_db)

    yield connection_string.format(pg_user, pg_host, pg_port, pg_db)

    # Ensure the database gets deleted
    drop_postgresql_database(
        pg_user, pg_host, pg_port, pg_db, '9.4'
    )
Пример #3
0
def database(request):
    config = get_config(request)
    pg_host = config.get("host")
    pg_port = config.get("port") or os.environ.get("PGPORT", 5432)
    pg_user = config.get("user")
    pg_db = config.get("db", "tests")
    pg_version = config.get("version", 10.1)

    # In case the database already exists, possibly due to an aborted test run,
    # attempt to drop it before creating
    drop_postgresql_database(pg_user, pg_host, pg_port, pg_db, pg_version)

    # Create our Database.
    init_postgresql_database(pg_user, pg_host, pg_port, pg_db)

    # Ensure our database gets deleted.
    @request.addfinalizer
    def drop_database():
        drop_postgresql_database(pg_user, pg_host, pg_port, pg_db, pg_version)

    return "postgresql://{}@{}:{}/{}".format(pg_user, pg_host, pg_port, pg_db)
Пример #4
0
 def drop_database():
     drop_postgresql_database(pg_user, pg_host, pg_port, pg_db, pg_version)
Пример #5
0
 def drop_database():
     drop_postgresql_database(pg_user, pg_host, pg_port, pg_db, 9.6, pg_pass)
Пример #6
0
 def drop_database():
     drop_postgresql_database(pg_user, pg_host, pg_port, pg_db, pg_version)