def setUp(self): app = Flask(__name__) self.app = app app.secret_key = 'DUMMY' app.testing = True self.client = app.test_client() self.db = MongoClient(host=MONGODB_URI).unit_test user_ajna.DBUser.dbsession = self.db user_ajna.DBUser.add('ajna', 'ajna') conn = MongoClient(host=MONGODB_URI) api_login.configure(app)
def create_app(config_class=Production): """Cria app básica e vincula todos os blueprints e módulos/extensões.""" app = Flask(__name__) app.logger.info('Criando app') Bootstrap(app) nav = Nav(app) csrf = CSRFProtect(app) # app.config['SERVER_NAME'] = 'ajna.api' app.secret_key = config_class.SECRET app.config['SECRET_KEY'] = config_class.SECRET app.config['mongodb'] = config_class.db app.config['sql'] = config_class.sql app.register_blueprint(ajna_api) csrf.exempt(ajna_api) app.register_blueprint(mercanteapi) csrf.exempt(mercanteapi) app.logger.info('Configurando swagger-ui...') swaggerui_blueprint = get_swaggerui_blueprint(SWAGGER_URL, API_URL) app.register_blueprint(swaggerui_blueprint, url_prefix=SWAGGER_URL) @app.route('/docs/openapi.yaml') def return_yaml(): return send_file('openapi.yaml') app.logger.info('Configurando api login...') api = api_login.configure(app) csrf.exempt(api) app.logger.info('Configurando login...') login.configure(app) DBUser.dbsession = config_class.db app.logger.info('Configurando / e redirects') @nav.navigation() def mynavbar(): """Menu da aplicação.""" items = [View('Home', 'index')] if current_user.is_authenticated: items.append(View('Sair', 'commons.logout')) return Navbar('teste', *items) @app.route('/') def index(): if current_user.is_authenticated: return render_template('index.html') else: return redirect(url_for('commons.login')) return app
def create_app(config_class=Production): """Cria app básica e vincula todos os blueprints e módulos/extensões.""" app = Flask(__name__) app.logger.info('Criando app') Bootstrap(app) nav = Nav(app) csrf = CSRFProtect(app) # app.config['SERVER_NAME'] = 'ajna.api' app.secret_key = config_class.SECRET app.config['SECRET_KEY'] = config_class.SECRET app.config['mongodb'] = config_class.db app.config['mongodb_risco'] = config_class.db_risco app.config['sql'] = config_class.sql db_session = scoped_session( sessionmaker(autocommit=False, autoflush=False, bind=config_class.sql)) app.config['db_session'] = db_session app.register_blueprint(ajna_api) csrf.exempt(ajna_api) app.register_blueprint(bhadrasanaapi) csrf.exempt(bhadrasanaapi) app.register_blueprint(virasanaapi) csrf.exempt(virasanaapi) app.register_blueprint(mercanteapi) csrf.exempt(mercanteapi) app.register_blueprint(recintosapi) csrf.exempt(recintosapi) app.register_blueprint(cadastrosapi) csrf.exempt(cadastrosapi) app.logger.info('Configurando swagger-ui...') swaggerui_blueprint = get_swaggerui_blueprint(SWAGGER_URL, API_URL) app.register_blueprint(swaggerui_blueprint, url_prefix=SWAGGER_URL) @app.route('/docs/openapi.yaml') def return_yaml(): # pragma: no cover return send_file('openapi.yaml') app.logger.info('Configurando api login...') api = api_login.configure(app) csrf.exempt(api) app.logger.info('Configurando login...') login.configure(app) DBUser.dbsession = config_class.db app.logger.info('Configurando / e redirects') @nav.navigation() def mynavbar(): """Menu da aplicação.""" items = [View('Home', 'index')] if current_user.is_authenticated: items.append(View('Sair', 'commons.logout')) return Navbar('teste', *items) @app.route('/') def index(): # pragma: no cover if current_user.is_authenticated: return render_template('index.html') else: return redirect(url_for('commons.login')) @app.teardown_appcontext def shutdown_session(exception=None): db_session = app.config.get('db_session') if db_session: db_session.remove() return app
from virasana.db import mongodb, mysql, mongodb_risco from virasana.routes import bagagens_app, pyxvis_app from virasana.routes import conformidade_app from virasana.routes import imagens_app from virasana.views import configure_app, csrf # from bhadrasana.models import db_session db_session = scoped_session( sessionmaker(autocommit=False, autoflush=False, bind=mysql)) app = configure_app(mongodb, mongodb_risco, db_session) bagagens_app.configure(app) conformidade_app.configure(app) pyxvis_app.configure(app) imagens_app.configure(app) configure_applog(app) api = api_login.configure(app) csrf.exempt(api) log.logger.info('Servidor (re)iniciado!') @app.teardown_appcontext def shutdown_session(exception=None): db_session.remove() log.logger.info('db_session remove') if __name__ == '__main__': # pragma: no cover app.run(debug=app.config['DEBUG'])