def app(): """ Setup our flask test app, this only gets executed once. :return: Flask app """ db_uri = '{0}_test'.format(settings.SQLALCHEMY_DATABASE_URI) params = { 'DEBUG': False, 'TESTING': True, 'WTF_CSRF_ENABLED': False, 'SQLALCHEMY_DATABASE_URI': db_uri } _app = create_app(settings_override=params) # Establish an application context before running the tests. ctx = _app.app_context() ctx.push() yield _app ctx.pop()
import logging import click from catwatch.app import create_app app = create_app() @click.command() def cli(): """ List all of the available routes. """ output = {} for rule in app.url_map.iter_rules(): route = { 'path': rule.rule, 'methods': '({0})'.format(', '.join(rule.methods)) } output[rule.endpoint] = route endpoint_padding = max(len(endpoint) for endpoint in output.keys()) + 2 for key in sorted(output): logging.info('{0: >{1}}: {2}'.format(key, endpoint_padding, output[key]))