mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-05 00:25:27 +00:00
31 lines
966 B
JavaScript
31 lines
966 B
JavaScript
// Test based on submitted one from Peter B Shalimoff
|
|
|
|
var test = function(s, funcName){
|
|
function Arg(){};
|
|
Arg.prototype.toString = function(){
|
|
do_print("Testing " + funcName + " with null args");
|
|
return this.value;
|
|
};
|
|
// create a generic arg lits of null, -1, and 10 nulls
|
|
var args = [s, -1];
|
|
for (var i = 0; i < 10; ++i) {
|
|
args.push(new Arg());
|
|
}
|
|
var up = Components.classes["@mozilla.org/network/url-parser;1?auth=maybe"].getService(Components.interfaces.nsIURLParser);
|
|
try {
|
|
up[funcName].apply(up, args);
|
|
return args;
|
|
} catch (x) {
|
|
do_check_true(true); // make sure it throws an exception instead of crashing
|
|
return x;
|
|
}
|
|
// should always have an exception to catch
|
|
do_check_true(false);
|
|
};
|
|
var s = null;
|
|
var funcs = ["parseAuthority", "parseFileName", "parseFilePath", "parsePath", "parseServerInfo", "parseURL", "parseUserInfo"];
|
|
|
|
function run_test() {
|
|
funcs.forEach(function(f){test(s, f);});
|
|
}
|