Migrating tests to use EmbeddedTestServer (/chrome/browser misc)

- Moving tests to use EmbeddedTestServer where possible.
- net::test_server::EmbeddedTestServer references to net::EmbeddedTestServer
- Using server.Start() instead of server.InitializeAndWaitUntilReady()
- Renaming test_server() to be spawned_test_server() or embedded_test_server()
- Enabling tests disabled due to SpawnedTestServer compatibility

BUG=496825
[email protected],[email protected]

Review URL: https://codereview.chromium.org/1409163006

Cr-Commit-Position: refs/heads/master@{#360358}
diff --git a/chrome/browser/extensions/subscribe_page_action_browsertest.cc b/chrome/browser/extensions/subscribe_page_action_browsertest.cc
index 1e9c7b62..c257c5c 100644
--- a/chrome/browser/extensions/subscribe_page_action_browsertest.cc
+++ b/chrome/browser/extensions/subscribe_page_action_browsertest.cc
@@ -11,6 +11,7 @@
 #include "content/public/test/browser_test_utils.h"
 #include "extensions/common/constants.h"
 #include "extensions/common/extension.h"
+#include "net/test/embedded_test_server/embedded_test_server.h"
 
 using content::WebContents;
 using extensions::Extension;
@@ -18,21 +19,21 @@
 namespace {
 
 const char kSubscribePage[] = "/subscribe.html";
-const char kFeedPageMultiRel[] = "files/feeds/feed_multi_rel.html";
-const char kValidFeedNoLinks[] = "files/feeds/feed_nolinks.xml";
-const char kValidFeed0[] = "files/feeds/feed_script.xml";
-const char kValidFeed1[] = "files/feeds/feed1.xml";
-const char kValidFeed2[] = "files/feeds/feed2.xml";
-const char kValidFeed3[] = "files/feeds/feed3.xml";
-const char kValidFeed4[] = "files/feeds/feed4.xml";
-const char kValidFeed5[] = "files/feeds/feed5.xml";
-const char kValidFeed6[] = "files/feeds/feed6.xml";
-const char kInvalidFeed1[] = "files/feeds/feed_invalid1.xml";
-const char kInvalidFeed2[] = "files/feeds/feed_invalid2.xml";
+const char kFeedPageMultiRel[] = "/feeds/feed_multi_rel.html";
+const char kValidFeedNoLinks[] = "/feeds/feed_nolinks.xml";
+const char kValidFeed0[] = "/feeds/feed_script.xml";
+const char kValidFeed1[] = "/feeds/feed1.xml";
+const char kValidFeed2[] = "/feeds/feed2.xml";
+const char kValidFeed3[] = "/feeds/feed3.xml";
+const char kValidFeed4[] = "/feeds/feed4.xml";
+const char kValidFeed5[] = "/feeds/feed5.xml";
+const char kValidFeed6[] = "/feeds/feed6.xml";
+const char kInvalidFeed1[] = "/feeds/feed_invalid1.xml";
+const char kInvalidFeed2[] = "/feeds/feed_invalid2.xml";
 // We need a triple encoded string to prove that we are not decoding twice in
 // subscribe.js because one layer is also stripped off when subscribe.js passes
 // it to the XMLHttpRequest object.
-const char kFeedTripleEncoded[] = "files/feeds/url%25255Fdecoding.html";
+const char kFeedTripleEncoded[] = "/feeds/url%25255Fdecoding.html";
 
 static const char kScriptFeedTitle[] =
     "window.domAutomationController.send("
@@ -59,8 +60,10 @@
     "    \"No error\""
     ");";
 
-GURL GetFeedUrl(net::SpawnedTestServer* server, const std::string& feed_page,
-                bool direct_url, std::string extension_id) {
+GURL GetFeedUrl(net::EmbeddedTestServer* server,
+                const std::string& feed_page,
+                bool direct_url,
+                std::string extension_id) {
   GURL feed_url = server->GetURL(feed_page);
   if (direct_url) {
     // We navigate directly to the subscribe page for feeds where the feed
@@ -94,7 +97,7 @@
 // extension to kick in, detect the feed and redirect to a feed preview page.
 // |sniff_xml_type| is generally set to true if the feed is sniffable and false
 // for invalid feeds.
-void NavigateToFeedAndValidate(net::SpawnedTestServer* server,
+void NavigateToFeedAndValidate(net::EmbeddedTestServer* server,
                                const std::string& url,
                                Browser* browser,
                                std::string extension_id,
@@ -126,7 +129,7 @@
 // Makes sure that the RSS detects RSS feed links, even when rel tag contains
 // more than just "alternate".
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, RSSMultiRelLink) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   ASSERT_TRUE(LoadExtension(
     test_data_dir_.AppendASCII("subscribe_page_action")));
@@ -134,7 +137,7 @@
   ASSERT_TRUE(WaitForPageActionVisibilityChangeTo(0));
 
   // Navigate to the feed page.
-  GURL feed_url = test_server()->GetURL(kFeedPageMultiRel);
+  GURL feed_url = embedded_test_server()->GetURL(kFeedPageMultiRel);
   ui_test_utils::NavigateToURL(browser(), feed_url);
   // We should now have one page action ready to go in the LocationBar.
   ASSERT_TRUE(WaitForPageActionVisibilityChangeTo(1));
@@ -142,71 +145,64 @@
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed1) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
   ASSERT_TRUE(extension);
   std::string id = extension->id();
 
-  NavigateToFeedAndValidate(test_server(), kValidFeed1, browser(), id, true,
-                            "Feed for MyFeedTitle",
-                            "Title 1",
-                            "Desc",
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed1, browser(), id,
+                            true, "Feed for MyFeedTitle", "Title 1", "Desc",
                             "No error");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed2) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
   ASSERT_TRUE(extension);
   std::string id = extension->id();
 
-  NavigateToFeedAndValidate(test_server(), kValidFeed2, browser(), id, true,
-                            "Feed for MyFeed2",
-                            "My item title1",
-                            "This is a summary.",
-                            "No error");
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed2, browser(), id,
+                            true, "Feed for MyFeed2", "My item title1",
+                            "This is a summary.", "No error");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed3) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
   ASSERT_TRUE(extension);
   std::string id = extension->id();
 
-  NavigateToFeedAndValidate(test_server(), kValidFeed3, browser(), id, true,
-                            "Feed for Google Code buglist rss feed",
-                            "My dear title",
-                            "My dear content",
-                            "No error");
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed3, browser(), id,
+                            true, "Feed for Google Code buglist rss feed",
+                            "My dear title", "My dear content", "No error");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed4) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
   ASSERT_TRUE(extension);
   std::string id = extension->id();
 
-  NavigateToFeedAndValidate(test_server(), kValidFeed4, browser(), id, true,
-                            "Feed for Title chars <script> %23 stop",
-                            "Title chars  %23 stop",
-                            "My dear content %23 stop",
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed4, browser(), id,
+                            true, "Feed for Title chars <script> %23 stop",
+                            "Title chars  %23 stop", "My dear content %23 stop",
                             "No error");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed0) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -215,16 +211,14 @@
 
   // Try a feed with a link with an onclick handler (before r27440 this would
   // trigger a NOTREACHED).
-  NavigateToFeedAndValidate(test_server(), kValidFeed0, browser(), id, true,
-                            "Feed for MyFeedTitle",
-                            "Title 1",
-                            "Desc VIDEO",
-                            "No error");
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed0, browser(), id,
+                            true, "Feed for MyFeedTitle", "Title 1",
+                            "Desc VIDEO", "No error");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed5) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -232,16 +226,15 @@
   std::string id = extension->id();
 
   // Feed with valid but mostly empty xml.
-  NavigateToFeedAndValidate(test_server(), kValidFeed5, browser(), id, true,
-                            "Feed for Unknown feed name",
-                            "element 'anchor_0' not found",
-                            "element 'desc_0' not found",
-                            "This feed contains no entries.");
+  NavigateToFeedAndValidate(
+      embedded_test_server(), kValidFeed5, browser(), id, true,
+      "Feed for Unknown feed name", "element 'anchor_0' not found",
+      "element 'desc_0' not found", "This feed contains no entries.");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, DISABLED_RSSParseFeedValidFeed6) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -249,15 +242,13 @@
   std::string id = extension->id();
 
   // Feed that is technically invalid but still parseable.
