blob: c930514e7e4bcf595af0d724e7a54e5fd6db931a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
// 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);});
}
|