| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "chrome/browser/sessions/persistent_tab_restore_service.h" | 5 #include "chrome/browser/sessions/persistent_tab_restore_service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 using sessions::SerializedNavigationEntryTestHelper; | 41 using sessions::SerializedNavigationEntryTestHelper; |
| 42 | 42 |
| 43 // Create subclass that overrides TimeNow so that we can control the time used | 43 // Create subclass that overrides TimeNow so that we can control the time used |
| 44 // for closed tabs and windows. | 44 // for closed tabs and windows. |
| 45 class PersistentTabRestoreTimeFactory : public TabRestoreService::TimeFactory { | 45 class PersistentTabRestoreTimeFactory : public TabRestoreService::TimeFactory { |
| 46 public: | 46 public: |
| 47 PersistentTabRestoreTimeFactory() : time_(base::Time::Now()) {} | 47 PersistentTabRestoreTimeFactory() : time_(base::Time::Now()) {} |
| 48 | 48 |
| 49 virtual ~PersistentTabRestoreTimeFactory() {} | 49 virtual ~PersistentTabRestoreTimeFactory() {} |
| 50 | 50 |
| 51 virtual base::Time TimeNow() OVERRIDE { | 51 virtual base::Time TimeNow() override { |
| 52 return time_; | 52 return time_; |
| 53 } | 53 } |
| 54 | 54 |
| 55 private: | 55 private: |
| 56 base::Time time_; | 56 base::Time time_; |
| 57 }; | 57 }; |
| 58 | 58 |
| 59 class PersistentTabRestoreServiceTest : public ChromeRenderViewHostTestHarness { | 59 class PersistentTabRestoreServiceTest : public ChromeRenderViewHostTestHarness { |
| 60 public: | 60 public: |
| 61 PersistentTabRestoreServiceTest() | 61 PersistentTabRestoreServiceTest() |
| 62 : url1_("http://1"), | 62 : url1_("http://1"), |
| 63 url2_("http://2"), | 63 url2_("http://2"), |
| 64 url3_("http://3"), | 64 url3_("http://3"), |
| 65 user_agent_override_( | 65 user_agent_override_( |
| 66 "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.19" | 66 "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.19" |
| 67 " (KHTML, like Gecko) Chrome/18.0.1025.45 Safari/535.19"), | 67 " (KHTML, like Gecko) Chrome/18.0.1025.45 Safari/535.19"), |
| 68 time_factory_(NULL) { | 68 time_factory_(NULL) { |
| 69 } | 69 } |
| 70 | 70 |
| 71 virtual ~PersistentTabRestoreServiceTest() { | 71 virtual ~PersistentTabRestoreServiceTest() { |
| 72 } | 72 } |
| 73 | 73 |
| 74 protected: | 74 protected: |
| 75 enum { | 75 enum { |
| 76 kMaxEntries = TabRestoreServiceHelper::kMaxEntries, | 76 kMaxEntries = TabRestoreServiceHelper::kMaxEntries, |
| 77 }; | 77 }; |
| 78 | 78 |
| 79 // testing::Test: | 79 // testing::Test: |
| 80 virtual void SetUp() OVERRIDE { | 80 virtual void SetUp() override { |
| 81 ChromeRenderViewHostTestHarness::SetUp(); | 81 ChromeRenderViewHostTestHarness::SetUp(); |
| 82 time_factory_ = new PersistentTabRestoreTimeFactory(); | 82 time_factory_ = new PersistentTabRestoreTimeFactory(); |
| 83 service_.reset(new PersistentTabRestoreService(profile(), time_factory_)); | 83 service_.reset(new PersistentTabRestoreService(profile(), time_factory_)); |
| 84 } | 84 } |
| 85 | 85 |
| 86 virtual void TearDown() OVERRIDE { | 86 virtual void TearDown() override { |
| 87 service_->Shutdown(); | 87 service_->Shutdown(); |
| 88 service_.reset(); | 88 service_.reset(); |
| 89 delete time_factory_; | 89 delete time_factory_; |
| 90 ChromeRenderViewHostTestHarness::TearDown(); | 90 ChromeRenderViewHostTestHarness::TearDown(); |
| 91 } | 91 } |
| 92 | 92 |
| 93 TabRestoreService::Entries* mutable_entries() { | 93 TabRestoreService::Entries* mutable_entries() { |
| 94 return service_->mutable_entries(); | 94 return service_->mutable_entries(); |
| 95 } | 95 } |
| 96 | 96 |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 174 namespace { | 174 namespace { |
| 175 | 175 |
| 176 class TestTabRestoreServiceObserver : public TabRestoreServiceObserver { | 176 class TestTabRestoreServiceObserver : public TabRestoreServiceObserver { |
| 177 public: | 177 public: |
| 178 TestTabRestoreServiceObserver() : got_loaded_(false) {} | 178 TestTabRestoreServiceObserver() : got_loaded_(false) {} |
| 179 | 179 |
| 180 void clear_got_loaded() { got_loaded_ = false; } | 180 void clear_got_loaded() { got_loaded_ = false; } |
| 181 bool got_loaded() const { return got_loaded_; } | 181 bool got_loaded() const { return got_loaded_; } |
| 182 | 182 |
| 183 // TabRestoreServiceObserver: | 183 // TabRestoreServiceObserver: |
| 184 virtual void TabRestoreServiceChanged(TabRestoreService* service) OVERRIDE { | 184 virtual void TabRestoreServiceChanged(TabRestoreService* service) override { |
| 185 } | 185 } |
| 186 virtual void TabRestoreServiceDestroyed(TabRestoreService* service) OVERRIDE { | 186 virtual void TabRestoreServiceDestroyed(TabRestoreService* service) override { |
| 187 } | 187 } |
| 188 virtual void TabRestoreServiceLoaded(TabRestoreService* service) OVERRIDE { | 188 virtual void TabRestoreServiceLoaded(TabRestoreService* service) override { |
| 189 got_loaded_ = true; | 189 got_loaded_ = true; |
| 190 } | 190 } |
| 191 | 191 |
| 192 private: | 192 private: |
| 193 // Was TabRestoreServiceLoaded() invoked? | 193 // Was TabRestoreServiceLoaded() invoked? |
| 194 bool got_loaded_; | 194 bool got_loaded_; |
| 195 | 195 |
| 196 DISALLOW_COPY_AND_ASSIGN(TestTabRestoreServiceObserver); | 196 DISALLOW_COPY_AND_ASSIGN(TestTabRestoreServiceObserver); |
| 197 }; | 197 }; |
| 198 | 198 |
| (...skipping 559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 758 | 758 |
| 759 EXPECT_FALSE(service_->IsLoaded()); | 759 EXPECT_FALSE(service_->IsLoaded()); |
| 760 TestTabRestoreServiceObserver observer; | 760 TestTabRestoreServiceObserver observer; |
| 761 service_->AddObserver(&observer); | 761 service_->AddObserver(&observer); |
| 762 EXPECT_EQ(max_entries, service_->entries().size()); | 762 EXPECT_EQ(max_entries, service_->entries().size()); |
| 763 SynchronousLoadTabsFromLastSession(); | 763 SynchronousLoadTabsFromLastSession(); |
| 764 EXPECT_TRUE(observer.got_loaded()); | 764 EXPECT_TRUE(observer.got_loaded()); |
| 765 EXPECT_TRUE(service_->IsLoaded()); | 765 EXPECT_TRUE(service_->IsLoaded()); |
| 766 service_->RemoveObserver(&observer); | 766 service_->RemoveObserver(&observer); |
| 767 } | 767 } |
| OLD | NEW |