Python client for IntegreSQL.
0.9.2
integresql-client-python
is tested against Python 3.8+. Older Python versions may work, or may not.
from integresql_client_python import IntegreSQL
integresql = IntegreSQL('template_directory')
# integresql.debug = True
with integresql as tpl:
with tpl.initialize() as dbinfo:
# dbinfo is None if template is already initialized
if dbinfo:
# connect and import fixtures
print("initialize db with fixtures with db data:", dbinfo)
db = tpl.get_database()
with db as dbinfo:
# connect and do whatever you want
print("Do your tests with db data:", dbinfo)
# or manually, you can use as many databases as you need or IntegreSQL will allow
dbinfo1 = db.open()
print("Do your tests", dbinfo1)
dbinfo2 = db.open()
print("Do your tests", dbinfo2)
dbinfo3 = db.open()
print("Do your tests", dbinfo3)
# connect and do whatever you want
# do not forget about closing resources:
db.close(dbinfo1)
db.close(dbinfo2)
db.close(dbinfo3)
- Marcin Sztolcman (marcin@urzenia.net)
If you like or dislike this software, please do not hesitate to tell me about it via email (marcin@urzenia.net).
If you find a bug or have an idea to enhance this tool, please use GitHub's issues.
- fixed a bug where test database was returned to pool after every test and got reused.
Renamed method
Database.close()
toDatabase.mark_unmodified()
. UsingDatabase
inwith
block doesn't return selected database to pool anymore.
- allow using multiple template paths
- first public version