conftest.py 1.08 KB
Newer Older
1
2
3
4
5
6
"""
pytest configuration for e2e_response_api tests.

This configures pytest to not collect base test classes that are meant to be inherited.
"""

7
import pytest  # noqa: F401
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39


def pytest_collection_modifyitems(config, items):
    """
    Modify test collection to exclude base test classes.

    Base test classes are meant to be inherited, not run directly.
    We exclude any test that comes from these base classes:
    - StateManagementBaseTest
    - ResponseCRUDBaseTest
    - ConversationCRUDBaseTest
    - MCPTests
    - StateManagementTests
    """
    base_class_names = {
        "StateManagementBaseTest",
        "ResponseCRUDBaseTest",
        "ConversationCRUDBaseTest",
        "MCPTests",
        "StateManagementTests",
    }

    # Filter out tests from base classes
    filtered_items = []
    for item in items:
        # Check if the test's parent class is a base class
        parent_name = item.parent.name if hasattr(item, "parent") else None
        if parent_name not in base_class_names:
            filtered_items.append(item)

    # Update items list
    items[:] = filtered_items