def client(): app = create_app() app.config['TESTING'] = True with app.test_client() as client: # initialize before testing with app.app_context(): pass yield client # clear after testing pass
def setUp(self): # Create a dummy database for the test case self.maxDiff = None # Create a dummy db db_name = "test.db" self.dir_path = os.path.dirname(os.path.abspath(__file__)) self.db_path = os.path.join(self.dir_path, db_name) with open(self.db_path, 'w') as f: pass # Create the app # We have to patch the environment to use our dummy database with patch('app.application.os') as mocked_os: mocked_os.environ.get.return_value = f"sqlite:///{self.db_path}" app = create_app() app.testing = True self.uninstanciated_app = app self.app = app.test_client()
def app(): app = create_app(config_object=TestingConfig) with app.app_context(): yield app
def app(): app = create_app('testing') ctx = app.app_context() ctx.push() yield app ctx.pop()
def test_create_app(): app = create_app(get_config('app.config.Testing')) assert isinstance(app, Flask) is True
def setUp(self): self.app = create_app('development') self.client = self.app.test_client() db.create_all(app=self.app)
import os from app.application import create_app, make_celery os.environ.setdefault('FLASK_CONFIG_MODULE', 'app.config') celery = make_celery(create_app(config_log=False))
import os from flask_script import Manager, Shell import pytest from app.application import create_app, db, admin from app.account.models import User, PublisherInfo, Follow from app.demand.models import MeetingDemand, PersonDemand from app.meeting.models import Meeting, Participate app = create_app(os.getenv('FLASK_CONFIG') or 'default') manager = Manager(app) @manager.option('-h', '--host', default='0.0.0.0') @manager.option('-p', '--port', default='5000') def runserver(host, port): app.run(host=host, port=int(port)) @manager.option('-p', '--path', default='') def test(path): path = os.path.join(os.getcwd(), "tests", path) pytest.main([path]) @manager.command def shell(): def make_shell_context(): return dict( app=app,
#-*- coding: utf-8 -*- from flask_script import Manager from flask_script import Server from flask_script import prompt_bool from app.settings import config from app.application import create_app from app.extensions import dbs, dbm app = create_app(config['development']) manager = Manager(app) @manager.command def initMysqlDb(): "Creates MySQL database tables" if prompt_bool("Are you sure? You will init your database"): dbs.create_all() @manager.command def dropMysqlDb(): "Drops all MySQL database tables" if prompt_bool("Are you sure ? You will lose all your data!"): dbs.drop_all() manager.add_command("runserver", Server(host='127.0.0.1', port='5000'))
import os import socket from flask_script import Manager from flask_script import Server from flask_script import prompt_bool from app.settings import config from app.application import create_app from app.extensions import db from app import models environment = config['development'] app = create_app(environment) # print '-------------', config['development'].SERVER_IP # flask_script -> add application of command line parameters manager = Manager(app) @manager.command def initdb(): "Creates database tables" if prompt_bool("Are you sure? You will init your database"): db.create_all() @manager.command
# -*- coding: utf-8 -*- import os from flask_script import Manager, Server from flask_migrate import Migrate, MigrateCommand from app.application import create_app from app.core import db from app.commands.service import Service from app import models application = create_app() manager = Manager(application) migrate = Migrate(application, db) port = int(os.environ.get('PORT', 5000)) manager.add_command("runserver", Server(host='0.0.0.0', port=port)) manager.add_command('db', MigrateCommand) manager.add_command('service', Service) @manager.command def collectstatic(): print "hello world" if __name__ == "__main__": manager.run()
def create_all(): app = create_app(get_config('app.config.Config')) with app.app_context(): db.create_all()
def celerydev(): app = create_app(get_config('app.config.Config')) celery_args = ['celery', 'worker', '-B', '-s', '/tmp/celery.db', '--concurrency=5'] with app.app_context(): return celery_main(celery_args)
def devserver(): app = create_app(get_config('app.config.Config')) app.run()
from flask.ext.script import Manager #from flask.ext.script import * #from flask.ext import script from app.application import create_app #from app.config.application import create_app app = create_app() manager = Manager(app) #manager = script.Manager(app) if __name__ == '__main__': manager.run()
def setUp(self): self.app = create_app(config_name="testing") self.client = self.app.test_client #signup 3 users self.client().post('/api/v1/auth/signup', content_type="application/json", data=json.dumps({ "name": "User", "username": "******", "email": "*****@*****.**", "password": "******", "confirm_password": "******" })) self.client().post('/api/v1/auth/signup', content_type="application/json", data=json.dumps({ "name": "User", "username": "******", "email": "*****@*****.**", "password": "******", "confirm_password": "******" })) self.client().post('/api/v1/auth/signup', content_type="application/json", data=json.dumps({ "name": "Commenter", "username": "******", "email": "*****@*****.**", "password": "******", "confirm_password": "******" })) self.client().post('/api/v1/auth/signup', content_type="application/json", data=json.dumps({ "name": "Voter", "username": "******", "email": "*****@*****.**", "password": "******", "confirm_password": "******" })) #login in all users res = self.client().post('/api/v1/auth/login', content_type="application/json", data=json.dumps({ "username": "******", "password": "******" })) u_data = json.loads(res.data) self.a_token = u_data["token"] res2 = self.client().post('/api/v1/auth/login', content_type="application/json", data=json.dumps({ "username": "******", "password": "******" })) u_data2 = json.loads(res2.data) self.a_token2 = u_data2["token"] res3 = self.client().post('/api/v1/auth/login', content_type="application/json", data=json.dumps({ "username": "******", "password": "******" })) u_data3 = json.loads(res3.data) self.a_token3 = u_data3["token"] #user1 posts 3 questions self.client().post('/api/v1/questions', headers=dict(Authorization="Bearer " + self.a_token), content_type="application/json", data=json.dumps({ "title": "Sample title 1", "content": "Sample content" })) self.client().post('/api/v1/questions', headers=dict(Authorization="Bearer " + self.a_token), content_type="application/json", data=json.dumps({ "title": "Sample title 2", "content": "Sample content 2" })) self.client().post('/api/v1/questions', headers=dict(Authorization="Bearer " + self.a_token), content_type="application/json", data=json.dumps({ "title": "Sample title 3", "content": "Sample content 3" })) #user2 posts 2 answers self.client().post('/api/v1/questions/1/answers', headers=dict(Authorization="Bearer " + self.a_token2), content_type="application/json", data=json.dumps({"content": "Sample answer 1"})) self.client().post('/api/v1/questions/1/answers', headers=dict(Authorization="Bearer " + self.a_token2), content_type="application/json", data=json.dumps({"content": "Sample answer 2"})) #commenter posts a comment self.client().post('/api/v1/questions/1/answers/1/comments', headers=dict(Authorization="Bearer " + self.a_token3), content_type="application/json", data=json.dumps({"content": "Sample comment 1"}))
from app.application import create_app app = create_app(debug=True) if __name__ == "__main__": app.run("0.0.0.0")
def main(**kwargs): if kwargs['env_file']: env.read_envfile(kwargs['env_file']) app = create_app(kwargs['env']) app.run(host=kwargs['host'], port=kwargs['port'])
import os from flask_migrate import Migrate, MigrateCommand from flask_script import Manager from flask import url_for from app import db from app.application import create_app from app.config import config_map import urllib app = create_app(config_map[os.environ['FLASK_CONFIG']]) migrate = Migrate(app, db) manager = Manager(app) manager.add_command('db', MigrateCommand) @manager.command def list_routes(): import urllib output = [] for rule in app.url_map.iter_rules(): options = {} for arg in rule.arguments: options[arg] = "[{0}]".format(arg) methods = ','.join(rule.methods) url = url_for(rule.endpoint, **options) line = urllib.parse.unquote("{:50s} {:20s} {}".format( rule.endpoint, methods, url)) output.append(line) for line in output:
import os import socket from flask_script import Manager from flask_script import Server from flask_script import prompt_bool from app.settings import config from app.application import create_app from app.extensions import db from app import models app = create_app(config['development']) # flask_script -> add application of command line parameters manager = Manager(app) @manager.command def initdb(): "Creates database tables" if prompt_bool("Are you sure? You will init your database"): db.create_all() @manager.command def dropdb(): "Drops all database tables"
import os from app.application import create_app env = os.environ.get('APP_ENV') if not env: raise Exception('APP_ENV can not be found') application = create_app(env)
from flask_migrate import Migrate, MigrateCommand from flask_script import Manager from app import db from app.application import create_app instance = create_app('development') migrate = Migrate(instance, db) manager = Manager(instance) manager.add_command('db', MigrateCommand) if __name__ == "__main__": manager.run()
# -*- coding:utf-8 -*- # 初始化文件 import os import sys import logging # TODO 中间件的实现 from werkzeug.wsgi import DispatcherMiddleware from werkzeug.serving import run_simple from app.application import create_app from app.settings import config curr_config = config['development'] app = create_app(curr_config) if __name__ == '__main__': run_simple(curr_config.SERVER_IP, curr_config.SERVER_PORT, app, use_reloader=curr_config.DEBUG, use_debugger=curr_config.DEBUG)
from app.application import create_app from app.config.config import DevelopmentConfig, ProductionConfig application = create_app(config_object=DevelopmentConfig) if __name__ == '__main__': application.run(threaded=True, use_reloader=True)
def main(): app = create_app() app.run(port=8080)
async def app(loop): app = application.create_app() add_routes(app) yield app
def get_app(self): from settings import Testing options = Testing().as_dict() return create_app(database_engine=self.database_engine, **options)
'''./run.py''' from flask import jsonify, render_template from app.application import create_app CONFIG_NAME = "development" app = create_app(CONFIG_NAME) @app.route('/') def home(): '''method to render documentation''' return render_template('documentation.html'), 200 if __name__ == "__main__": app.run()
# -*- coding: utf-8 -*- """ @file: manager.py @author: zlcao @time: 2019/7/30 15:44 @version: 1.0 @desc: """ from flask_script import Manager from app.application import create_app from app.config.development import DevelopmentConfig from flask_migrate import Migrate, MigrateCommand from app.extensions import db monitor_app = create_app(DevelopmentConfig) # 初始化 migrate # 两个参数一个是 Flask 的 app,一个是数据库 db migrate = Migrate(monitor_app, db) # 初始化管理器 manager = Manager(app=monitor_app) # 添加 db 命令,并与 MigrateCommand 绑定 # python manage.py db init 初始化并生成一个migrations文件夹 # python manage.py db migrate 初始化文件夹内容,升降级脚本等信息 # python manage.py db upgrade 数据库升级 # python manage.py db downgrade 数据库降级 # python manage.py db --help
from flask_migrate import Migrate, MigrateCommand from flask_script import Manager from app import db from app.application import create_app app = create_app('development') migrate = Migrate(app, db) manager = Manager(app) manager.add_command('db', MigrateCommand) if __name__ == "__main__": manager.run()
def app(): app = create_app() return app
from app.application import create_app app = create_app() if __name__ == '__main__': app.run()
import signal import sys from flask_script import Manager from flask_migrate import Migrate, MigrateCommand from app.application import create_app, get_config from app.extensions import db # Migrations commands app = create_app(get_config('app.config.Config')) migrate = Migrate(app, db) manager = Manager(app) manager.add_command('db', MigrateCommand) if __name__ == '__main__': signal.signal(signal.SIGINT, lambda *_: sys.exit(0)) # Properly handle Control+C manager.run()