Skip to content

Commit 9a6fe4f

Browse files
Lingling PengLingling Peng
authored andcommitted
move import statement and also fix unit test
1 parent bbdd0a1 commit 9a6fe4f

File tree

2 files changed

+17
-12
lines changed

2 files changed

+17
-12
lines changed

synapseclient/models/table_components.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -934,10 +934,14 @@ class QueryJob(AsynchronousCommunicator):
934934
def to_synapse_request(self) -> Dict[str, Any]:
935935
"""Convert to DownloadFromTableRequest format for async job submission."""
936936

937+
csv_table_descriptor = None
938+
if self.csv_table_descriptor:
939+
csv_table_descriptor = self.csv_table_descriptor.to_synapse_request()
940+
937941
synapse_request = {
938942
"concreteType": QUERY_TABLE_CSV_REQUEST,
939943
"entityId": self.entity_id,
940-
"csvTableDescriptor": self.csv_table_descriptor.to_synapse_request(),
944+
"csvTableDescriptor": csv_table_descriptor,
941945
"sql": self.sql,
942946
"writeHeader": self.write_header,
943947
"includeRowIdAndRowVersion": self.include_row_id_and_row_version,

tests/unit/synapseclient/mixins/unit_test_table_components.py

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@
1717
QUERY_TABLE_CSV_REQUEST,
1818
)
1919
from synapseclient.core.utils import MB
20-
from synapseclient.models import Activity, Column, ColumnType, SumFileSizes
20+
from synapseclient.models import Activity, Column, ColumnType
2121
from synapseclient.models.mixins.table_components import (
2222
ColumnMixin,
2323
DeleteMixin,
2424
FailureStrategy,
2525
GetMixin,
26-
QueryJob,
2726
QueryMixin,
2827
SnapshotRequest,
2928
TableDeleteRowMixin,
@@ -43,13 +42,15 @@
4342
CsvTableDescriptor,
4443
Query,
4544
QueryBundleRequest,
45+
QueryJob,
4646
QueryNextPageToken,
4747
QueryResult,
4848
QueryResultBundle,
4949
QueryResultOutput,
5050
Row,
5151
RowSet,
5252
SelectColumn,
53+
SumFileSizes,
5354
)
5455

5556
POST_COLUMNS_PATCH = "synapseclient.models.mixins.table_components.post_columns"
@@ -1910,11 +1911,11 @@ async def test_query_table_csv_request_generation(self, sample_query):
19101911
assert synapse_request["sql"] == sample_query
19111912
assert synapse_request["writeHeader"] == False
19121913
assert synapse_request["includeRowIdAndRowVersion"] == False
1913-
assert synapse_request["csvTableDescriptor"].is_first_line_header == False
1914-
assert synapse_request["csvTableDescriptor"].quote_character == "'"
1915-
assert synapse_request["csvTableDescriptor"].escape_character == "/"
1916-
assert synapse_request["csvTableDescriptor"].line_end == "\n"
1917-
assert synapse_request["csvTableDescriptor"].separator == ";"
1914+
assert synapse_request["csvTableDescriptor"]["isFirstLineHeader"] == False
1915+
assert synapse_request["csvTableDescriptor"]["quoteCharacter"] == "'"
1916+
assert synapse_request["csvTableDescriptor"]["escapeCharacter"] == "/"
1917+
assert synapse_request["csvTableDescriptor"]["lineEnd"] == "\n"
1918+
assert synapse_request["csvTableDescriptor"]["separator"] == ";"
19181919

19191920
@pytest.mark.asyncio
19201921
async def test_query_table_csv_basic_functionality(
@@ -2450,10 +2451,10 @@ def test_to_synapse_request_csv_descriptor_integration(self, sample_csv_descript
24502451
# THEN verify CsvTableDescriptor is included correctly
24512452
assert "csvTableDescriptor" in result
24522453
csv_desc = result["csvTableDescriptor"]
2453-
assert csv_desc.quote_character == "'"
2454-
assert csv_desc.escape_character == "/"
2455-
assert csv_desc.line_end == "\n"
2456-
assert csv_desc.separator == ";"
2454+
assert csv_desc["quoteCharacter"] == "'"
2455+
assert csv_desc["escapeCharacter"] == "/"
2456+
assert csv_desc["lineEnd"] == "\n"
2457+
assert csv_desc["separator"] == ";"
24572458

24582459
def test_fill_from_dict_with_complete_response(self):
24592460
"""Test fill_from_dict with complete DownloadFromTableResult response."""

0 commit comments

Comments
 (0)