mirror of
https://github.com/Cian-H/invenio-theme-iform.git
synced 2025-12-22 20:51:58 +00:00
* all python files are now formated with black NOTE: some configurations where necessary. flake8 line-length has to be set to 88 which is the default for black. but this was not enough some lines of black where formated longer then 88 characters. found flake8-bugbear with B950. with that and in combination with ignore=E501 it is possible to ignore long lines, but if there are lines to long it will still point it out. further also for isort some configuration was necessary REFERENCES: https://github.com/psf/black/blob/master/docs/compatible_configs.md#isort https://github.com/psf/black/blob/master/docs/compatible_configs.md#flake8 https://github.com/PyCQA/flake8-bugbear#opinionated-warnings * removed commented import statments Co-authored-by: Christoph Ladurner <christoph.ladurner@tugraz.at>
73 lines
1.8 KiB
Python
73 lines
1.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
#
|
|
# Copyright (C) 2020 mojib wali.
|
|
#
|
|
# invenio-theme-tugraz is free software; you can redistribute it and/or
|
|
# modify it under the terms of the MIT License; see LICENSE file for more
|
|
# details.
|
|
|
|
"""Pytest configuration.
|
|
|
|
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_i18n import InvenioI18N
|
|
from invenio_search import InvenioSearch
|
|
|
|
from invenio_theme_tugraz import InvenioThemeTugraz
|
|
|
|
|
|
@pytest.fixture(scope="module")
|
|
def celery_config():
|
|
"""Override pytest-invenio fixture.
|
|
|
|
TODO: Remove this fixture if you add Celery support.
|
|
"""
|
|
return {}
|
|
|
|
|
|
@pytest.fixture()
|
|
def app(request):
|
|
"""Basic Flask application."""
|
|
instance_path = tempfile.mkdtemp()
|
|
app = Flask("testapp")
|
|
DB = os.getenv("SQLALCHEMY_DATABASE_URI", "sqlite://")
|
|
app.config.update(
|
|
I18N_LANGUAGES=[("en", "English"), ("de", "German")],
|
|
SQLALCHEMY_DATABASE_URI=DB,
|
|
SQLALCHEMY_TRACK_MODIFICATIONS=False,
|
|
)
|
|
Babel(app)
|
|
InvenioDB(app)
|
|
InvenioSearch(app)
|
|
InvenioThemeTugraz(app)
|
|
InvenioI18N(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
|