| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/memory/scoped_vector.h" | 5 #include "base/memory/scoped_vector.h" |
| 6 #include "base/time.h" | 6 #include "base/time.h" |
| 7 #include "chrome/browser/prerender/prerender_contents.h" | 7 #include "chrome/browser/prerender/prerender_contents.h" |
| 8 #include "chrome/browser/prerender/prerender_manager.h" | 8 #include "chrome/browser/prerender/prerender_manager.h" |
| 9 #include "chrome/browser/prerender/prerender_origin.h" | 9 #include "chrome/browser/prerender/prerender_origin.h" |
| 10 #include "chrome/test/base/testing_browser_process.h" | 10 #include "chrome/test/base/testing_browser_process.h" |
| 11 #include "content/browser/browser_thread.h" | 11 #include "content/browser/browser_thread.h" |
| 12 #include "content/browser/renderer_host/render_view_host.h" | 12 #include "content/browser/renderer_host/render_view_host.h" |
| 13 #include "content/browser/renderer_host/render_process_host.h" | 13 #include "content/browser/renderer_host/render_process_host.h" |
| 14 #include "googleurl/src/gurl.h" | 14 #include "googleurl/src/gurl.h" |
| 15 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
| 16 | 16 |
| 17 namespace prerender { | 17 namespace prerender { |
| 18 | 18 |
| 19 namespace { | 19 namespace { |
| 20 | 20 |
| 21 class DummyPrerenderContents : public PrerenderContents { | 21 class DummyPrerenderContents : public PrerenderContents { |
| 22 public: | 22 public: |
| 23 DummyPrerenderContents(PrerenderManager* prerender_manager, | 23 DummyPrerenderContents(PrerenderManager* prerender_manager, |
| 24 PrerenderTracker* prerender_tracker, | 24 PrerenderTracker* prerender_tracker, |
| 25 SessionStorageNamespace* session_storage_namespace, |
| 25 const GURL& url, | 26 const GURL& url, |
| 26 FinalStatus expected_final_status) | 27 FinalStatus expected_final_status) |
| 27 : PrerenderContents(prerender_manager, prerender_tracker, NULL, url, | 28 : PrerenderContents(prerender_manager, prerender_tracker, |
| 29 session_storage_namespace, NULL, url, |
| 28 GURL(), ORIGIN_LINK_REL_PRERENDER, | 30 GURL(), ORIGIN_LINK_REL_PRERENDER, |
| 29 PrerenderManager::kNoExperiment), | 31 PrerenderManager::kNoExperiment), |
| 30 has_started_(false), | 32 has_started_(false), |
| 31 expected_final_status_(expected_final_status) { | 33 expected_final_status_(expected_final_status) { |
| 32 } | 34 } |
| 33 | 35 |
| 34 virtual ~DummyPrerenderContents() { | 36 virtual ~DummyPrerenderContents() { |
| 35 EXPECT_EQ(expected_final_status_, final_status()); | 37 EXPECT_EQ(expected_final_status_, final_status()); |
| 36 } | 38 } |
| 37 | 39 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 } | 94 } |
| 93 | 95 |
| 94 void AdvanceTimeTicks(base::TimeDelta delta) { | 96 void AdvanceTimeTicks(base::TimeDelta delta) { |
| 95 time_ticks_ += delta; | 97 time_ticks_ += delta; |
| 96 } | 98 } |
| 97 | 99 |
| 98 DummyPrerenderContents* CreateNextPrerenderContents( | 100 DummyPrerenderContents* CreateNextPrerenderContents( |
| 99 const GURL& url, | 101 const GURL& url, |
| 100 FinalStatus expected_final_status) { | 102 FinalStatus expected_final_status) { |
| 101 DummyPrerenderContents* prerender_contents = | 103 DummyPrerenderContents* prerender_contents = |
| 102 new DummyPrerenderContents(this, prerender_tracker_, url, | 104 new DummyPrerenderContents(this, prerender_tracker_, NULL, url, |
| 103 expected_final_status); | 105 expected_final_status); |
| 104 SetNextPrerenderContents(prerender_contents); | 106 SetNextPrerenderContents(prerender_contents); |
| 105 return prerender_contents; | 107 return prerender_contents; |
| 106 } | 108 } |
| 107 | 109 |
| 108 DummyPrerenderContents* CreateNextPrerenderContents( | 110 DummyPrerenderContents* CreateNextPrerenderContents( |
| 109 const GURL& url, | 111 const GURL& url, |
| 110 const std::vector<GURL>& alias_urls, | 112 const std::vector<GURL>& alias_urls, |
| 111 FinalStatus expected_final_status) { | 113 FinalStatus expected_final_status) { |
| 112 DummyPrerenderContents* prerender_contents = | 114 DummyPrerenderContents* prerender_contents = |
| 113 new DummyPrerenderContents(this, prerender_tracker_, url, | 115 new DummyPrerenderContents(this, prerender_tracker_, NULL, url, |
| 114 expected_final_status); | 116 expected_final_status); |
| 115 for (std::vector<GURL>::const_iterator it = alias_urls.begin(); | 117 for (std::vector<GURL>::const_iterator it = alias_urls.begin(); |
| 116 it != alias_urls.end(); | 118 it != alias_urls.end(); |
| 117 ++it) { | 119 ++it) { |
| 118 EXPECT_TRUE(prerender_contents->AddAliasURL(*it)); | 120 EXPECT_TRUE(prerender_contents->AddAliasURL(*it)); |
| 119 } | 121 } |
| 120 SetNextPrerenderContents(prerender_contents); | 122 SetNextPrerenderContents(prerender_contents); |
| 121 return prerender_contents; | 123 return prerender_contents; |
| 122 } | 124 } |
| 123 | 125 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 146 | 148 |
| 147 virtual base::Time GetCurrentTime() const OVERRIDE { | 149 virtual base::Time GetCurrentTime() const OVERRIDE { |
| 148 return time_; | 150 return time_; |
| 149 } | 151 } |
| 150 | 152 |
| 151 virtual base::TimeTicks GetCurrentTimeTicks() const OVERRIDE { | 153 virtual base::TimeTicks GetCurrentTimeTicks() const OVERRIDE { |
| 152 return time_ticks_; | 154 return time_ticks_; |
| 153 } | 155 } |
| 154 | 156 |
| 155 virtual PrerenderContents* CreatePrerenderContents( | 157 virtual PrerenderContents* CreatePrerenderContents( |
| 158 SessionStorageNamespace* session_storage_namespace, |
| 156 const GURL& url, | 159 const GURL& url, |
| 157 const GURL& referrer, | 160 const GURL& referrer, |
| 158 Origin origin, | 161 Origin origin, |
| 159 uint8 experiment_id) OVERRIDE { | 162 uint8 experiment_id) OVERRIDE { |
| 160 DCHECK(next_prerender_contents_.get()); | 163 DCHECK(next_prerender_contents_.get()); |
| 161 return next_prerender_contents_.release(); | 164 return next_prerender_contents_.release(); |
| 162 } | 165 } |
| 163 | 166 |
| 164 base::Time time_; | 167 base::Time time_; |
| 165 base::TimeTicks time_ticks_; | 168 base::TimeTicks time_ticks_; |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 519 url, | 522 url, |
| 520 FINAL_STATUS_CACHE_OR_HISTORY_CLEARED); | 523 FINAL_STATUS_CACHE_OR_HISTORY_CLEARED); |
| 521 EXPECT_TRUE(prerender_manager()->AddSimplePrerender(url)); | 524 EXPECT_TRUE(prerender_manager()->AddSimplePrerender(url)); |
| 522 EXPECT_TRUE(prerender_contents->has_started()); | 525 EXPECT_TRUE(prerender_contents->has_started()); |
| 523 prerender_manager()->ClearData(PrerenderManager::CLEAR_PRERENDER_CONTENTS); | 526 prerender_manager()->ClearData(PrerenderManager::CLEAR_PRERENDER_CONTENTS); |
| 524 DummyPrerenderContents* null = NULL; | 527 DummyPrerenderContents* null = NULL; |
| 525 EXPECT_EQ(null, prerender_manager()->GetEntry(url)); | 528 EXPECT_EQ(null, prerender_manager()->GetEntry(url)); |
| 526 } | 529 } |
| 527 | 530 |
| 528 } // namespace prerender | 531 } // namespace prerender |
| OLD | NEW |