def bind(self, provider_name, *args, **kwargs): if self.real_provider_name is not None: provider_name = self.real_provider_name self.provider_name = provider_name provider_module = import_module('pony.orm.dbproviders.' + provider_name) provider_cls = provider_module.provider_cls raw_server_version = self.raw_server_version if raw_server_version is None: if provider_name == 'sqlite': raw_server_version = '3.7.17' elif provider_name in ('postgres', 'pygresql'): raw_server_version = '9.2' elif provider_name == 'oracle': raw_server_version = '11.2.0.2.0' elif provider_name == 'mysql': raw_server_version = '5.6.11' else: assert False, provider_name # pragma: no cover t = [int(component) for component in raw_server_version.split('.')] if len(t) == 2: t.append(0) server_version = tuple(t) if provider_name in ('postgres', 'pygresql'): server_version = int('%d%02d%02d' % server_version) class TestProvider(provider_cls): def inspect_connection(provider, connection): pass TestProvider.server_version = server_version kwargs['pony_check_connection'] = False kwargs['pony_pool_mockup'] = TestPool(self) Database.bind(self, TestProvider, *args, **kwargs)
def bind(self, provider_name, *args, **kwargs): if self.real_provider_name is not None: provider_name = self.real_provider_name self.provider_name = provider_name provider_module = import_module('pony.orm.dbproviders.' + provider_name) provider_cls = provider_module.provider_cls raw_server_version = self.raw_server_version if raw_server_version is None: if provider_name == 'sqlite': raw_server_version = '3.7.17' elif provider_name in ('postgres', 'pygresql'): raw_server_version = '9.2' elif provider_name == 'oracle': raw_server_version = '11.2.0.2.0' elif provider_name == 'mysql': raw_server_version = '5.6.11' else: assert False, provider_name # pragma: no cover t = [ int(component) for component in raw_server_version.split('.') ] if len(t) == 2: t.append(0) server_version = tuple(t) if provider_name in ('postgres', 'pygresql'): server_version = int('%d%02d%02d' % server_version) class TestProvider(provider_cls): def inspect_connection(provider, connection): pass TestProvider.server_version = server_version kwargs['pony_check_connection'] = False kwargs['pony_pool_mockup'] = TestPool(self) Database.bind(self, TestProvider, *args, **kwargs)
def temporary_binding(): db = Database() db.bind(**config.database) InstalledComponentEntity = InstalledComponent.create_database_entity(db.Entity) db.generate_mapping(create_tables=True) return db, InstalledComponentEntity
from flask import Blueprint from flask import Flask from flask_jwt import JWT from flask_restful import Api from pony.orm.core import Database from config import config, userid_table, username_table from methods.Authentication import ConnectionAuth from sql.Connection import DbAuth app = Flask(__name__) app.config = config() # blueprint api api_bp = Blueprint('api', __name__) api = Api(api_bp) app.register_blueprint(api_bp, url_prefix='/api') # Authentication to server auth = ConnectionAuth(username_table, userid_table) jwt = JWT(app, auth.authenticate, auth.identity) # Authentication/connection config.yaml to database # import cryptography db = Database() dbAuth = dict(DbAuth('config.yaml').load()) db.bind(**dbAuth['mysql'])