forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
 | |
| /* Any copyright is dedicated to the Public Domain.
 | |
|    http://creativecommons.org/publicdomain/zero/1.0/ */
 | |
| "use strict";
 | |
| 
 | |
| /**
 | |
|  * Test that warning indicators are shown when appropriate.
 | |
|  */
 | |
| 
 | |
| const TEST_CASES = [
 | |
|   {
 | |
|     desc: "no warnings",
 | |
|     uri: "https://example.com" + CORS_SJS_PATH,
 | |
|     warnCipher: false,
 | |
|   },
 | |
|   {
 | |
|     desc: "cipher warning",
 | |
|     uri: "https://rc4.example.com" + CORS_SJS_PATH,
 | |
|     warnCipher: true,
 | |
|   },
 | |
| ];
 | |
| 
 | |
| add_task(function* () {
 | |
|   let [tab, debuggee, monitor] = yield initNetMonitor(CUSTOM_GET_URL);
 | |
|   let { $, EVENTS, NetMonitorView } = monitor.panelWin;
 | |
|   let { RequestsMenu, NetworkDetails } = NetMonitorView;
 | |
|   RequestsMenu.lazyUpdate = false;
 | |
| 
 | |
|   info("Enabling RC4 for the test.");
 | |
|   yield new promise(resolve => {
 | |
|     SpecialPowers.pushPrefEnv({"set": [
 | |
|       ["security.tls.insecure_fallback_hosts", "rc4.example.com"]
 | |
|     ]}, resolve);
 | |
|   });
 | |
| 
 | |
|   let cipher = $("#security-warning-cipher");
 | |
| 
 | |
|   for (let test of TEST_CASES) {
 | |
|     info("Testing site with " + test.desc);
 | |
| 
 | |
|     info("Performing request to " + test.uri);
 | |
|     debuggee.performRequests(1, test.uri);
 | |
|     yield waitForNetworkEvents(monitor, 1);
 | |
| 
 | |
|     info("Selecting the request.");
 | |
|     RequestsMenu.selectedIndex = 0;
 | |
| 
 | |
|     info("Waiting for details pane to be updated.");
 | |
|     yield monitor.panelWin.once(EVENTS.TAB_UPDATED);
 | |
| 
 | |
|     if (NetworkDetails.widget.selectedIndex !== 5) {
 | |
|       info("Selecting security tab.");
 | |
|       NetworkDetails.widget.selectedIndex = 5;
 | |
| 
 | |
|       info("Waiting for details pane to be updated.");
 | |
|       yield monitor.panelWin.once(EVENTS.TAB_UPDATED);
 | |
|     }
 | |
| 
 | |
|     is(cipher.hidden, !test.warnCipher, "Cipher suite warning is hidden.");
 | |
| 
 | |
|     RequestsMenu.clear();
 | |
| 
 | |
|   }
 | |
| 
 | |
|   yield teardown(monitor);
 | |
| 
 | |
| });
 | 
