mirror of
https://github.com/anomalyco/opencode-sdk-python.git
synced 2026-04-28 12:39:54 +00:00
feat(api): update via SDK Studio
This commit is contained in:
parent
3afcacf5f9
commit
ce2269062c
20 changed files with 925 additions and 60 deletions
|
|
@ -9,7 +9,7 @@ import pytest
|
|||
|
||||
from opencode_ai import Opencode, AsyncOpencode
|
||||
from tests.utils import assert_matches_type
|
||||
from opencode_ai.types import FileSearchResponse
|
||||
from opencode_ai.types import FileReadResponse, FileStatusResponse
|
||||
|
||||
base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
|
||||
|
||||
|
|
@ -19,35 +19,63 @@ class TestFile:
|
|||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_method_search(self, client: Opencode) -> None:
|
||||
file = client.file.search(
|
||||
query="query",
|
||||
def test_method_read(self, client: Opencode) -> None:
|
||||
file = client.file.read(
|
||||
path="path",
|
||||
)
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_raw_response_search(self, client: Opencode) -> None:
|
||||
response = client.file.with_raw_response.search(
|
||||
query="query",
|
||||
def test_raw_response_read(self, client: Opencode) -> None:
|
||||
response = client.file.with_raw_response.read(
|
||||
path="path",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
file = response.parse()
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_streaming_response_search(self, client: Opencode) -> None:
|
||||
with client.file.with_streaming_response.search(
|
||||
query="query",
|
||||
def test_streaming_response_read(self, client: Opencode) -> None:
|
||||
with client.file.with_streaming_response.read(
|
||||
path="path",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
file = response.parse()
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_method_status(self, client: Opencode) -> None:
|
||||
file = client.file.status()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_raw_response_status(self, client: Opencode) -> None:
|
||||
response = client.file.with_raw_response.status()
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
file = response.parse()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_streaming_response_status(self, client: Opencode) -> None:
|
||||
with client.file.with_streaming_response.status() as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
file = response.parse()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
|
|
@ -59,34 +87,62 @@ class TestAsyncFile:
|
|||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_method_search(self, async_client: AsyncOpencode) -> None:
|
||||
file = await async_client.file.search(
|
||||
query="query",
|
||||
async def test_method_read(self, async_client: AsyncOpencode) -> None:
|
||||
file = await async_client.file.read(
|
||||
path="path",
|
||||
)
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_raw_response_search(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.file.with_raw_response.search(
|
||||
query="query",
|
||||
async def test_raw_response_read(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.file.with_raw_response.read(
|
||||
path="path",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
file = await response.parse()
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_streaming_response_search(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.file.with_streaming_response.search(
|
||||
query="query",
|
||||
async def test_streaming_response_read(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.file.with_streaming_response.read(
|
||||
path="path",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
file = await response.parse()
|
||||
assert_matches_type(FileSearchResponse, file, path=["response"])
|
||||
assert_matches_type(FileReadResponse, file, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_method_status(self, async_client: AsyncOpencode) -> None:
|
||||
file = await async_client.file.status()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_raw_response_status(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.file.with_raw_response.status()
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
file = await response.parse()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_streaming_response_status(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.file.with_streaming_response.status() as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
file = await response.parse()
|
||||
assert_matches_type(FileStatusResponse, file, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
|
|
|||
232
tests/api_resources/test_find.py
Normal file
232
tests/api_resources/test_find.py
Normal file
|
|
@ -0,0 +1,232 @@
|
|||
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
from typing import Any, cast
|
||||
|
||||
import pytest
|
||||
|
||||
from opencode_ai import Opencode, AsyncOpencode
|
||||
from tests.utils import assert_matches_type
|
||||
from opencode_ai.types import (
|
||||
FindTextResponse,
|
||||
FindFilesResponse,
|
||||
FindSymbolsResponse,
|
||||
)
|
||||
|
||||
base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
|
||||
|
||||
|
||||
class TestFind:
|
||||
parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_method_files(self, client: Opencode) -> None:
|
||||
find = client.find.files(
|
||||
query="query",
|
||||
)
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_raw_response_files(self, client: Opencode) -> None:
|
||||
response = client.find.with_raw_response.files(
|
||||
query="query",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = response.parse()
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_streaming_response_files(self, client: Opencode) -> None:
|
||||
with client.find.with_streaming_response.files(
|
||||
query="query",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = response.parse()
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_method_symbols(self, client: Opencode) -> None:
|
||||
find = client.find.symbols(
|
||||
query="query",
|
||||
)
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_raw_response_symbols(self, client: Opencode) -> None:
|
||||
response = client.find.with_raw_response.symbols(
|
||||
query="query",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = response.parse()
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_streaming_response_symbols(self, client: Opencode) -> None:
|
||||
with client.find.with_streaming_response.symbols(
|
||||
query="query",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = response.parse()
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_method_text(self, client: Opencode) -> None:
|
||||
find = client.find.text(
|
||||
pattern="pattern",
|
||||
)
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_raw_response_text(self, client: Opencode) -> None:
|
||||
response = client.find.with_raw_response.text(
|
||||
pattern="pattern",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = response.parse()
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
def test_streaming_response_text(self, client: Opencode) -> None:
|
||||
with client.find.with_streaming_response.text(
|
||||
pattern="pattern",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = response.parse()
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
|
||||
class TestAsyncFind:
|
||||
parametrize = pytest.mark.parametrize(
|
||||
"async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
|
||||
)
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_method_files(self, async_client: AsyncOpencode) -> None:
|
||||
find = await async_client.find.files(
|
||||
query="query",
|
||||
)
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_raw_response_files(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.find.with_raw_response.files(
|
||||
query="query",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_streaming_response_files(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.find.with_streaming_response.files(
|
||||
query="query",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindFilesResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_method_symbols(self, async_client: AsyncOpencode) -> None:
|
||||
find = await async_client.find.symbols(
|
||||
query="query",
|
||||
)
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_raw_response_symbols(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.find.with_raw_response.symbols(
|
||||
query="query",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_streaming_response_symbols(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.find.with_streaming_response.symbols(
|
||||
query="query",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindSymbolsResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_method_text(self, async_client: AsyncOpencode) -> None:
|
||||
find = await async_client.find.text(
|
||||
pattern="pattern",
|
||||
)
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_raw_response_text(self, async_client: AsyncOpencode) -> None:
|
||||
response = await async_client.find.with_raw_response.text(
|
||||
pattern="pattern",
|
||||
)
|
||||
|
||||
assert response.is_closed is True
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
@pytest.mark.skip()
|
||||
@parametrize
|
||||
async def test_streaming_response_text(self, async_client: AsyncOpencode) -> None:
|
||||
async with async_client.find.with_streaming_response.text(
|
||||
pattern="pattern",
|
||||
) as response:
|
||||
assert not response.is_closed
|
||||
assert response.http_request.headers.get("X-Stainless-Lang") == "python"
|
||||
|
||||
find = await response.parse()
|
||||
assert_matches_type(FindTextResponse, find, path=["response"])
|
||||
|
||||
assert cast(Any, response.is_closed) is True
|
||||
Loading…
Add table
Add a link
Reference in a new issue