2022-05-17 20:47:55 +00:00
|
|
|
"""Conftest."""
|
2022-05-19 18:38:47 +00:00
|
|
|
import os
|
|
|
|
|
2022-05-17 20:35:38 +00:00
|
|
|
import pytest
|
2022-05-18 16:18:47 +00:00
|
|
|
from flask.app import Flask
|
2022-05-20 15:46:44 +00:00
|
|
|
from typeguard.importhook import install_import_hook
|
2022-05-17 20:47:55 +00:00
|
|
|
|
2022-05-20 15:46:44 +00:00
|
|
|
|
|
|
|
# We need to call this before importing spiff_workflow_webapp
|
|
|
|
# otherwise typeguard cannot work. hence the noqa: E402
|
|
|
|
if os.environ.get("RUN_TYPEGUARD") == "true":
|
|
|
|
install_import_hook(packages="spiff_workflow_webapp")
|
|
|
|
|
|
|
|
|
|
|
|
from spiff_workflow_webapp import create_app # noqa: E402
|
2022-05-17 20:35:38 +00:00
|
|
|
|
|
|
|
|
2022-05-17 20:47:55 +00:00
|
|
|
@pytest.fixture(scope="session")
|
2022-05-18 14:49:20 +00:00
|
|
|
def app() -> Flask:
|
2022-05-17 20:47:55 +00:00
|
|
|
"""App."""
|
2022-05-19 18:38:47 +00:00
|
|
|
os.environ["FLASK_ENV"] = "testing"
|
2022-05-17 20:35:38 +00:00
|
|
|
app = create_app()
|
2022-05-19 20:08:38 +00:00
|
|
|
|
|
|
|
# NOTE: set this here since nox shoves tests and src code to
|
|
|
|
# different places and this allows us to know exactly where we are at the start
|
|
|
|
app.config["BPMN_SPEC_ABSOLUTE_DIR"] = (
|
|
|
|
os.path.join(os.path.dirname(__file__))
|
|
|
|
+ "/tests/spiff_workflow_webapp/files/bpmn_specs"
|
|
|
|
)
|
|
|
|
|
2022-05-17 20:35:38 +00:00
|
|
|
return app
|