mirror of
https://github.com/langgenius/dify.git
synced 2026-11-11 13:51:25 +08:00
29 lines
944 B
Python
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
|