Skip to content

Update test scenarios for the new paginated GET /subscriptions response #93

Description

@hdamker

Problem description

code/Test_definitions/device-roaming-status-subscriptions-retrieveDeviceRoamingStatusSubscriptionList.feature still tests the old, pre-0.9.0 contract for GET /subscriptions:

  • The happy-path scenarios assert the response body complies with an array of OAS schema defined at "#/components/schemas/Subscription". Since #78, the response is a wrapper object (SubscriptionList: { subscriptions: [...], pagination: {...} }), not a bare array.
  • No scenario exercises the new page / perPage query parameters.
  • The "Error code 400" section is present but empty, even though both parameters are documented as rejecting invalid values with 400 INVALID_ARGUMENT / OUT_OF_RANGE.

Expected action

Update the feature file so it matches the current OpenAPI definition:

  • Change response-body assertions to check the SubscriptionList object (subscriptions array + pagination object), and add assertions for the X-Total-Count / X-Total-Pages / Link response headers.
  • Add scenarios covering page and perPage, including at least one pagination-across-multiple-pages case.
  • Add 400 error scenarios for invalid page / perPage values (below minimum, above maximum), matching the 400 INVALID_ARGUMENT / OUT_OF_RANGE behaviour documented on those parameters.

Additional context

Found during release review of r2.1 (PR #88). This is a test-only gap — the OpenAPI contract itself is sound and matches the Commonalities r4.3 Design Guide pagination pattern. Suggest not blocking r2.1 on this; it can be fixed in a follow-up PR after the release and a second release candidate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions