зеркало из https://github.com/mozilla/pjs.git
Add test and some docs for bug 376660. r=biesi
This commit is contained in:
Родитель
57a8ef8aeb
Коммит
b1392bb0f0
|
@ -54,6 +54,9 @@ interface nsIUnicharStreamLoaderObserver : nsISupports
|
||||||
* @param aLength the length of aFirstSegment
|
* @param aLength the length of aFirstSegment
|
||||||
*
|
*
|
||||||
* @return charset corresponding to this stream
|
* @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,
|
ACString onDetermineCharset(in nsIUnicharStreamLoader aLoader,
|
||||||
in nsISupports aContext,
|
in nsISupports aContext,
|
||||||
|
@ -72,6 +75,9 @@ interface nsIUnicharStreamLoaderObserver : nsISupports
|
||||||
* This method will always be called asynchronously by the
|
* This method will always be called asynchronously by the
|
||||||
* nsUnicharIStreamLoader involved, on the thread that called the
|
* nsUnicharIStreamLoader involved, on the thread that called the
|
||||||
* loader's init() method.
|
* 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,
|
void onStreamComplete(in nsIUnicharStreamLoader aLoader,
|
||||||
in nsISupports aContext,
|
in nsISupports aContext,
|
||||||
|
|
|
@ -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();
|
||||||
|
}
|
Загрузка…
Ссылка в новой задаче