homelab-codex-ws/services/ha-diag-agent/tests/integration/conftest.py

39 lines
1.1 KiB
Python
Raw Permalink Normal View History

"""Integration test fixtures.
Integration tests require real HA instances. Start them with:
docker compose -f tests/integration/docker-compose.ken.yml up -d
docker compose -f tests/integration/docker-compose.chelsty.yml up -d
tests/integration/scripts/wait-for-ha.sh http://localhost:8123
tests/integration/scripts/wait-for-ha.sh http://localhost:8124
Then set TEST_HA_TOKEN (a long-lived HA token) and run:
pytest tests/ -m integration
All tests in this module are automatically skipped when TEST_HA_TOKEN is unset.
"""
from __future__ import annotations
import os
import pytest
@pytest.fixture(scope="session")
def ha_ken_url() -> str:
return os.getenv("TEST_HA_KEN_URL", "http://localhost:8123")
@pytest.fixture(scope="session")
def ha_chelsty_url() -> str:
return os.getenv("TEST_HA_CHELSTY_URL", "http://localhost:8124")
@pytest.fixture(scope="session")
def ha_token() -> str:
token = os.getenv("TEST_HA_TOKEN", "")
if not token:
pytest.skip("TEST_HA_TOKEN not set — skipping integration tests")
return token