def setup_database(dburl, echo, num): global engine engine = create_engine(dburl, echo=echo) if engine.dialect.name == "sqlite": engine.pool = pool.StaticPool(creator=engine.pool._creator) Base.metadata.drop_all(engine) Base.metadata.create_all(engine)
def getSession(self): id = threading.current_thread().ident if id not in self.session.keys(): self.session[id] = {} #TODO: can use single engine (?) self.session[id]['engine'] = create_engine("sqlite:///"+\ os.path.join(os.path.dirname(os.path.realpath(__file__)),\ DATA_EXINFODB)) self.session[id]['engine'].pool =\ pool.StaticPool(creator=self.session[id]['engine'].pool._creator) self.session[id]['session'] =\ Session(bind=self.session[id]['engine']) #Base.metadata.drop_all(self.session[id]['engine']) #Base.metadata.create_all(self.session[id]['engine']) return self.session[id]['session']
def test_recreate(self): dbapi = MockDBAPI() creator = lambda: dbapi.connect('foo.db') p = pool.StaticPool(creator) p2 = p.recreate() assert p._creator is p2._creator