Coverage for demo_server/app.py: 97%
36 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 15:44 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 15:44 +0000
1# Copyright (c) Microsoft Corporation.
2# Licensed under the MIT License.
4import sys, os 1a
7sys.path.append(os.getcwd()) 1a
8sys.path.append(os.path.dirname(os.getcwd())) 1a
10import logging.config 1a
11import json 1a
12from flask import Flask, Blueprint 1a
13from demo_server import settings 1a
14from demo_server.database.models import db 1a
15from demo_server.api.blog.endpoints.posts import ns as blog_posts_namespace 1a
16# from demo_server.api.blog.endpoints.categories import ns\
17# as blog_categories_namespace
18from demo_server.api.restplus import api 1a
19from werkzeug.serving import WSGIRequestHandler 1a
20WSGIRequestHandler.protocol_version = "HTTP/1.1" 1a
22app = Flask(__name__) 1a
23logging.config.fileConfig('logging.conf') 1a
24log = logging.getLogger(__name__) 1a
27def configure_app(flask_app): 1a
28 flask_app.config['SERVER_NAME'] = settings.FLASK_SERVER_NAME 1a
29 flask_app.config['SQLALCHEMY_DATABASE_URI'] =\ 1a
30 settings.SQLALCHEMY_DATABASE_URI
31 flask_app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] =\ 1a
32 settings.SQLALCHEMY_TRACK_MODIFICATIONS
33 flask_app.config['SWAGGER_UI_DOC_EXPANSION'] =\ 1a
34 settings.RESTPLUS_SWAGGER_UI_DOC_EXPANSION
35 flask_app.config['RESTPLUS_VALIDATE'] = settings.RESTPLUS_VALIDATE 1a
36 flask_app.config['RESTPLUS_MASK_SWAGGER'] = settings.RESTPLUS_MASK_SWAGGER 1a
37 flask_app.config['ERROR_404_HELP'] = settings.RESTPLUS_ERROR_404_HELP 1a
40def initialize_app(flask_app): 1a
41 configure_app(flask_app) 1a
43 blueprint = Blueprint('api', __name__, url_prefix='/api') 1a
44 api.init_app(blueprint) 1a
45 api.add_namespace(blog_posts_namespace) 1a
46 # api.add_namespace(blog_categories_namespace)
47 flask_app.register_blueprint(blueprint) 1a
49 db.init_app(flask_app) 1a
52def main(): 1a
53 initialize_app(app) 1a
54 # with app.app_context():
55 # db.create_all()
56 log.info('>>>>> Starting development server at http://{}/api/ <<<<<'.format(app.config['SERVER_NAME'])) 1a
57 app.run(threaded=True, use_reloader=False, debug=settings.FLASK_DEBUG) 1a
59if __name__ == "__main__": 59 ↛ exitline 59 didn't exit the module because the condition on line 59 was always true1a
60 main() 1a