summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsgurun <sgurun@chromium.org>2014-10-20 09:59:22 -0700
committerCommit bot <commit-bot@chromium.org>2014-10-20 16:59:42 +0000
commitd8e1571cb9fc788aedca3358e8370616fe5991ca (patch)
tree176b71a125c7eec069194c2a1d1f548032f33725
parent5c1f219c38390434dc47e12a451c38703eaea6e1 (diff)
downloadchromium_src-d8e1571cb9fc788aedca3358e8370616fe5991ca.zip
chromium_src-d8e1571cb9fc788aedca3358e8370616fe5991ca.tar.gz
chromium_src-d8e1571cb9fc788aedca3358e8370616fe5991ca.tar.bz2
Add a unit test for viewsource reverse writer handler
The reverse writer for viewsource had an incorrect assumption about the path component of URL which was causing a duplication of query and fragment parameters. This change is to unit test the fix that went in https://codereview.chromium.org/655023002/ BUG=336846 Review URL: https://codereview.chromium.org/659153003 Cr-Commit-Position: refs/heads/master@{#300281}
-rw-r--r--content/browser/browser_url_handler_impl.h1
-rw-r--r--content/browser/browser_url_handler_impl_unittest.cc15
2 files changed, 16 insertions, 0 deletions
diff --git a/content/browser/browser_url_handler_impl.h b/content/browser/browser_url_handler_impl.h
index 95dab97..749b3a1 100644
--- a/content/browser/browser_url_handler_impl.h
+++ b/content/browser/browser_url_handler_impl.h
@@ -46,6 +46,7 @@ class CONTENT_EXPORT BrowserURLHandlerImpl : public BrowserURLHandler {
FRIEND_TEST_ALL_PREFIXES(BrowserURLHandlerImplTest, BasicRewriteAndReverse);
FRIEND_TEST_ALL_PREFIXES(BrowserURLHandlerImplTest, NullHandlerReverse);
+ FRIEND_TEST_ALL_PREFIXES(BrowserURLHandlerImplTest, ViewSourceReverse);
DISALLOW_COPY_AND_ASSIGN(BrowserURLHandlerImpl);
};
diff --git a/content/browser/browser_url_handler_impl_unittest.cc b/content/browser/browser_url_handler_impl_unittest.cc
index 4e8dc21..daceffc 100644
--- a/content/browser/browser_url_handler_impl_unittest.cc
+++ b/content/browser/browser_url_handler_impl_unittest.cc
@@ -79,4 +79,19 @@ TEST_F(BrowserURLHandlerImplTest, NullHandlerReverse) {
ASSERT_EQ("foo://foo", url.spec());
}
+// Verify that the reverse handler for view-source does not duplicate query
+// parameters.
+TEST_F(BrowserURLHandlerImplTest, ViewSourceReverse) {
+ TestBrowserContext browser_context;
+ BrowserURLHandlerImpl handler;
+
+ GURL url("http://foo/?a=1");
+ GURL original_url("view-source:http://some_url");
+ bool reversed = handler.ReverseURLRewrite(&url,
+ original_url,
+ &browser_context);
+ ASSERT_TRUE(reversed);
+ ASSERT_EQ("view-source:http://foo/?a=1", url.spec());
+}
+
} // namespace content