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 *.json
recursive-include invenio_config_tugraz *.key recursive-include invenio_config_tugraz *.key
recursive-include invenio_config_tugraz *.xml recursive-include invenio_config_tugraz *.xml
recursive-include invenio_config_tugraz *.gitkeep

View File

@@ -8,8 +8,8 @@
"""invenio module that adds tugraz configs.""" """invenio module that adds tugraz configs."""
from .ext import invenioconfigtugraz from .ext import InvenioConfigTugraz
from .generators import RecordIp from .generators import RecordIp
from .version import __version__ 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 from . import config
class invenioconfigtugraz(object): class InvenioConfigTugraz(object):
"""invenio-config-tugraz extension.""" """invenio-config-tugraz extension."""
def __init__(self, app=None): def __init__(self, app=None):

View File

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

View File

@@ -12,14 +12,16 @@ See https://pytest-invenio.readthedocs.io/ for documentation on which test
fixtures are available. fixtures are available.
""" """
import os
import shutil import shutil
import tempfile import tempfile
import pytest import pytest
from flask import Flask from flask import Flask
from flask_babelex import Babel 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') @pytest.fixture(scope='module')
@@ -31,13 +33,38 @@ def celery_config():
return {} return {}
@pytest.fixture(scope='module') @pytest.fixture()
def create_app(instance_path): def create_app(request):
"""Application factory fixture.""" """Basic Flask application."""
def factory(**config): instance_path = tempfile.mkdtemp()
app = Flask('testapp', instance_path=instance_path) app = Flask("testapp")
app.config.update(**config) DB = os.getenv("SQLALCHEMY_DATABASE_URI", "sqlite://")
Babel(app) app.config.update(
invenioconfigtugraz(app) INVENIO_CONFIG_TUGRAZ_SINGLE_IP=["127.0.0.1", "127.0.0.2"],
return app INVENIO_CONFIG_TUGRAZ_IP_RANGES=[
return factory ["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)
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

View File

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