21 / 65 · 14 API Testing Fundamentals · Response Validation← prev⊞ allnext →☰ Read as one page
3.5Sorting and Filtering Validation
def test_sort_by_created_at_descending(api):
r = api.get("/users?sort=-created_at")
items = r.json()["items"]
dates = [item["created_at"] for item in items]
assert dates == sorted(dates, reverse=True), "Items not sorted by created_at desc"
def test_filter_by_role(api, create_user):
create_user(role="admin")
create_user(role="viewer")
r = api.get("/users?role=admin")
items = r.json()["items"]
assert all(u["role"] == "admin" for u in items), "Filter returned non-admin users"
def test_search_query(api, create_user):
create_user(name="UniqueSearchName123")
r = api.get("/users?q=UniqueSearchName123")
items = r.json()["items"]
assert len(items) >= 1
assert any(u["name"] == "UniqueSearchName123" for u in items)