Source code for socialseed_e2e.core.models

from typing import Any, Dict, Optional, Protocol, runtime_checkable

from pydantic import BaseModel, Field


[docs] class ServiceConfig(BaseModel): """Configuration for a specific service.""" name: str base_url: str default_headers: Dict[str, str] = Field(default_factory=dict) timeout: int = 30000 extra: Dict[str, Any] = Field(default_factory=dict)
[docs] class TestContext(BaseModel): """Generic context for test execution.""" env: str = "dev" services: Dict[str, ServiceConfig] = Field(default_factory=dict) metadata: Dict[str, Any] = Field(default_factory=dict)
[docs] def get_service(self, name: str) -> Optional[ServiceConfig]: return self.services.get(name)