mirror of
https://github.com/servo/servo.git
synced 2025-08-17 19:35:33 +01:00
Update web-platform-tests to revision 132d12daea699ce266324e79eecbe59b10e56502
This commit is contained in:
parent
527d874bc1
commit
fe00a63040
1004 changed files with 18598 additions and 92770 deletions
|
@ -50,11 +50,28 @@ def main(request, response):
|
|||
response.headers.set("Cache-Control", "no-cache")
|
||||
|
||||
range_header = request.headers.get('Range', '')
|
||||
range_header_match = range_header and re.search(r'^bytes=(\d*)-(\d*)$', range_header)
|
||||
range_received_key = request.GET.first('range-received-key', '')
|
||||
accept_encoding_key = request.GET.first('accept-encoding-key', '')
|
||||
|
||||
if range_received_key and range_header:
|
||||
# Remove any current value
|
||||
request.server.stash.take(range_received_key, '/fetch/range/')
|
||||
# This is later collected using stash-take.py
|
||||
request.stash.put(range_received_key, 'range-header-received', '/fetch/range/')
|
||||
request.server.stash.put(range_received_key, 'range-header-received', '/fetch/range/')
|
||||
|
||||
if accept_encoding_key:
|
||||
# Remove any current value
|
||||
request.server.stash.take(
|
||||
accept_encoding_key,
|
||||
'/fetch/range/'
|
||||
)
|
||||
# This is later collected using stash-take.py
|
||||
request.server.stash.put(
|
||||
accept_encoding_key,
|
||||
request.headers.get('Accept-Encoding', ''),
|
||||
'/fetch/range/'
|
||||
)
|
||||
|
||||
# Audio details
|
||||
sample_rate = 8000
|
||||
|
@ -66,9 +83,9 @@ def main(request, response):
|
|||
bytes_remaining_to_send = total_length
|
||||
initial_write = ''
|
||||
|
||||
if range_header:
|
||||
if range_header_match:
|
||||
response.status = 206
|
||||
start, end = re.search(r'^bytes=(\d*)-(\d*)$', range_header).groups()
|
||||
start, end = range_header_match.groups()
|
||||
|
||||
start = int(start)
|
||||
end = int(end) if end else 0
|
||||
|
|
|
@ -31,6 +31,9 @@ addEventListener('fetch', event => {
|
|||
case 'use-stored-ranged-response':
|
||||
useStoredRangeResponse(event);
|
||||
return;
|
||||
case 'broadcast-accept-encoding':
|
||||
broadcastAcceptEncoding(event);
|
||||
return;
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -108,7 +111,7 @@ function rangeHeaderPassthroughTest(event) {
|
|||
promise_test(async () => {
|
||||
await fetch(event.request);
|
||||
const response = await fetch('stash-take.py?key=' + key);
|
||||
assert_equals(await response.json(), '"range-header-received"');
|
||||
assert_equals(await response.json(), 'range-header-received');
|
||||
resolve();
|
||||
}, `Include range header in network request`);
|
||||
|
||||
|
@ -140,3 +143,17 @@ function useStoredRangeResponse(event) {
|
|||
return response.clone();
|
||||
}());
|
||||
}
|
||||
|
||||
function broadcastAcceptEncoding(event) {
|
||||
/** @type Request */
|
||||
const request = event.request;
|
||||
const id = new URL(request.url).searchParams.get('id');
|
||||
|
||||
broadcast({
|
||||
id,
|
||||
acceptEncoding: request.headers.get('Accept-Encoding')
|
||||
});
|
||||
|
||||
// Just send back any response, it isn't important for the test.
|
||||
event.respondWith(new Response(''));
|
||||
}
|
||||
|
|
|
@ -7,3 +7,18 @@ function loadScript(url, { doc = document }={}) {
|
|||
doc.body.appendChild(script);
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {Document} document
|
||||
* @param {string|URL} url
|
||||
* @returns {HTMLAudioElement}
|
||||
*/
|
||||
function appendAudio(document, url) {
|
||||
const audio = document.createElement('audio');
|
||||
audio.muted = true;
|
||||
audio.src = url;
|
||||
audio.preload = true;
|
||||
document.body.appendChild(audio);
|
||||
return audio;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue