blob: 3602ff74302ddd7af1ddc087c252f85c03202a52 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
(async function() {
TestRunner.addResult('Tests the signed exchange information are available when the prefetch failed.\n');
await TestRunner.loadModule('network_test_runner');
await TestRunner.loadModule('console_test_runner');
await TestRunner.showPanel('network');
SDK.NetworkLog.instance().reset();
const promise = new Promise(resolve => {
TestRunner.addSniffer(SDK.NetworkDispatcher.prototype, 'loadingFailed', loadingFailed, true);
function loadingFailed(requestId, time, localizedDescription, canceled) {
var request = SDK.NetworkLog.instance().requestByManagerAndId(TestRunner.networkManager, requestId);
if (/sxg-invalid-validity-url\.sxg/.exec(request.url()))
resolve();
}
});
TestRunner.evaluateInPage(`
(function () {
const link = document.createElement('link');
link.rel = 'prefetch';
link.href = '/loading/sxg/resources/sxg-invalid-validity-url.sxg';
document.body.appendChild(link);
})()
`);
await promise;
NetworkTestRunner.dumpNetworkRequestsWithSignedExchangeInfo();
TestRunner.completeTest();
})();