Skip to content

Commit 9daca6d

Browse files
fix: exclude start and limit from params if not provided
1 parent f5838a9 commit 9daca6d

2 files changed

Lines changed: 41 additions & 1 deletion

File tree

packages/uipath-platform/src/uipath/platform/entities/_entities_service.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1115,12 +1115,17 @@ def _list_records_spec(
11151115
start: Optional[int] = None,
11161116
limit: Optional[int] = None,
11171117
) -> RequestSpec:
1118+
params: dict[str, Any] = {}
1119+
if start is not None:
1120+
params["start"] = start
1121+
if limit is not None:
1122+
params["limit"] = limit
11181123
return RequestSpec(
11191124
method="GET",
11201125
endpoint=Endpoint(
11211126
f"datafabric_/api/EntityService/entity/{entity_key}/read"
11221127
),
1123-
params=({"start": start, "limit": limit}),
1128+
params=params,
11241129
)
11251130

11261131
def _query_entity_records_spec(

packages/uipath-platform/tests/services/test_entities_service.py

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,41 @@ def test_retrieve_records_with_optional_fields(
267267
limit=1,
268268
)
269269

270+
def test_retrieve_records_without_start_and_limit(
271+
self,
272+
httpx_mock: HTTPXMock,
273+
service: EntitiesService,
274+
base_url: str,
275+
org: str,
276+
tenant: str,
277+
version: str,
278+
) -> None:
279+
entity_key = uuid.uuid4()
280+
httpx_mock.add_response(
281+
url=f"{base_url}{org}{tenant}/datafabric_/api/EntityService/entity/{str(entity_key)}/read",
282+
status_code=200,
283+
json={
284+
"totalCount": 1,
285+
"value": [
286+
{"Id": "12345", "name": "record_name", "integer_field": 10},
287+
],
288+
},
289+
)
290+
291+
records = service.list_records(entity_key=str(entity_key))
292+
293+
sent_request = httpx_mock.get_request()
294+
if sent_request is None:
295+
raise Exception("No request was sent")
296+
297+
# Verify no start or limit query params are sent
298+
assert "start" not in str(sent_request.url.params)
299+
assert "limit" not in str(sent_request.url.params)
300+
301+
assert isinstance(records, list)
302+
assert len(records) == 1
303+
assert records[0].id == "12345"
304+
270305
@pytest.mark.parametrize(
271306
"sql_query",
272307
[

0 commit comments

Comments
 (0)