def setUpClass(cls): cls.app = create_app('config.TestingConfig') cls.client = cls.app.test_client() cls._ctx = cls.app.test_request_context() cls._ctx.push() session = sessionmaker(bind=engine)() try: session.connection().connection.\ set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) session.execute('DROP DATABASE ' + TestingConfig.db_name) session.connection().connection.\ set_isolation_level(ISOLATION_LEVEL_READ_COMMITTED) except sqlalchemy_exc.DBAPIError: print('Testing DB "cit_test" is absent. New DB "cit_test" \ will be created') finally: session.commit() session.rollback() session.close_all() engine.dispose() session.connection().connection.\ set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) session.execute('CREATE DATABASE ' + TestingConfig.db_name) session.connection().connection.\ set_isolation_level(ISOLATION_LEVEL_READ_COMMITTED) db.engine.execute('CREATE EXTENSION postgis;') db.engine.execute('CREATE EXTENSION plv8;') db.create_all() init_db.InitDB(cls.app).generate_test_data()
def setUpClass(cls): cls.app = create_app('config.TestingConfig') cls.client = cls.app.test_client() cls._ctx = cls.app.test_request_context() cls._ctx.push() session = sessionmaker(bind=engine)() session.connection().connection.set_isolation_level(0) session.execute('CREATE DATABASE cit_test') session.connection().connection.set_isolation_level(1) db.engine.execute('CREATE EXTENSION postgis;') db.engine.execute('CREATE EXTENSION plv8;') db.create_all() init_db.InitDB(cls.app).generate_test_data()
# Initialize database. from sqlalchemy import update from cit import create_app from cit.db import db from mixer.backend.sqlalchemy import Mixer from mixer.backend.flask import mixer from cit.auth.models import User from cit.issues.models import Issue from cit.comments.models import Comment from random import randint import sys import argparse app = create_app() with app.app_context(): db.create_all() # Generate a random user by calling argument "--init-data" class MyOwnMixer(Mixer): def populate_target(self, values): target = self.__scheme(**values) return target mixer = MyOwnMixer() def createParser():
from __future__ import with_statement from alembic import context from sqlalchemy import engine_from_config, pool from logging.config import fileConfig import os import sys sys.path.append(os.getcwd()) from cit.db import db from cit import create_app app = create_app() # this is the Alembic Config object, which provides # access to the values within the .ini file in use. config = context.config # set the sqlalchemy url to the one defined for flask-sqlalchemy config.set_main_option('sqlalchemy.url', app.config['SQLALCHEMY_DATABASE_URI']) # Interpret the config file for Python logging. # This line sets up loggers basically. fileConfig(config.config_file_name) # add your model's MetaData object here # for 'autogenerate' support # from myapp import mymodel # target_metadata = mymodel.Base.metadata target_metadata = db.Model.metadata
import os virtenv = os.path.join(os.environ.get('OPENSHIFT_PYTHON_DIR', '.'), 'virtenv') virtualenv = os.path.join(virtenv, 'bin/activate_this.py') try: execfile(virtualenv, dict(__file__=virtualenv)) except IOError: pass from cit import create_app if __name__ == '__main__': from wsgiref.simple_server import make_server ip = os.environ['OPENSHIFT_PYTHON_IP'] port = int(os.getenv('OPENSHIFT_PYTHON_PORT')) application = create_app() httpd = make_server(ip, port, application) #Wait for a single request, serve it and quit. httpd.serve_forever()