Files
composiohq--composio/python/tests/test_cross_sdk_compatibility.py
2026-07-13 12:38:34 +08:00

41 lines
1.2 KiB
Python

"""Cross-SDK compatibility tests.
These tests verify that the Python SDK uses identical fixtures
to the TypeScript SDK, ensuring webhook verification works consistently
across both SDKs.
"""
import json
import pytest
from tests.conftest import get_py_fixtures_dir, get_ts_fixtures_dir
class TestCrossSDKFixtureCompatibility:
"""Tests verifying Python and TypeScript fixtures are synchronized."""
@pytest.mark.parametrize(
"fixture_name",
[
"golden-signatures.json",
"v1-github-push.json",
"v2-github-push.json",
"v3-github-push.json",
],
)
def test_fixtures_are_identical(self, fixture_name: str) -> None:
"""Verify TypeScript and Python fixtures are byte-identical."""
ts_path = get_ts_fixtures_dir() / fixture_name
py_path = get_py_fixtures_dir() / fixture_name
with open(ts_path) as f:
ts_content = json.load(f)
with open(py_path) as f:
py_content = json.load(f)
assert ts_content == py_content, (
f"Fixture {fixture_name} differs between TypeScript and Python SDKs. "
"Ensure fixtures are kept in sync."
)