-  NavigateToFeedAndValidate(test_server(), kValidFeed6, browser(), id, true,
-                            "Feed for MyFeedTitle",
-                            "Title 1",
-                            "Desc",
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeed6, browser(), id,
+                            true, "Feed for MyFeedTitle", "Title 1", "Desc",
                             "No error");
 }
 
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, RSSParseFeedInvalidFeed1) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -265,15 +256,14 @@
   std::string id = extension->id();
 
   // Try an empty feed.
-  NavigateToFeedAndValidate(test_server(), kInvalidFeed1, browser(), id, false,
-                            "Feed for Unknown feed name",
-                            "element 'anchor_0' not found",
-                            "element 'desc_0' not found",
-                            "This feed contains no entries.");
+  NavigateToFeedAndValidate(
+      embedded_test_server(), kInvalidFeed1, browser(), id, false,
+      "Feed for Unknown feed name", "element 'anchor_0' not found",
+      "element 'desc_0' not found", "This feed contains no entries.");
 }
 
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, RSSParseFeedInvalidFeed2) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -281,15 +271,14 @@
   std::string id = extension->id();
 
   // Try a garbage feed.
-  NavigateToFeedAndValidate(test_server(), kInvalidFeed2, browser(), id, false,
-                            "Feed for Unknown feed name",
-                            "element 'anchor_0' not found",
-                            "element 'desc_0' not found",
-                            "This feed contains no entries.");
+  NavigateToFeedAndValidate(
+      embedded_test_server(), kInvalidFeed2, browser(), id, false,
+      "Feed for Unknown feed name", "element 'anchor_0' not found",
+      "element 'desc_0' not found", "This feed contains no entries.");
 }
 
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, RSSParseFeedInvalidFeed3) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -297,15 +286,14 @@
   std::string id = extension->id();
 
   // Try a feed that doesn't exist.
-  NavigateToFeedAndValidate(test_server(), "foo.xml", browser(), id, false,
-                            "Feed for Unknown feed name",
-                            "element 'anchor_0' not found",
-                            "element 'desc_0' not found",
-                            "This feed contains no entries.");
+  NavigateToFeedAndValidate(
+      embedded_test_server(), "/foo.xml", browser(), id, false,
+      "Feed for Unknown feed name", "element 'anchor_0' not found",
+      "element 'desc_0' not found", "This feed contains no entries.");
 }
 
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest, RSSParseFeedInvalidFeed4) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -320,17 +308,15 @@
   // we start erroneously double decoding again, the path (and the feed) will
   // become valid resulting in a failure for this test.
   NavigateToFeedAndValidate(
-      test_server(), kFeedTripleEncoded, browser(), id, true,
-      "Feed for Unknown feed name",
-      "element 'anchor_0' not found",
-      "element 'desc_0' not found",
-      "This feed contains no entries.");
+      embedded_test_server(), kFeedTripleEncoded, browser(), id, true,
+      "Feed for Unknown feed name", "element 'anchor_0' not found",
+      "element 'desc_0' not found", "This feed contains no entries.");
 }
 
 // This test is flaky on all platforms; see http://crbug.com/340354
 IN_PROC_BROWSER_TEST_F(ExtensionBrowserTest,
                        DISABLED_RSSParseFeedValidFeedNoLinks) {
-  ASSERT_TRUE(test_server()->Start());
+  ASSERT_TRUE(embedded_test_server()->Start());
 
   const Extension* extension = LoadExtension(
       test_data_dir_.AppendASCII("subscribe_page_action"));
@@ -338,10 +324,7 @@
   std::string id = extension->id();
 
   // Valid feed but containing no links.
-  NavigateToFeedAndValidate(
-      test_server(), kValidFeedNoLinks, browser(), id, true,
-      "Feed for MyFeedTitle",
-      "Title with no link",
-      "Desc",
-      "No error");
+  NavigateToFeedAndValidate(embedded_test_server(), kValidFeedNoLinks,
+                            browser(), id, true, "Feed for MyFeedTitle",
+                            "Title with no link", "Desc", "No error");
 }