forked from mirrors/gecko-dev
Bug 1946105 - Test, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237571
This commit is contained in:
parent
6591785c98
commit
4e2c99bb65
1 changed files with 30 additions and 0 deletions
|
|
@ -75,4 +75,34 @@ add_task(async function () {
|
||||||
!button.disabled,
|
!button.disabled,
|
||||||
"We expect the button to be enabled after the security delay."
|
"We expect the button to be enabled after the security delay."
|
||||||
);
|
);
|
||||||
|
|
||||||
|
info(
|
||||||
|
"Clicking the button should close the notification box and register the protocol."
|
||||||
|
);
|
||||||
|
|
||||||
|
await EventUtils.synthesizeMouseAtCenter(button, {}, window);
|
||||||
|
|
||||||
|
await TestUtils.waitForCondition(
|
||||||
|
() => notificationBox.currentNotification == null,
|
||||||
|
"Waiting for notification to be closed."
|
||||||
|
);
|
||||||
|
|
||||||
|
info("check that the protocol handler has been registered.");
|
||||||
|
const protoSvc = Cc[
|
||||||
|
"@mozilla.org/uriloader/external-protocol-service;1"
|
||||||
|
].getService(Ci.nsIExternalProtocolService);
|
||||||
|
|
||||||
|
let protoInfo = protoSvc.getProtocolHandlerInfo("web+testprotocol");
|
||||||
|
let handlers = protoInfo.possibleApplicationHandlers;
|
||||||
|
is(1, handlers.length, "only one handler registered for web+testprotocol");
|
||||||
|
let handler = handlers.queryElementAt(0, Ci.nsIHandlerApp);
|
||||||
|
ok(handler instanceof Ci.nsIWebHandlerApp, "the handler is a web handler");
|
||||||
|
|
||||||
|
// Cleanup
|
||||||
|
const handlerSvc = Cc["@mozilla.org/uriloader/handler-service;1"].getService(
|
||||||
|
Ci.nsIHandlerService
|
||||||
|
);
|
||||||
|
protoInfo.preferredApplicationHandler = null;
|
||||||
|
handlers.removeElementAt(0);
|
||||||
|
handlerSvc.store(protoInfo);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue