Codeception / Codeception/module-rest

Is it possible to type-check the root?

Đang mở
#14 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
PHP
Star
60
Fork
30
Merge trung bình
22 giờ 37 phút
Pull request đã merge (30 ngày)
1

Mô tả

My main intent is to make sure the response contains the number of elements I expect.

My current flow is to grab the json_decoded response and use PHPUnit asserts for that... but it seems suboptimal.
Then I decided to see the JsonType checker, but even by adding a custom filter (for array/string length) it doesn't really help as I can't type-check the actual root as an array - just its entries.

Unfortunately, the API I'm testing doesn't have a root key (i.e. `$.data`), the list is directly returned (e.g. `[ { user_id: x }, { user_id: y } ]`).

I see I can't use the JsonType matcher by design, and changing that could be a breaking change, or an extra argument... Doesn't seem the best?
I wonder if this is such an edge case that I should only care to write something on my own, or if I could submit a PR of something like `seeJsonResponseLengthIs(int $number)`. It would check the response is an indexed array, and then count it.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.