forked from mirrors/gecko-dev
		
	 351d147e2f
			
		
	
	
		351d147e2f
		
	
	
	
	
		
			
			Differential Revision: https://phabricator.services.mozilla.com/D44149 --HG-- extra : moz-landing-system : lando
		
			
				
	
	
		
			31 lines
		
	
	
	
		
			958 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			958 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| const gHttpTestRoot = "http://example.com/browser/dom/base/test/";
 | |
| 
 | |
| add_task(async function() {
 | |
|   var statusTexts = [];
 | |
|   var xhr = new XMLHttpRequest();
 | |
|   var observer = {
 | |
|     observe(aSubject, aTopic, aData) {
 | |
|       try {
 | |
|         var channel = aSubject.QueryInterface(Ci.nsIHttpChannel);
 | |
|         channel.getResponseHeader("Location");
 | |
|       } catch (e) {
 | |
|         return;
 | |
|       }
 | |
|       statusTexts.push(xhr.statusText);
 | |
|     },
 | |
|   };
 | |
| 
 | |
|   Services.obs.addObserver(observer, "http-on-examine-response");
 | |
|   await new Promise(resolve => {
 | |
|     xhr.addEventListener("load", function() {
 | |
|       statusTexts.push(this.statusText);
 | |
|       is(statusTexts[0], "", "Empty statusText value for HTTP 302");
 | |
|       is(statusTexts[1], "OK", "OK statusText value for the redirect.");
 | |
|       resolve();
 | |
|     });
 | |
|     xhr.open("GET", gHttpTestRoot + "file_bug1011748_redirect.sjs", true);
 | |
|     xhr.send();
 | |
|   });
 | |
| 
 | |
|   Services.obs.removeObserver(observer, "http-on-examine-response");
 | |
| });
 |