From 414920e71363c9cf1e4dce2fd444c19d9d2fe8c4 Mon Sep 17 00:00:00 2001 From: mkwst Date: Mon, 27 Jul 2015 22:30:07 -0700 Subject: Use 'GURL::GetContent()' to process 'blob:' URLs' origins. BUG=490074 Review URL: https://codereview.chromium.org/1257603002 Cr-Commit-Position: refs/heads/master@{#340643} --- url/gurl_unittest.cc | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'url/gurl_unittest.cc') diff --git a/url/gurl_unittest.cc b/url/gurl_unittest.cc index bea1a0c..1a8088b 100644 --- a/url/gurl_unittest.cc +++ b/url/gurl_unittest.cc @@ -642,4 +642,29 @@ TEST(GURLTest, SchemeIsBlob) { EXPECT_FALSE(GURL("http://bar/").SchemeIsBlob()); } +TEST(GURLTest, ContentAndPathForNonStandardURLs) { + struct TestCase { + const char* url; + const char* expected; + } cases[] = { + {"null", ""}, + {"not-a-standard-scheme:this is arbitrary content", + "this is arbitrary content"}, + {"view-source:http://example.com/path", "http://example.com/path"}, + {"blob:http://example.com/GUID", "http://example.com/GUID"}, + {"blob://http://example.com/GUID", "//http://example.com/GUID"}, + {"blob:http://user:password@example.com/GUID", + "http://user:password@example.com/GUID"}, + + // TODO(mkwst): This seems like a bug. https://crbug.com/513600 + {"filesystem:http://example.com/path", "/"}, + }; + + for (const auto& test : cases) { + GURL url(test.url); + EXPECT_EQ(test.expected, url.path()) << test.url; + EXPECT_EQ(test.expected, url.GetContent()) << test.url; + } +} + } // namespace url -- cgit v1.1