Files
dify/api/tests/conftest.py

29 lines
944 B
Python

import gc
import os
from collections.abc import Iterator
import pytest
from core.app.workflow.file_runtime import create_dify_workflow_file_runtime
from graphon.file.runtime import use_workflow_file_runtime
# Tests select an explicit deployment event transport.
os.environ.setdefault("HUMAN_INPUT_IM_EVENT_TRANSPORT_MODE", "WEBHOOK")
def pytest_collection_finish(session: pytest.Session) -> None:
"""Move everything loaded during collection out of the garbage collector's reach.
Collection imports the whole application, so every automatic full collection afterwards
rescanned those long-lived objects and stalled whichever test triggered it. Objects created
by tests themselves are still collected normally.
"""
gc.collect()
gc.freeze()
@pytest.fixture(autouse=True)
def _bind_workflow_file_runtime() -> Iterator[None]:
with use_workflow_file_runtime(create_dify_workflow_file_runtime()):
yield