Commit 15fcbdd
authored
`?filter=` with an empty value must mean "no filter", not "an invalid one".
Four shapes express that; only `{}` and `''` were pinned. `[]` (which #4121
exempts explicitly) and `' '` (which #4181 blanks via .trim(), never
exercised — only `''` was tested) were decisions stated in a comment and held
by nothing, each one line from a rejection: #4121's array branch guards on
`length > 0`, #4181's blank guard calls `.trim()`. This family has moved from
tolerate to reject five times, so the next tightening would silently turn "I
sent no filter" into a 400.
Mutation-checked: dropping `length > 0` fails 1 case, replacing
`.trim() === ''` with `=== ''` fails 2.
This branch originally carried a full query-expression conformance suite;
#4240 landed the sort/select/expand half independently under the same filename
while it waited, which both conflicted and made its KNOWN GAP pins assert
behavior that no longer exists. Only the part #4240 does not cover is kept.
1 parent 23fc3e2 commit 15fcbdd
2 files changed
Lines changed: 32 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
832 | 832 | | |
833 | 833 | | |
834 | 834 | | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
| 846 | + | |
| 847 | + | |
| 848 | + | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
835 | 861 | | |
836 | 862 | | |
837 | 863 | | |
| |||
0 commit comments