browser_mixed_content_auto_upgrade_display_console.js (1621B)
1 // Bug 1673574 - Improve Console logging for mixed content auto upgrading 2 "use strict"; 3 4 const testPath = getRootDirectory(gTestPath).replace( 5 "chrome://mochitests/content", 6 "https://example.com" 7 ); 8 9 let remainingMessages = 2; 10 11 const kTestURI = 12 testPath + "file_mixed_content_auto_upgrade_display_console.html"; 13 14 add_task(async function () { 15 // A longer timeout is necessary for this test than the plain mochitests 16 // due to opening a new tab with the web console. 17 requestLongerTimeout(4); 18 19 // Enable HTTPS-Only Mode and register console-listener 20 await SpecialPowers.pushPrefEnv({ 21 set: [["security.mixed_content.upgrade_display_content", true]], 22 }); 23 Services.console.registerListener(on_auto_upgrade_message); 24 25 BrowserTestUtils.startLoadingURIString(gBrowser.selectedBrowser, kTestURI); 26 27 await BrowserTestUtils.waitForCondition(() => remainingMessages == 0); 28 29 Services.console.unregisterListener(on_auto_upgrade_message); 30 }); 31 32 function on_auto_upgrade_message(msgObj) { 33 const message = msgObj.message; 34 35 // The console message is: 36 // "Mixed Content: Upgrading insecure display request 37 // ‘http://example.com/file_mixed_content_auto_upgrade_display_console.jpg’ to use ‘https’" 38 39 if (!message.includes("Mixed Content:")) { 40 return; 41 } 42 ok( 43 message.includes("Upgrading insecure display request"), 44 "msg includes info" 45 ); 46 ok( 47 message.includes("file_mixed_content_auto_upgrade_display_console.jpg") || 48 message.includes( 49 "file_mixed_content_auto_upgrade_display_console_favicon.jpg" 50 ), 51 "msg includes file" 52 ); 53 remainingMessages--; 54 }