aip_sdk.TestPlanPage
aip_sdk.TestPlanPage(records: list[TestPlanSummary], total: int)
One page of a test plan listing: its rows, plus total — how many exist behind them.
Shaped like ~aip_sdk.models.RunResultsPage: the same wrap-a-page idiom, for the same
reason. len(page.records) is what this page returned; total is what a hand-written
pager actually needs and a plain list[TestPlanSummary] return could not carry.
What list_test_plans returns; list_test_plan_versions returns a TestPlanVersionPage.
A listing route drops a stored row whose body no longer parses as a plan, and this SDK
skips a row it cannot read, while total still counts both. A page can therefore be
shorter than per_page — or empty — with more pages still to come, so a pager that stops
on a short page truncates the results exactly there. Advance while
page * per_page < total instead, or let iter_test_plans do it for you.
Attributes
recordslist[TestPlanSummary]: The rows on this page.totalint: Stored rows behind this listing, across every page. Always>= len(records)and typically larger; never a count of what this page returned. The stop condition here — the same field onTestPlanVersionPageis not.
Examples
import aip_sdk as aip
page = aip.list_test_plans(workspace_id="ws_001", per_page=20)
for summary in page:
print(summary.name)
print(f"showing {len(page)} of {page.total}")
aip_sdk.TestPlanPage.total
aip_sdk.TestPlanPage.total: int
No docstring is defined in the source.
Inherited members
Inherited from libs/aip-sdk/src/aip_sdk/test_plan.py
aip_sdk.TestPlanPage.records
aip_sdk.TestPlanPage.records: list[TestPlanSummary]
No docstring is defined in the source.