Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(25)

Unified Diff: third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp

Issue 2332263002: Updated suborigin serialization to latest spec proposal (Closed)
Patch Set: Actually disable test Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/WebKit/Source/platform/weborigin/SecurityOrigin.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp
diff --git a/third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp b/third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp
index b2f04e14e087b8d53ed41ccd138c5e2b8b75e2e5..a97e247a4a37b93c8367d08d585067ddf092084b 100644
--- a/third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp
+++ b/third_party/WebKit/Source/platform/weborigin/SecurityOriginTest.cpp
@@ -36,6 +36,7 @@
#include "platform/weborigin/SecurityPolicy.h"
#include "platform/weborigin/Suborigin.h"
#include "testing/gtest/include/gtest/gtest.h"
+#include "url/url_util.h"
#include "wtf/text/StringBuilder.h"
#include "wtf/text/WTFString.h"
@@ -43,7 +44,14 @@ namespace blink {
const int MaxAllowedPort = 65535;
-class SecurityOriginTest : public ::testing::Test { };
+class SecurityOriginTest : public ::testing::Test {
+public:
+ void SetUp() override
+ {
+ url::AddStandardScheme("http-so", url::SCHEME_WITH_PORT);
+ url::AddStandardScheme("https-so", url::SCHEME_WITH_PORT);
+ }
+};
TEST_F(SecurityOriginTest, InvalidPortsCreateUniqueOrigins)
{
@@ -228,25 +236,35 @@ TEST_F(SecurityOriginTest, Suborigins)
EXPECT_TRUE(origin->hasSuborigin());
EXPECT_EQ("foobar", origin->suborigin()->name());
- origin = SecurityOrigin::createFromString("https://foobar_test.com");
+ origin = SecurityOrigin::createFromString("https-so://foobar.test.com");
EXPECT_EQ("https", origin->protocol());
EXPECT_EQ("test.com", origin->host());
EXPECT_EQ("foobar", origin->suborigin()->name());
- origin = SecurityOrigin::createFromString("https://foobar_test.com");
+ origin = SecurityOrigin::createFromString("https-so://foobar.test.com");
EXPECT_TRUE(origin->hasSuborigin());
EXPECT_EQ("foobar", origin->suborigin()->name());
origin = SecurityOrigin::createFromString("https://foobar+test.com");
EXPECT_FALSE(origin->hasSuborigin());
+ origin = SecurityOrigin::createFromString("https.so://foobar+test.com");
+ EXPECT_FALSE(origin->hasSuborigin());
+
origin = SecurityOrigin::createFromString("https://_test.com");
EXPECT_FALSE(origin->hasSuborigin());
+ origin = SecurityOrigin::createFromString("https-so://_test.com");
+ EXPECT_TRUE(origin->hasSuborigin());
+ EXPECT_EQ("_test", origin->suborigin()->name());
+
+ origin = SecurityOrigin::createFromString("https-so-so://foobar.test.com");
+ EXPECT_FALSE(origin->hasSuborigin());
+
origin = adoptRef<SecurityOrigin>(new SecurityOrigin);
EXPECT_FALSE(origin->hasSuborigin());
- origin = SecurityOrigin::createFromString("https://foobar_test.com");
+ origin = SecurityOrigin::createFromString("https-so://foobar.test.com");
Suborigin emptySuborigin;
EXPECT_DEATH(origin->addSuborigin(emptySuborigin), "");
}
@@ -254,22 +272,25 @@ TEST_F(SecurityOriginTest, Suborigins)
TEST_F(SecurityOriginTest, SuboriginsParsing)
{
RuntimeEnabledFeatures::setSuboriginsEnabled(true);
- String host, realHost, suborigin;
+ String protocol, realProtocol, host, realHost, suborigin;
+ protocol = "https";
host = "test.com";
- EXPECT_FALSE(SecurityOrigin::deserializeSuboriginAndHost(host, suborigin, realHost));
+ EXPECT_FALSE(SecurityOrigin::deserializeSuboriginAndProtocolAndHost(protocol, host, suborigin, realProtocol, realHost));
- host = "foobar_test.com";
- EXPECT_TRUE(SecurityOrigin::deserializeSuboriginAndHost(host, suborigin, realHost));
+ protocol = "https-so";
+ host = "foobar.test.com";
+ EXPECT_TRUE(SecurityOrigin::deserializeSuboriginAndProtocolAndHost(protocol, host, suborigin, realProtocol, realHost));
+ EXPECT_EQ("https", realProtocol);
EXPECT_EQ("test.com", realHost);
EXPECT_EQ("foobar", suborigin);
RefPtr<SecurityOrigin> origin;
StringBuilder builder;
- origin = SecurityOrigin::createFromString("https://foobar_test.com");
+ origin = SecurityOrigin::createFromString("https-so://foobar.test.com");
origin->buildRawString(builder, true);
- EXPECT_EQ("https://foobar_test.com", builder.toString());
- EXPECT_EQ("https://foobar_test.com", origin->toString());
+ EXPECT_EQ("https-so://foobar.test.com", builder.toString());
+ EXPECT_EQ("https-so://foobar.test.com", origin->toString());
builder.clear();
origin->buildRawString(builder, false);
EXPECT_EQ("https://test.com", builder.toString());
@@ -281,8 +302,8 @@ TEST_F(SecurityOriginTest, SuboriginsParsing)
origin = SecurityOrigin::createFromString("https://test.com");
origin->addSuborigin(suboriginObj);
origin->buildRawString(builder, true);
- EXPECT_EQ("https://foobar_test.com", builder.toString());
- EXPECT_EQ("https://foobar_test.com", origin->toString());
+ EXPECT_EQ("https-so://foobar.test.com", builder.toString());
+ EXPECT_EQ("https-so://foobar.test.com", origin->toString());
builder.clear();
origin->buildRawString(builder, false);
EXPECT_EQ("https://test.com", builder.toString());
@@ -292,10 +313,10 @@ TEST_F(SecurityOriginTest, SuboriginsParsing)
TEST_F(SecurityOriginTest, SuboriginsIsSameSchemeHostPortAndSuborigin)
{
blink::RuntimeEnabledFeatures::setSuboriginsEnabled(true);
- RefPtr<SecurityOrigin> origin = SecurityOrigin::createFromString("https://foobar_test.com");
- RefPtr<SecurityOrigin> other1 = SecurityOrigin::createFromString("https://bazbar_test.com");
- RefPtr<SecurityOrigin> other2 = SecurityOrigin::createFromString("http://foobar_test.com");
- RefPtr<SecurityOrigin> other3 = SecurityOrigin::createFromString("https://foobar_test.com:1234");
+ RefPtr<SecurityOrigin> origin = SecurityOrigin::createFromString("https-so://foobar.test.com");
+ RefPtr<SecurityOrigin> other1 = SecurityOrigin::createFromString("https-so://bazbar.test.com");
+ RefPtr<SecurityOrigin> other2 = SecurityOrigin::createFromString("http-so://foobar.test.com");
+ RefPtr<SecurityOrigin> other3 = SecurityOrigin::createFromString("https-so://foobar.test.com:1234");
RefPtr<SecurityOrigin> other4 = SecurityOrigin::createFromString("https://test.com");
EXPECT_TRUE(origin->isSameSchemeHostPortAndSuborigin(origin.get()));
@@ -319,9 +340,9 @@ TEST_F(SecurityOriginTest, CanAccess)
TestCase tests[] = {
{ true, true, "https://foobar.com", "https://foobar.com" },
{ false, false, "https://foobar.com", "https://bazbar.com" },
- { true, false, "https://foobar.com", "https://name_foobar.com" },
- { true, false, "https://name_foobar.com", "https://foobar.com" },
- { true, true, "https://name_foobar.com", "https://name_foobar.com" },
+ { true, false, "https://foobar.com", "https-so://name.foobar.com" },
+ { true, false, "https-so://name.foobar.com", "https://foobar.com" },
+ { true, true, "https-so://name.foobar.com", "https-so://name.foobar.com" },
};
for (size_t i = 0; i < WTF_ARRAY_LENGTH(tests); ++i) {
@@ -346,8 +367,8 @@ TEST_F(SecurityOriginTest, CanRequest)
TestCase tests[] = {
{ true, true, "https://foobar.com", "https://foobar.com" },
{ false, false, "https://foobar.com", "https://bazbar.com" },
- { true, false, "https://name_foobar.com", "https://foobar.com" },
- { false, false, "https://name_foobar.com", "https://bazbar.com" },
+ { true, false, "https-so://name.foobar.com", "https://foobar.com" },
+ { false, false, "https-so://name.foobar.com", "https://bazbar.com" },
};
for (size_t i = 0; i < WTF_ARRAY_LENGTH(tests); ++i) {
« no previous file with comments | « third_party/WebKit/Source/platform/weborigin/SecurityOrigin.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698