Skip to content

chore: Move and run Python SDK integration tests#1164

Draft
edwinjosechittilappilly wants to merge 10 commits intomainfrom
integration-tests-sdk
Draft

chore: Move and run Python SDK integration tests#1164
edwinjosechittilappilly wants to merge 10 commits intomainfrom
integration-tests-sdk

Conversation

@edwinjosechittilappilly
Copy link
Collaborator

Move the Python SDK integration test to tests/integration/test_sdk.py and update Makefile targets (test-integration, test-ci, test-ci-local, test-sdk) to run that test path. Makefile now sets SDK_TESTS_ONLY=true when invoking pytest so SDK tests target an already-running external stack (removing uv sync/extra setup steps). Add sdks/python as an editable dev dependency in pyproject.toml for local SDK development. Update tests/conftest.py to skip in-process backend setup when SDK_TESTS_ONLY=true to avoid wiping external test state.

Move the Python SDK integration test to tests/integration/test_sdk.py and update Makefile targets (test-integration, test-ci, test-ci-local, test-sdk) to run that test path. Makefile now sets SDK_TESTS_ONLY=true when invoking pytest so SDK tests target an already-running external stack (removing uv sync/extra setup steps). Add sdks/python as an editable dev dependency in pyproject.toml for local SDK development. Update tests/conftest.py to skip in-process backend setup when SDK_TESTS_ONLY=true to avoid wiping external test state.
Replace the path-based editable dev dependency with the package name "openrag-sdk" in the dev dependency group, and add a [tool.uv.sources] entry mapping "openrag-sdk" to the local sdks/python path (editable = true). This keeps the dev dependencies referencing the package name while preserving a local editable source for development and packaging tools.
github-actions bot and others added 2 commits March 17, 2026 13:28
Add explicit installation of the local Python SDK (uv pip install -e sdks/python) to Makefile test targets (test-ci, test-ci-local, test-sdk) so integration tests use the workspace sdks/python in editable mode. Remove openrag-sdk from pyproject dev dependencies, tool.uv sources, and uv.lock so the SDK is no longer declared as a managed dependency and is instead installed at test time.
Move integration tests into tests/integration/core and tests/integration/sdk (add __init__.py files) and update Makefile targets to run the new test layout. Replace single pytest run with separate Core and SDK test runs, add nicer console headings and GitHub Actions ::group:: markers, and adjust SDK test invocations (Python and TypeScript) and waiting/logging behavior in test-ci and test-ci-local. These changes separate core vs SDK test responsibilities and improve CI/console readability.
Add a comprehensive, modular pytest integration suite for the OpenRAG Python SDK. Introduces tests/integration/sdk/conftest.py (onboarding, API key creation/caching, client and test file fixtures) and separate test modules for auth, chat, documents, e2e, errors, filters, models, search, and settings. The old monolithic tests/integration/sdk/test_sdk.py is removed and replaced by these focused async tests. Tests respect SKIP_SDK_INTEGRATION_TESTS and use OPENRAG_URL (default http://localhost:3000).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant