1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/content/base/test/chrome/test_bug780529.xul Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,40 @@ 1.4 +<?xml version="1.0"?> 1.5 +<?xml-stylesheet type="text/css" href="chrome://global/skin"?> 1.6 +<?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?> 1.7 +<!-- 1.8 +https://bugzilla.mozilla.org/show_bug.cgi?id=780529 1.9 +--> 1.10 +<window title="Mozilla Bug 780529" 1.11 + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 1.12 + <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> 1.13 + 1.14 + <!-- test results are displayed in the html:body --> 1.15 + <body xmlns="http://www.w3.org/1999/xhtml"> 1.16 + <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=780529" 1.17 + target="_blank">Mozilla Bug 780529</a> 1.18 + </body> 1.19 + 1.20 + <!-- test code goes here --> 1.21 + <script type="application/javascript"> 1.22 + <![CDATA[ 1.23 + /** Test for Bug 780529 **/ 1.24 +var req = new XMLHttpRequest(); 1.25 +req.open("GET", "", true); 1.26 +// Have to call send() to get the XHR hooked up as the notification callbacks 1.27 +req.send(); 1.28 +var callbacks = req.channel.notificationCallbacks; 1.29 +var sink = callbacks.getInterface(Components.interfaces.nsIChannelEventSink); 1.30 +ok(sink instanceof Components.interfaces.nsIChannelEventSink, 1.31 + "Should be a channel event sink") 1.32 +ok("asyncOnChannelRedirect" in sink, 1.33 + "Should have the right methods for an event sink"); 1.34 + 1.35 +is(callbacks.getInterface(Components.interfaces.nsIXMLHttpRequest), req, 1.36 + "Should have the right object"); 1.37 +sinkReq = sink.QueryInterface(Components.interfaces.nsIInterfaceRequestor); 1.38 +isnot(sinkReq, callbacks, "Sink should not be the XHR object"); 1.39 +is(sinkReq.getInterface(Components.interfaces.nsIXMLHttpRequest), req, 1.40 + "Should have the XHR object now"); 1.41 + ]]> 1.42 + </script> 1.43 +</window>