add_task(async function test_anonymous_coalescing_sequence() {
let currentPort = 0;
// Test 1: First non-anonymous request
info("Test 1: First non-anonymous request");
let chan = makeChan(`https://foo.example.com:${server.port()}/origin-1`);
let result = await channelOpenPromise(chan); Assert.notEqual(currentPort, result.clientPort);
currentPort = result.clientPort;
// Test 2: Same request to mark connection as experienced
info("Test 2: Second non-anonymous request (same endpoint)");
chan = makeChan(`https://foo.example.com:${server.port()}/origin-1`);
result = await channelOpenPromise(chan); Assert.equal(currentPort, result.clientPort);
// Test 3: Anonymous request should reuse connection
info("Test 3: Anonymous request should reuse connection");
chan = makeChan(`https://foo.example.com:${server.port()}/origin-2`);
result = await channelOpenPromise(chan, Ci.nsIRequest.LOAD_ANONYMOUS); Assert.equal(currentPort, result.clientPort);
// Test 4: Force new connection with anonymous request
info("Test 4: Force new connection with anonymous request");
chan = makeChan(`https://foo.example.com:${server.port()}/origin-3`);
result = await channelOpenPromise(
chan,
Ci.nsIRequest.LOAD_ANONYMOUS | Ci.nsIRequest.LOAD_FRESH_CONNECTION
); Assert.notEqual(currentPort, result.clientPort);
currentPort = result.clientPort;
// Test 5: Same anonymous request to mark connection as experienced
info("Test 5: Same anonymous request (mark connection experienced)");
chan = makeChan(`https://foo.example.com:${server.port()}/origin-3`);
result = await channelOpenPromise(chan, Ci.nsIRequest.LOAD_ANONYMOUS); Assert.equal(currentPort, result.clientPort);
// Test 6: Non-anonymous request should reuse connection
info("Test 6: Non-anonymous request should reuse connection");
chan = makeChan(`https://foo.example.com:${server.port()}/origin-4`);
result = await channelOpenPromise(chan); Assert.equal(currentPort, result.clientPort);
});
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-09-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.