Modern QA2026Sorting and Filtering Validation — tiles
Log inJoin
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)