global: extension class to uppercase.

The extension class name is changed to uppercase.
This commit is contained in:
Mojib Wali
2020-10-12 10:03:55 +02:00
committed by GitHub
parent 975ac67a8a
commit 0a37a8015e
6 changed files with 46 additions and 18 deletions

View File

@@ -42,3 +42,4 @@ recursive-include invenio_config_tugraz *.crt
recursive-include invenio_config_tugraz *.json
recursive-include invenio_config_tugraz *.key
recursive-include invenio_config_tugraz *.xml
recursive-include invenio_config_tugraz *.gitkeep

View File

@@ -8,8 +8,8 @@
"""invenio module that adds tugraz configs."""
from .ext import invenioconfigtugraz
from .ext import InvenioConfigTugraz
from .generators import RecordIp
from .version import __version__
__all__ = ('__version__', 'invenioconfigtugraz', 'RecordIp')
__all__ = ('__version__', 'InvenioConfigTugraz', 'RecordIp')

View File

@@ -13,7 +13,7 @@ from flask_babelex import gettext as _
from . import config
class invenioconfigtugraz(object):
class InvenioConfigTugraz(object):
"""invenio-config-tugraz extension."""
def __init__(self, app=None):

View File

@@ -68,7 +68,7 @@ setup(
platforms='any',
entry_points={
'invenio_base.apps': [
'invenio_config_tugraz = invenio_config_tugraz:invenioconfigtugraz',
'invenio_config_tugraz = invenio_config_tugraz:InvenioConfigTugraz',
],
'invenio_i18n.translations': [
'messages = invenio_config_tugraz',

View File

@@ -12,14 +12,16 @@ See https://pytest-invenio.readthedocs.io/ for documentation on which test
fixtures are available.
"""
import os
import shutil
import tempfile
import pytest
from flask import Flask
from flask_babelex import Babel
from invenio_db import InvenioDB, db
from invenio_config_tugraz import invenioconfigtugraz
from invenio_config_tugraz import InvenioConfigTugraz
@pytest.fixture(scope='module')
@@ -31,13 +33,38 @@ def celery_config():
return {}
@pytest.fixture(scope='module')
def create_app(instance_path):
"""Application factory fixture."""
def factory(**config):
app = Flask('testapp', instance_path=instance_path)
app.config.update(**config)
@pytest.fixture()
def create_app(request):
"""Basic Flask application."""
instance_path = tempfile.mkdtemp()
app = Flask("testapp")
DB = os.getenv("SQLALCHEMY_DATABASE_URI", "sqlite://")
app.config.update(
INVENIO_CONFIG_TUGRAZ_SINGLE_IP=["127.0.0.1", "127.0.0.2"],
INVENIO_CONFIG_TUGRAZ_IP_RANGES=[
["127.0.0.2", "127.0.0.99"], ["127.0.1.3", "127.0.1.5"]],
SQLALCHEMY_DATABASE_URI=DB,
SQLALCHEMY_TRACK_MODIFICATIONS=False,
)
Babel(app)
invenioconfigtugraz(app)
InvenioConfigTugraz(app)
InvenioDB(app)
with app.app_context():
db_url = str(db.engine.url)
if db_url != "sqlite://" and not database_exists(db_url):
create_database(db_url)
db.create_all()
def teardown():
with app.app_context():
db_url = str(db.engine.url)
db.session.close()
if db_url != "sqlite://":
drop_database(db_url)
shutil.rmtree(instance_path)
request.addfinalizer(teardown)
app.test_request_context().push()
return app
return factory

View File

@@ -10,7 +10,7 @@
from flask import Flask
from invenio_config_tugraz import invenioconfigtugraz
from invenio_config_tugraz import InvenioConfigTugraz
def test_version():
@@ -22,11 +22,11 @@ def test_version():
def test_init():
"""Test extension initialization."""
app = Flask('testapp')
ext = invenioconfigtugraz(app)
ext = InvenioConfigTugraz(app)
assert 'invenio-config-tugraz' in app.extensions
app = Flask('testapp')
ext = invenioconfigtugraz()
ext = InvenioConfigTugraz()
assert 'invenio-config-tugraz' not in app.extensions
ext.init_app(app)
assert 'invenio-config-tugraz' in app.extensions