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

Unified Diff: chrome/browser/prerender/prerender_browsertest.cc

Issue 2304953002: NoState Prefetch: nostate prefetch browser tests. (Closed)
Patch Set: histogram tests 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
Index: chrome/browser/prerender/prerender_browsertest.cc
diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc
index 1ca412d4ec5ca41961f22eed0b8c2107fb2d02de..7c151cbfbb66ca80c1177d945c039d14996bd73d 100644
--- a/chrome/browser/prerender/prerender_browsertest.cc
+++ b/chrome/browser/prerender/prerender_browsertest.cc
@@ -25,7 +25,6 @@
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
-#include "base/test/histogram_tester.h"
#include "base/test/test_timeouts.h"
#include "base/values.h"
#include "build/build_config.h"
@@ -64,7 +63,6 @@
#include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
#include "chrome/common/chrome_paths.h"
#include "chrome/common/chrome_switches.h"
-#include "chrome/grit/generated_resources.h"
#include "chrome/test/base/ui_test_utils.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/favicon/content/content_favicon_driver.h"
@@ -114,7 +112,6 @@
#include "net/url_request/url_request_job.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/l10n/l10n_util.h"
#include "url/gurl.h"
using chrome_browser_net::NetworkPredictionOptions;
@@ -733,15 +730,6 @@ class PrerenderBrowserTest : public test_utils::PrerenderInProcessBrowserTest {
EXPECT_TRUE(js_result);
}
- void UseHttpsSrcServer() {
- if (https_src_server_)
- return;
- https_src_server_.reset(
- new net::EmbeddedTestServer(net::EmbeddedTestServer::TYPE_HTTPS));
- https_src_server_->ServeFilesFromSourceDirectory("chrome/test/data");
- CHECK(https_src_server_->Start());
- }
-
void DisableJavascriptCalls() {
call_javascript_ = false;
}
@@ -840,15 +828,6 @@ class PrerenderBrowserTest : public test_utils::PrerenderInProcessBrowserTest {
return history_list->GetSize();
}
- test_utils::FakeSafeBrowsingDatabaseManager*
- GetFakeSafeBrowsingDatabaseManager() {
- return static_cast<test_utils::FakeSafeBrowsingDatabaseManager*>(
- safe_browsing_factory()
- ->test_safe_browsing_service()
- ->database_manager()
- .get());
- }
-
void SetLoaderHostOverride(const std::string& host) {
loader_host_override_ = host;
host_resolver()->AddRule(host, "127.0.0.1");
@@ -909,20 +888,6 @@ class PrerenderBrowserTest : public test_utils::PrerenderInProcessBrowserTest {
base::ASCIIToUTF16(javascript));
}
- // Returns a string for pattern-matching TaskManager tab entries.
- base::string16 MatchTaskManagerTab(const char* page_title) {
- return l10n_util::GetStringFUTF16(IDS_TASK_MANAGER_TAB_PREFIX,
- base::ASCIIToUTF16(page_title));
- }
-
- // Returns a string for pattern-matching TaskManager prerender entries.
- base::string16 MatchTaskManagerPrerender(const char* page_title) {
- return l10n_util::GetStringFUTF16(IDS_TASK_MANAGER_PRERENDER_PREFIX,
- base::ASCIIToUTF16(page_title));
- }
-
- const base::HistogramTester& histogram_tester() { return histogram_tester_; }
-
private:
// TODO(davidben): Remove this altogether so the tests don't globally assume
// only one prerender.
@@ -943,34 +908,18 @@ class PrerenderBrowserTest : public test_utils::PrerenderInProcessBrowserTest {
net::test_server::GetFilePathWithReplacements(
loader_path_, replacement_text, &replacement_path);
- const net::EmbeddedTestServer* src_server = embedded_test_server();
- if (https_src_server_)
- src_server = https_src_server_.get();
- GURL loader_url = src_server->GetURL(
- replacement_path + "&" + loader_query_);
+ GURL loader_url =
+ src_server()->GetURL(replacement_path + "&" + loader_query_);
GURL::Replacements loader_replacements;
if (!loader_host_override_.empty())
loader_replacements.SetHostStr(loader_host_override_);
loader_url = loader_url.ReplaceComponents(loader_replacements);
- CHECK(!expected_final_status_queue.empty());
- ScopedVector<TestPrerender> prerenders;
- for (size_t i = 0; i < expected_final_status_queue.size(); i++) {
- prerenders.push_back(
- prerender_contents_factory()
- ->ExpectPrerenderContents(expected_final_status_queue[i])
- .release());
- }
+ ScopedVector<TestPrerender> prerenders = NavigateWithPrerenders(
+ loader_url, expected_final_status_queue, expected_number_of_loads);
FinalStatus expected_final_status = expected_final_status_queue.front();
-
- // Navigate to the loader URL and then wait for the first prerender to be
- // created.
- ui_test_utils::NavigateToURL(current_browser(), loader_url);
- prerenders[0]->WaitForCreate();
- prerenders[0]->WaitForLoads(expected_number_of_loads);
-
if (ShouldAbortPrerenderBeforeSwap(expected_final_status)) {
// The prerender will abort on its own. Assert it does so correctly.
prerenders[0]->WaitForStop();
@@ -1056,13 +1005,11 @@ class PrerenderBrowserTest : public test_utils::PrerenderInProcessBrowserTest {
}
GURL dest_url_;
- std::unique_ptr<net::EmbeddedTestServer> https_src_server_;
bool call_javascript_;
bool check_load_events_;
std::string loader_host_override_;
std::string loader_path_;
std::string loader_query_;
- base::HistogramTester histogram_tester_;
};
// Checks that a page is correctly prerendered in the case of a
@@ -1663,8 +1610,10 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderReferrer) {
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest,
PrerenderNoSSLReferrer) {
pasko 2016/09/22 18:14:04 nit: fits one line
mattcary 2016/09/23 09:00:15 Done. Strange that git cl format didn't catch that
UseHttpsSrcServer();
- PrerenderTestURL("/prerender/prerender_no_referrer.html", FINAL_STATUS_USED,
- 1);
+ // Use non-https url for first page.
pasko 2016/09/22 18:14:04 I am confused. Is this comment applying to the lin
mattcary 2016/09/23 09:00:15 The test description says that the source page is
pasko 2016/09/30 18:29:20 OK, I think it would be more readable like that: =
mattcary 2016/10/03 10:58:34 Done, with slight modification.
+ GURL url(
+ embedded_test_server()->GetURL("/prerender/prerender_no_referrer.html"));
+ PrerenderTestURL(url, FINAL_STATUS_USED, 1);
NavigateToDestURL();
}
@@ -2149,14 +2098,13 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderXhrDelete) {
// Checks that a top-level page which would trigger an SSL error is canceled.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderSSLErrorTopLevel) {
+ // We only send the loaded page, not the loader, through SSL.
pasko 2016/09/22 18:14:04 Isn't this a subset of what the comment two lines
mattcary 2016/09/23 09:00:15 It's further detail that explains further why this
pasko 2016/09/30 18:29:20 I see. I agree that manipulations in this test are
mattcary 2016/10/03 10:58:34 Done, thanks, I am still quite sloppy on use of "w
net::EmbeddedTestServer https_server(net::EmbeddedTestServer::TYPE_HTTPS);
https_server.SetSSLConfig(net::EmbeddedTestServer::CERT_MISMATCHED_NAME);
https_server.ServeFilesFromSourceDirectory("chrome/test/data");
ASSERT_TRUE(https_server.Start());
GURL https_url = https_server.GetURL("/prerender/prerender_page.html");
- PrerenderTestURL(https_url,
- FINAL_STATUS_SSL_ERROR,
- 0);
+ PrerenderTestURL(https_url, FINAL_STATUS_SSL_ERROR, 0);
}
// Checks that an SSL error that comes from a subresource does not cancel
« no previous file with comments | « no previous file | chrome/browser/prerender/prerender_contents.h » ('j') | chrome/browser/prerender/prerender_contents.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698