| Index: content/browser/child_process_security_policy_unittest.cc
|
| diff --git a/content/browser/child_process_security_policy_unittest.cc b/content/browser/child_process_security_policy_unittest.cc
|
| index d0a347c996c4fba54c3a1bd64f23052715d51fa5..3da1c80538f613ad05326142e705106f36385bf4 100644
|
| --- a/content/browser/child_process_security_policy_unittest.cc
|
| +++ b/content/browser/child_process_security_policy_unittest.cc
|
| @@ -893,4 +893,29 @@ TEST_F(ChildProcessSecurityPolicyTest, OriginGranting) {
|
| p->Remove(kRendererID);
|
| }
|
|
|
| +// Verifies parsing logic that extracts origins from --isolate-origins.
|
| +TEST_F(ChildProcessSecurityPolicyTest, IsolateOriginsFromCommandLine) {
|
| + // Invalid and unique origins are not permitted.
|
| + auto* policy = ChildProcessSecurityPolicyImpl::GetInstance();
|
| + policy->AddIsolatedOriginsFromCommandLine("foo");
|
| + policy->AddIsolatedOriginsFromCommandLine("");
|
| + policy->AddIsolatedOriginsFromCommandLine("about:blank");
|
| + EXPECT_EQ(0U, policy->isolated_origins_.size());
|
| +
|
| + policy->AddIsolatedOriginsFromCommandLine("http://isolated.foo.com");
|
| + EXPECT_EQ(1U, policy->isolated_origins_.size());
|
| + EXPECT_TRUE(
|
| + policy->IsIsolatedOrigin(url::Origin(GURL("http://isolated.foo.com"))));
|
| +
|
| + policy->AddIsolatedOriginsFromCommandLine(
|
| + "http://a.com,https://b.com,,https://c.com:8000");
|
| + EXPECT_EQ(4U, policy->isolated_origins_.size());
|
| + EXPECT_TRUE(
|
| + policy->IsIsolatedOrigin(url::Origin(GURL("http://isolated.foo.com"))));
|
| + EXPECT_TRUE(policy->IsIsolatedOrigin(url::Origin(GURL("http://a.com"))));
|
| + EXPECT_TRUE(policy->IsIsolatedOrigin(url::Origin(GURL("https://b.com"))));
|
| + EXPECT_TRUE(
|
| + policy->IsIsolatedOrigin(url::Origin(GURL("https://c.com:8000"))));
|
| +}
|
| +
|
| } // namespace content
|
|
|