blob: 3a8aef3c742b68348fa2c27303e297e8386768b3 [file] [log] [blame]
// META: timeout=long
// META: script=/common/utils.js
// META: script=beacon-common.sub.js
"use strict";
// Execute each sample test per redirect status code.
// Note that status codes 307 and 308 are the only codes that will maintain POST data
// through a redirect.
[307, 308].forEach(function(status) {
// Implement the self.buildTargetUrl extension to inject a redirect to
// the sendBeacon target.
self.buildTargetUrl = function(targetUrl) {
return `/common/redirect.py?status=${status}&location=${encodeURIComponent(targetUrl)}`;
};
const tests = [];
for (const test of sampleTests) {
const copy = Object.assign({}, test);
copy.id = `${test.id}-${status}`;
tests.push(copy);
}
runTests(tests);
});
done();