mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-29 15:52:07 +00:00
Add test and some docs for bug 376660. r=biesi
This commit is contained in:
parent
d51921f72b
commit
258bf44955
@ -54,6 +54,9 @@ interface nsIUnicharStreamLoaderObserver : nsISupports
|
||||
* @param aLength the length of aFirstSegment
|
||||
*
|
||||
* @return charset corresponding to this stream
|
||||
*
|
||||
* @note this method will only be called if the stream loader receives an
|
||||
* OnDataAvailable call.
|
||||
*/
|
||||
ACString onDetermineCharset(in nsIUnicharStreamLoader aLoader,
|
||||
in nsISupports aContext,
|
||||
@ -72,6 +75,9 @@ interface nsIUnicharStreamLoaderObserver : nsISupports
|
||||
* This method will always be called asynchronously by the
|
||||
* nsUnicharIStreamLoader involved, on the thread that called the
|
||||
* loader's init() method.
|
||||
*
|
||||
* @note If the stream loader does not receive an OnDataAvailable call,
|
||||
* aUnicharData will be null, and aStatus will be a success value.
|
||||
*/
|
||||
void onStreamComplete(in nsIUnicharStreamLoader aLoader,
|
||||
in nsISupports aContext,
|
||||
|
37
netwerk/test/unit/test_bug376660.js
Normal file
37
netwerk/test/unit/test_bug376660.js
Normal file
@ -0,0 +1,37 @@
|
||||
var Cc = Components.classes;
|
||||
var Ci = Components.interfaces;
|
||||
|
||||
var listener = {
|
||||
QueryInterface: function listener_qi(iid) {
|
||||
if (iid.equals(Ci.nsISupports) ||
|
||||
iid.equals(Ci.nsIUnicharStreamLoaderObserver)) {
|
||||
return this;
|
||||
}
|
||||
throw Components.results.NS_ERROR_NO_INTERFACE;
|
||||
},
|
||||
onDetermineCharset : function onDetermineCharset(loader, context,
|
||||
data, length)
|
||||
{
|
||||
return "us-ascii";
|
||||
},
|
||||
onStreamComplete : function onStreamComplete (loader, context, status, data)
|
||||
{
|
||||
do_check_eq(status, Components.results.NS_OK);
|
||||
do_check_eq(data, null);
|
||||
do_check_neq(loader.channel, null);
|
||||
do_test_finished();
|
||||
}
|
||||
};
|
||||
|
||||
function run_test() {
|
||||
var f =
|
||||
Cc["@mozilla.org/network/unichar-stream-loader;1"].
|
||||
createInstance(Ci.nsIUnicharStreamLoader);
|
||||
f.init(listener, 4096);
|
||||
|
||||
var ios = Components.classes["@mozilla.org/network/io-service;1"]
|
||||
.getService(Components.interfaces.nsIIOService);
|
||||
var chan = ios.newChannel("data:text/plain,", null, null);
|
||||
chan.asyncOpen(f, null);
|
||||
do_test_pending();
|
||||
}
|
Loading…
Reference in New Issue
Block a user