gecko/netwerk/test/unit/test_1073747.js

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);});
}