blob: dc4967ee70691fecc456fa90378e0f2a0aeaaf35 [file] [log] [blame]
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/utils.js"></script>
<script>
const RESOURCES_DIR = "/WebKit/beacon/resources/";
if (window.internals)
internals.settings.setFetchAPIKeepAliveEnabled(false);
function waitForBeaconCompletion()
{
return new Promise(function(resolve, reject) {
if (!internals.inflightBeaconsCount) {
resolve();
return;
}
setTimeout(function() {
waitForBeaconCompletion().then(resolve, reject);
}, 10);
});
}
function createPayload(payloadSize)
{
return new Blob(["*".repeat(payloadSize)]);
}
promise_test(function() {
var id = self.token();
var target = RESOURCES_DIR + "beacon-preflight.py?allowCors=1&cmd=put&id=" + id;
assert_true(navigator.sendBeacon(target, createPayload(10)), "Send beacon");
return waitForBeaconCompletion();
}, "Send Beacon");
</script>