var counter = 0;
onmessage = function(e) {
    if (e.data !== "start")
        return;

    var promise1 = fetch("/misc/resources/delayed-log.py?delay=100").then(() => {
        postMessage("FAIL: promise 1 resolved");
    }, () => {
        postMessage("FAIL: promise 1 rejected");
    });

    var stream = new ReadableStream({"start": function(controller) {
        controller.enqueue(new Uint8Array(1));
        // Not closing the stream so that below promise will not fulfill.
    }});
    var promise2 = new Response(stream).text().then(() => {
        postMessage("FAIL: promise 2 resolved");
    }, () => {
        postMessage("FAIL: promise 2 rejected");
    });

    var promise3 = new Request("test", {method: "POST", body: new Blob(["ab"])}).text().then(() => {
        // Not posting message as it could make the test flaky since we are not sure the test will end before the blob load finishes.
    }, () => {
        postMessage("FAIL: promise 3 rejected");
    });

    postMessage(counter++);
}
