def test_conf(): """Test extension initialization.""" app = Flask('testapp') InvenioLoggingConsole(app) assert app.config['LOGGING_CONSOLE_PYWARNINGS'] is False assert app.config['LOGGING_CONSOLE_LEVEL'] is None app = Flask('testapp') app.config.update(dict(DEBUG=True, LOGGING_CONSOLE_LEVEL='ERROR')) InvenioLoggingConsole(app) assert app.config['LOGGING_CONSOLE_PYWARNINGS'] is True app.logger.level == logging.ERROR
def test_init(): """Test extension initialization.""" app = Flask('testapp') InvenioLoggingConsole(app) assert 'invenio-logging-console' in app.extensions ext = InvenioLoggingConsole() app = Flask('testapp') ext.init_app(app) assert 'invenio-logging-console' in app.extensions app = Flask('testapp') app.config.update(dict(LOGGING_CONSOLE=False)) InvenioLoggingConsole(app) assert 'invenio-logging-console' not in app.extensions
Run example development server: .. code-block:: console $ FLASK_APP=app.py flask run --debugger -p 5000 Test the demo: .. code-block:: console curl -v -XGET 'http://*****:*****@app.route('/') def index(): """Log error.""" app.logger.error('Example error') return 'Hello world!'
def test_warnings(pywarnlogger): """Test extension initialization.""" app = Flask('testapp') InvenioLoggingConsole(app) assert logging.StreamHandler in \ [x.__class__ for x in pywarnlogger.handlers]