Source code
Revision control
Copy as Markdown
Other Tools
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
#include "gtest/gtest.h"
#include "mozilla/gtest/MozAssertions.h"
#include "nsIPrincipal.h"
#include "nsScriptSecurityManager.h"
#include "nsNetUtil.h"
TEST(PrincipalHash, DocumentDomain)
{
nsCOMPtr<nsIScriptSecurityManager> ssm =
nsScriptSecurityManager::GetScriptSecurityManager();
nsCOMPtr<nsIPrincipal> principal;
nsresult rv =
EXPECT_NS_SUCCEEDED(rv);
const auto hash = principal->GetHashValue();
nsCOMPtr<nsIURI> domain;
EXPECT_NS_SUCCEEDED(rv);
principal->SetDomain(domain);
ASSERT_EQ(principal->GetHashValue(), hash) << "Principal hash shouldn't change";
}