From 126b867e1ec13fdceba8f2968e68db3bb56d1b35 Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sun, 3 May 2020 11:28:56 +0200
Subject: [PATCH] FlaskUtils: split app initialization to allow overrides

---
 .../TheCodeLabs_FlaskUtils/FlaskBaseApp.py             | 10 +++++++---
 TheCodeLabs_FlaskUtils/setup.py                        |  2 +-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/TheCodeLabs_FlaskUtils/TheCodeLabs_FlaskUtils/FlaskBaseApp.py b/TheCodeLabs_FlaskUtils/TheCodeLabs_FlaskUtils/FlaskBaseApp.py
index 453bf24..ea87c4a 100644
--- a/TheCodeLabs_FlaskUtils/TheCodeLabs_FlaskUtils/FlaskBaseApp.py
+++ b/TheCodeLabs_FlaskUtils/TheCodeLabs_FlaskUtils/FlaskBaseApp.py
@@ -42,11 +42,17 @@ class FlaskBaseApp(ABC):
             return json.load(f)
 
     def __init_app(self):
-        app = Flask(self._rootDir)
+        app = self._create_flask_app()
         app.secret_key = self._serverSettings['secret']
 
+        self._register_default_blueprints(app)
         self._register_blueprints(app)
+        return app
+
+    def _create_flask_app(self):
+        return Flask(self._rootDir)
 
+    def _register_default_blueprints(self, app):
         @app.route('/version', methods=['GET'])
         def version():
             return jsonify(self._version)
@@ -62,8 +68,6 @@ class FlaskBaseApp(ABC):
             def robots():
                 return send_from_directory(os.path.join(app.root_path, 'static'), 'robots.txt')
 
-        return app
-
     @abc.abstractmethod
     def _register_blueprints(self, app):
         pass
diff --git a/TheCodeLabs_FlaskUtils/setup.py b/TheCodeLabs_FlaskUtils/setup.py
index dd8a6c4..12a2733 100644
--- a/TheCodeLabs_FlaskUtils/setup.py
+++ b/TheCodeLabs_FlaskUtils/setup.py
@@ -3,7 +3,7 @@ from setuptools import setup
 setup(
     name='TheCodeLabs-FlaskUtils',
     packages=['TheCodeLabs_FlaskUtils'],
-    version='1.0.2',
+    version='1.1.0',
     license='MIT',
     description='Useful python classes',
     author='TheCodeLabs',
-- 
GitLab