helper.js (1853B)
1 function validate_expectations(key, expected, tag) { 2 return fetch("/fetch/metadata/resources/record-header.py?retrieve=true&file=" + key) 3 .then(response => response.text()) 4 .then(text => { 5 assert_not_equals(text, "No header has been recorded"); 6 let value = JSON.parse(text); 7 test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`); 8 test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`); 9 test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`); 10 test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`); 11 }); 12 } 13 14 function validate_expectations_custom_url(url, header, expected, tag) { 15 return fetch(url, header) 16 .then(response => response.text()) 17 .then(text => { 18 assert_not_equals(text, "No header has been recorded"); 19 let value = JSON.parse(text); 20 test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`); 21 test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`); 22 test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`); 23 test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`); 24 }); 25 } 26 27 /** 28 * @param {object} value 29 * @param {object} expected 30 * @param {string} tag 31 **/ 32 function assert_header_equals(value, expected, tag) { 33 if (typeof(value) === "string"){ 34 assert_not_equals(value, "No header has been recorded"); 35 value = JSON.parse(value); 36 } 37 38 test(t => assert_equals(value.dest, expected.dest), `${tag}: sec-fetch-dest`); 39 test(t => assert_equals(value.mode, expected.mode), `${tag}: sec-fetch-mode`); 40 test(t => assert_equals(value.site, expected.site), `${tag}: sec-fetch-site`); 41 test(t => assert_equals(value.user, expected.user), `${tag}: sec-fetch-user`); 42 }