2015-09-15 21:19:45 +03:00
|
|
|
var ioService = Cc["@mozilla.org/network/io-service;1"]
|
2010-08-03 03:37:55 +04:00
|
|
|
.getService(Ci.nsIIOService);
|
2015-09-15 21:19:45 +03:00
|
|
|
var resProt = ioService.getProtocolHandler("resource")
|
2010-08-03 03:37:55 +04:00
|
|
|
.QueryInterface(Ci.nsIResProtocolHandler);
|
|
|
|
|
|
|
|
function run_test() {
|
|
|
|
// Define a resource:// alias that points to another resource:// URI.
|
2017-01-09 22:27:26 +03:00
|
|
|
let greModulesURI = ioService.newURI("resource://gre/modules/");
|
2010-08-03 03:37:55 +04:00
|
|
|
resProt.setSubstitution("my-gre-modules", greModulesURI);
|
|
|
|
|
|
|
|
// When we ask for the alias, we should not get the resource://
|
|
|
|
// URI that we registered it for but the original file URI.
|
|
|
|
let greFileSpec = ioService.newURI("modules/", null,
|
|
|
|
resProt.getSubstitution("gre")).spec;
|
|
|
|
let aliasURI = resProt.getSubstitution("my-gre-modules");
|
|
|
|
do_check_eq(aliasURI.spec, greFileSpec);
|
|
|
|
|
|
|
|
// Resolving URIs using the original resource path and the alias
|
|
|
|
// should yield the same result.
|
2017-01-09 22:27:26 +03:00
|
|
|
let greNetUtilURI = ioService.newURI("resource://gre/modules/NetUtil.jsm");
|
|
|
|
let myNetUtilURI = ioService.newURI("resource://my-gre-modules/NetUtil.jsm");
|
2010-08-03 03:37:55 +04:00
|
|
|
do_check_eq(resProt.resolveURI(greNetUtilURI),
|
|
|
|
resProt.resolveURI(myNetUtilURI));
|
|
|
|
}
|