diff options
Diffstat (limited to 'browser/base/content/test/siteIdentity/browser_getSecurityInfo.js')
-rw-r--r-- | browser/base/content/test/siteIdentity/browser_getSecurityInfo.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/browser/base/content/test/siteIdentity/browser_getSecurityInfo.js b/browser/base/content/test/siteIdentity/browser_getSecurityInfo.js new file mode 100644 index 0000000000..b3b086f39d --- /dev/null +++ b/browser/base/content/test/siteIdentity/browser_getSecurityInfo.js @@ -0,0 +1,35 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +const MOZILLA_PKIX_ERROR_BASE = Ci.nsINSSErrorsService.MOZILLA_PKIX_ERROR_BASE; +const MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT = MOZILLA_PKIX_ERROR_BASE + 14; + +add_task(async function test() { + await BrowserTestUtils.withNewTab("about:blank", async function (browser) { + let loaded = BrowserTestUtils.waitForErrorPage(browser); + BrowserTestUtils.loadURIString(browser, "https://self-signed.example.com"); + await loaded; + let securityInfo = gBrowser.securityUI.secInfo; + ok(!securityInfo, "Found no security info"); + + loaded = BrowserTestUtils.browserLoaded(browser); + // eslint-disable-next-line @microsoft/sdl/no-insecure-url + BrowserTestUtils.loadURIString(browser, "http://example.com"); + await loaded; + securityInfo = gBrowser.securityUI.secInfo; + ok(!securityInfo, "Found no security info"); + + loaded = BrowserTestUtils.browserLoaded(browser); + BrowserTestUtils.loadURIString(browser, "https://example.com"); + await loaded; + securityInfo = gBrowser.securityUI.secInfo; + ok(securityInfo, "Found some security info"); + ok(securityInfo.succeededCertChain, "Has a succeeded cert chain"); + is(securityInfo.errorCode, 0, "Has no error code"); + is( + securityInfo.serverCert.commonName, + "example.com", + "Has the correct certificate" + ); + }); +}); |