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

Unified Diff: chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc

Issue 2596893002: predictors: Wait for the cache cleaning synchronously. (Closed)
Patch Set: Created 4 years 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc
diff --git a/chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc b/chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc
index 70c3131eee72b3618091e2b5e499350e753622f6..7b292b3557914a5c40237583016d77edd2ec23fa 100644
--- a/chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc
+++ b/chrome/browser/predictors/resource_prefetch_predictor_browsertest.cc
@@ -3,12 +3,14 @@
// found in the LICENSE file.
#include "base/command_line.h"
+#include "chrome/browser/browsing_data/browsing_data_helper.h"
+#include "chrome/browser/browsing_data/browsing_data_remover.h"
+#include "chrome/browser/browsing_data/browsing_data_remover_factory.h"
#include "chrome/browser/predictors/resource_prefetch_predictor.h"
#include "chrome/browser/predictors/resource_prefetch_predictor_factory.h"
#include "chrome/browser/predictors/resource_prefetch_predictor_test_util.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/test/base/in_process_browser_test.h"
@@ -92,6 +94,25 @@ class InitializationObserver : public TestObserver {
DISALLOW_COPY_AND_ASSIGN(InitializationObserver);
};
+class BrowsingDataRemoverObserver : public BrowsingDataRemover::Observer {
+ public:
+ explicit BrowsingDataRemoverObserver(BrowsingDataRemover* remover)
+ : remover_(remover) {
+ remover_->AddObserver(this);
+ }
+ ~BrowsingDataRemoverObserver() override { remover_->RemoveObserver(this); }
+
+ void OnBrowsingDataRemoverDone() override { run_loop_.Quit(); }
+
+ void Wait() { run_loop_.Run(); }
+
+ private:
+ BrowsingDataRemover* remover_;
+ base::RunLoop run_loop_;
+
+ DISALLOW_COPY_AND_ASSIGN(BrowsingDataRemoverObserver);
+};
+
using PageRequestSummary = ResourcePrefetchPredictor::PageRequestSummary;
using URLRequestSummary = ResourcePrefetchPredictor::URLRequestSummary;
@@ -222,7 +243,7 @@ class ResourcePrefetchPredictorBrowserTest : public InProcessBrowserTest {
void SetUpCommandLine(base::CommandLine* command_line) override {
command_line->AppendSwitchASCII(
switches::kSpeculativeResourcePrefetching,
- switches::kSpeculativeResourcePrefetchingEnabled);
+ switches::kSpeculativeResourcePrefetchingEnabledExternal);
}
void SetUpOnMainThread() override {
@@ -332,7 +353,14 @@ class ResourcePrefetchPredictorBrowserTest : public InProcessBrowserTest {
}
void ClearCache() {
- chrome::ClearCache(browser());
+ BrowsingDataRemover* remover =
+ BrowsingDataRemoverFactory::GetForBrowserContext(browser()->profile());
+ BrowsingDataRemoverObserver observer(remover);
+ remover->RemoveAndReply(BrowsingDataRemover::Unbounded(),
+ BrowsingDataRemover::REMOVE_CACHE,
+ BrowsingDataHelper::UNPROTECTED_WEB, &observer);
+ observer.Wait();
+
for (auto& kv : resources_)
kv.second.request.was_cached = false;
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698