| Index: chrome/browser/prerender/prerender_browsertest.cc
|
| diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc
|
| index d997908a458359ab66db36a2544b5738a000d223..0d0202c05a67546806efbee439f9d90d09ef0abd 100644
|
| --- a/chrome/browser/prerender/prerender_browsertest.cc
|
| +++ b/chrome/browser/prerender/prerender_browsertest.cc
|
| @@ -21,6 +21,7 @@
|
| #include "base/values.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_test_util.h"
|
| #include "chrome/browser/chrome_content_browser_client.h"
|
| #include "chrome/browser/chrome_notification_types.h"
|
| #include "chrome/browser/content_settings/host_content_settings_map.h"
|
| @@ -137,7 +138,9 @@ std::string CreateServerRedirect(const std::string& dest_url) {
|
| void ClearBrowsingData(Browser* browser, int remove_mask) {
|
| BrowsingDataRemover* remover =
|
| BrowsingDataRemover::CreateForUnboundedRange(browser->profile());
|
| + BrowsingDataRemoverCompletionObserver observer(remover);
|
| remover->Remove(remove_mask, BrowsingDataHelper::UNPROTECTED_WEB);
|
| + observer.BlockUntilCompletion();
|
| // BrowsingDataRemover deletes itself.
|
| }
|
|
|
| @@ -3113,28 +3116,22 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClearHistory) {
|
| FINAL_STATUS_CACHE_OR_HISTORY_CLEARED,
|
| 1);
|
|
|
| - base::MessageLoop::current()->PostTask(
|
| - FROM_HERE,
|
| - base::Bind(&ClearBrowsingData, current_browser(),
|
| - BrowsingDataRemover::REMOVE_HISTORY));
|
| + ClearBrowsingData(current_browser(), BrowsingDataRemover::REMOVE_HISTORY);
|
| prerender->WaitForStop();
|
|
|
| // Make sure prerender history was cleared.
|
| EXPECT_EQ(0, GetHistoryLength());
|
| }
|
|
|
| -// Disabled due to flakiness: crbug.com/316225
|
| // Checks that when the cache is cleared, prerenders are cancelled but
|
| // prerendering history is not cleared.
|
| -IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, DISABLED_PrerenderClearCache) {
|
| +IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderClearCache) {
|
| scoped_ptr<TestPrerender> prerender =
|
| PrerenderTestURL("files/prerender/prerender_page.html",
|
| FINAL_STATUS_CACHE_OR_HISTORY_CLEARED,
|
| 1);
|
|
|
| - base::MessageLoop::current()->PostTask(FROM_HERE,
|
| - base::Bind(&ClearBrowsingData, current_browser(),
|
| - BrowsingDataRemover::REMOVE_CACHE));
|
| + ClearBrowsingData(current_browser(), BrowsingDataRemover::REMOVE_CACHE);
|
| prerender->WaitForStop();
|
|
|
| // Make sure prerender history was not cleared. Not a vital behavior, but
|
|
|