| Index: url/origin_unittest.cc
|
| diff --git a/url/origin_unittest.cc b/url/origin_unittest.cc
|
| index 416e0e35ee56b5a23159c6731dc01fb46f2664ec..ce504411dd881db34317425fafcca411863c7df1 100644
|
| --- a/url/origin_unittest.cc
|
| +++ b/url/origin_unittest.cc
|
| @@ -13,6 +13,26 @@
|
|
|
| namespace {
|
|
|
| +void ExpectParsedComponentEqual(const url::Component& a,
|
| + const url::Component& b) {
|
| + EXPECT_EQ(a.begin, b.begin);
|
| + EXPECT_EQ(a.len, b.len);
|
| +}
|
| +
|
| +void ExpectParsedUrlsEqual(const GURL& a, const GURL& b) {
|
| + DCHECK_EQ(a, b);
|
| + const url::Parsed& a_parsed = a.parsed_for_possibly_invalid_spec();
|
| + const url::Parsed& b_parsed = a.parsed_for_possibly_invalid_spec();
|
| + ExpectParsedComponentEqual(a_parsed.scheme, b_parsed.scheme);
|
| + ExpectParsedComponentEqual(a_parsed.username, b_parsed.username);
|
| + ExpectParsedComponentEqual(a_parsed.password, b_parsed.password);
|
| + ExpectParsedComponentEqual(a_parsed.host, b_parsed.host);
|
| + ExpectParsedComponentEqual(a_parsed.port, b_parsed.port);
|
| + ExpectParsedComponentEqual(a_parsed.path, b_parsed.path);
|
| + ExpectParsedComponentEqual(a_parsed.query, b_parsed.query);
|
| + ExpectParsedComponentEqual(a_parsed.ref, b_parsed.ref);
|
| +}
|
| +
|
| TEST(OriginTest, UniqueOriginComparison) {
|
| url::Origin unique_origin;
|
| EXPECT_EQ("", unique_origin.scheme());
|
| @@ -38,6 +58,8 @@ TEST(OriginTest, UniqueOriginComparison) {
|
| EXPECT_FALSE(origin.IsSameOriginWith(origin));
|
| EXPECT_FALSE(unique_origin.IsSameOriginWith(origin));
|
| EXPECT_FALSE(origin.IsSameOriginWith(unique_origin));
|
| +
|
| + ExpectParsedUrlsEqual(GURL(origin.Serialize()), origin.GetURL());
|
| }
|
| }
|
|
|
| @@ -103,6 +125,8 @@ TEST(OriginTest, ConstructFromGURL) {
|
| EXPECT_TRUE(origin.IsSameOriginWith(origin));
|
| EXPECT_FALSE(different_origin.IsSameOriginWith(origin));
|
| EXPECT_FALSE(origin.IsSameOriginWith(different_origin));
|
| +
|
| + ExpectParsedUrlsEqual(GURL(origin.Serialize()), origin.GetURL());
|
| }
|
| }
|
|
|
| @@ -127,7 +151,10 @@ TEST(OriginTest, Serialization) {
|
| GURL url(test_case.url);
|
| EXPECT_TRUE(url.is_valid());
|
| url::Origin origin(url);
|
| - EXPECT_EQ(test_case.expected, origin.Serialize());
|
| + std::string serialized = origin.Serialize();
|
| + ExpectParsedUrlsEqual(GURL(serialized), origin.GetURL());
|
| +
|
| + EXPECT_EQ(test_case.expected, serialized);
|
|
|
| // The '<<' operator should produce the same serialization as Serialize().
|
| std::stringstream out;
|
| @@ -186,6 +213,8 @@ TEST(OriginTest, UnsafelyCreate) {
|
| EXPECT_EQ(test.port, origin.port());
|
| EXPECT_FALSE(origin.unique());
|
| EXPECT_TRUE(origin.IsSameOriginWith(origin));
|
| +
|
| + ExpectParsedUrlsEqual(GURL(origin.Serialize()), origin.GetURL());
|
| }
|
| }
|
|
|
| @@ -221,6 +250,8 @@ TEST(OriginTest, UnsafelyCreateUniqueOnInvalidInput) {
|
| EXPECT_EQ(0, origin.port());
|
| EXPECT_TRUE(origin.unique());
|
| EXPECT_FALSE(origin.IsSameOriginWith(origin));
|
| +
|
| + ExpectParsedUrlsEqual(GURL(origin.Serialize()), origin.GetURL());
|
| }
|
| }
|
|
|
| @@ -249,6 +280,8 @@ TEST(OriginTest, UnsafelyCreateUniqueViaEmbeddedNulls) {
|
| EXPECT_EQ(0, origin.port());
|
| EXPECT_TRUE(origin.unique());
|
| EXPECT_FALSE(origin.IsSameOriginWith(origin));
|
| +
|
| + ExpectParsedUrlsEqual(GURL(origin.Serialize()), origin.GetURL());
|
| }
|
| }
|
|
|
|
|