Files
serenity/Tests/LibWeb/Text/input/URL/url-search-params-sort-utf16-code-units.html
Shannon Booth 85e0c80061 LibWeb: Sort URLSearchParams using UTF-16 code units
We were previously sorting using code points which could give the wrong
result for certain inputs.

Fixes the last two failing tests on:

https://wpt.live/url/urlsearchparams-sort.any.html
(cherry picked from commit d56da8cf9a0298d3e6e3ee8984f60d4a3217183b)
2024-11-09 07:30:40 -05:00

18 lines
524 B
HTML

<script src="../include.js"></script>
<script>
function escapeUnicode(str) {
return str.replace(/[\s\S]/g, function(c) {
return '\\u' + ('0000' + c.charCodeAt(0).toString(16)).slice(-4);
});
}
test(() => {
let params = new URLSearchParams("\uFFFD=x&\uFFFC&\uFFFD=a");
params.sort();
println(params.toString())
for (const [key, value] of params) {
println(`'${escapeUnicode(key)}' => '${escapeUnicode(value)}'`);
}
})
</script>