dograh/api/tests/test_default_user_configuration.py
Abhishek Kumar 4f2a629340 Initial Commit 🚀 🚀
2025-09-09 14:37:32 +05:30

33 lines
1.1 KiB
Python

import os
import uuid
import pytest
from api.db.user_client import UserClient
from api.services.configuration.registry import ServiceProviders
@pytest.mark.asyncio
async def test_default_configuration_created(db_session):
# Set env variable for openai to simulate availability of default key
os.environ["OPENAI_API_KEY"] = "sk-test-openai-key"
# Ensure deepgram env variable absent to focus test
os.environ.pop("DEEPGRAM_API_KEY", None)
# Generate a unique (random) provider user ID for each test run
test_provider_user_id = f"provider_user_{uuid.uuid4().hex}"
user_client: UserClient = db_session # db_session fixture yields the client
user_model = await user_client.get_or_create_user_by_provider_id(
test_provider_user_id
)
config = await user_client.get_user_configurations(user_model.id)
assert config.llm is not None, "LLM config should be created when env key present"
assert config.llm.provider == ServiceProviders.OPENAI
assert config.llm.api_key == "sk-test-openai-key"
# Cleanup / restore env variable side-effects
os.environ.pop("OPENAI_API_KEY", None)