from unittest.mock import Mock import pytest from getstream_connector import get_client from tests import constants @pytest.mark.parametrize( "client_cls, use_async", ( ("SyncStreamClient", False), ("AsyncStreamClient", True), ), ) def test_init(mocker, client_cls, use_async): mock_client = mocker.patch(f"getstream_connector.{client_cls}", return_value=Mock()) mock_throttler = Mock() client = get_client( constants.API_KEY, constants.API_SECRET, location=constants.LOCATION, throttler=mock_throttler, use_async=use_async, ) assert client == mock_client.return_value mock_client.assert_called_once_with( api_key=constants.API_KEY, api_secret=constants.API_SECRET, app_id=None, location=constants.LOCATION, throttler=mock_throttler, inject_trace_context=True, inject_correlation_id=True, )