Skip to content

Commit bb3e2cb

Browse files
committed
cp dines
1 parent 3b32f34 commit bb3e2cb

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

src/runloop_api_client/sdk/_types.py

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from typing import Union, Literal, Callable, Iterable, Optional
1+
from typing import Union, Literal, Callable, Optional
22
from typing_extensions import TypedDict
33

44
from ..types import (
@@ -42,8 +42,9 @@
4242
from ..types.devboxes import DiskSnapshotListParams, DiskSnapshotUpdateParams
4343
from ..types.scenarios import ScorerListParams, ScorerCreateParams, ScorerUpdateParams
4444
from ..types.devbox_create_params import DevboxBaseCreateParams
45+
from ..types.axons.sql_batch_params import SqlBatchParams
46+
from ..types.axons.sql_query_params import SqlQueryParams
4547
from ..types.scenario_start_run_params import ScenarioStartRunBaseParams
46-
from ..types.axons.sql_statement_params import SqlStatementParams
4748
from ..types.benchmark_start_run_params import BenchmarkSelfStartRunParams
4849
from ..types.devbox_execute_async_params import DevboxNiceExecuteAsyncParams
4950

@@ -197,17 +198,12 @@ class SDKAxonPublishParams(AxonPublishParams, LongRequestOptions):
197198
pass
198199

199200

200-
class SDKAxonSqlQueryParams(LongRequestOptions, total=False):
201-
sql: str
202-
"""SQL query with ?-style positional placeholders."""
203-
204-
params: list[object]
205-
"""Positional parameter bindings for ? placeholders."""
201+
class SDKAxonSqlQueryParams(SqlQueryParams, LongRequestOptions):
202+
pass
206203

207204

208-
class SDKAxonSqlBatchParams(LongRequestOptions, total=False):
209-
statements: Iterable[SqlStatementParams]
210-
"""The SQL statements to execute atomically within a transaction."""
205+
class SDKAxonSqlBatchParams(SqlBatchParams, LongRequestOptions):
206+
pass
211207

212208

213209
class SDKScenarioListParams(ScenarioListParams, BaseRequestOptions):

tests/smoketests/sdk/test_axon.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,16 @@
33
from __future__ import annotations
44

55
import json
6+
import uuid
67

78
import pytest
89

910
from runloop_api_client.sdk import RunloopSDK
1011

12+
13+
def _unique_table() -> str:
14+
return f"t_{uuid.uuid4().hex[:12]}"
15+
1116
pytestmark = [pytest.mark.smoketest]
1217

1318
THIRTY_SECOND_TIMEOUT = 30
@@ -76,12 +81,13 @@ class TestAxonSql:
7681
def test_sql_query_create_and_select(self, sdk_client: RunloopSDK) -> None:
7782
"""Test creating a table and querying it via sql.query."""
7883
axon = sdk_client.axon.create()
84+
table = _unique_table()
7985

80-
axon.sql.query(sql="CREATE TABLE IF NOT EXISTS smoke_test (id INTEGER PRIMARY KEY, value TEXT)")
86+
axon.sql.query(sql=f"CREATE TABLE {table} (id INTEGER PRIMARY KEY, value TEXT)")
8187

82-
axon.sql.query(sql="INSERT INTO smoke_test (id, value) VALUES (?, ?)", params=[1, "hello"])
88+
axon.sql.query(sql=f"INSERT INTO {table} (id, value) VALUES (?, ?)", params=[1, "hello"])
8389

84-
result = axon.sql.query(sql="SELECT * FROM smoke_test WHERE id = ?", params=[1])
90+
result = axon.sql.query(sql=f"SELECT * FROM {table} WHERE id = ?", params=[1])
8591

8692
assert result.columns is not None
8793
assert len(result.columns) > 0

0 commit comments

Comments
 (0)