mirror of
https://github.com/servo/servo.git
synced 2025-10-18 01:09:16 +01:00
59 lines
2.3 KiB
JavaScript
59 lines
2.3 KiB
JavaScript
function validate_expectations(key, expected, tag) {
|
|
return fetch("/fetch/metadata/resources/record-header.py?retrieve=true&file=" + key)
|
|
.then(response => response.text())
|
|
.then(text => {
|
|
assert_not_equals(text, "No header has been recorded");
|
|
let value = JSON.parse(text);
|
|
test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`);
|
|
test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`);
|
|
test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`);
|
|
test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`);
|
|
});
|
|
}
|
|
|
|
function validate_expectations_custom_url(url, header, expected, tag) {
|
|
return fetch(url, header)
|
|
.then(response => response.text())
|
|
.then(text => {
|
|
assert_not_equals(text, "No header has been recorded");
|
|
let value = JSON.parse(text);
|
|
test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`);
|
|
test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`);
|
|
test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`);
|
|
test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* @param {object} value
|
|
* @param {object} expected
|
|
* @param {string} tag
|
|
**/
|
|
function assert_header_equals(value, expected, tag) {
|
|
if (typeof(value) === "string"){
|
|
assert_not_equals(value, "No header has been recorded");
|
|
value = JSON.parse(value);
|
|
}
|
|
|
|
test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`);
|
|
test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`);
|
|
test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`);
|
|
test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`);
|
|
}
|
|
|
|
/**
|
|
* @param {object} value
|
|
* @param {string} tag
|
|
**/
|
|
function assert_no_headers(value, tag) {
|
|
if (typeof(value) === "string"){
|
|
if (value == "No header has been recorded") return;
|
|
value = JSON.parse(value);
|
|
}
|
|
|
|
test(t => assert_equals(value.mode, ""), `${tag}: sec-fetch-mode`);
|
|
test(t => assert_equals(value.site, ""), `${tag}: sec-fetch-site`);
|
|
if (expected.hasOwnProperty("user"))
|
|
test(t => assert_equals(value.user, ""), `${tag}: sec-fetch-user`);
|
|
test(t => assert_equals(value.dest, ""), `${tag}: sec-fetch-dest`);
|
|
}
|