Revision control
Copy as Markdown
Other Tools
/* -*- Mode: JavaScript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* ***** BEGIN LICENSE BLOCK *****
 *
 * Any copyright is dedicated to the Public Domain.
 *
 * ***** END LICENSE BLOCK ***** */
var { MailServices } = ChromeUtils.importESModule(
);
function getMessageHeaderFromUrl(aUrl) {
  const msgUrl = Services.io.newURI(aUrl).QueryInterface(Ci.nsIMsgMessageUrl);
  return msgUrl.messageHeader;
}
function run_test() {
  try {
    // msgkey is invalid for news:// protocol
    getMessageHeaderFromUrl(
        "/123@example.invalid?group=test.subscribe.simple&key=abcdefghijk"
    );
    Assert.ok(false);
  } catch (e) {
    Assert.equal(e.result, Cr.NS_ERROR_MALFORMED_URI);
  }
}