| 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 28 matching lines...) Expand all Loading... |
| 39 using content::WebContentsTester; | 39 using content::WebContentsTester; |
| 40 using sessions::SerializedNavigationEntry; | 40 using sessions::SerializedNavigationEntry; |
| 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 ~PersistentTabRestoreTimeFactory() override {} |
| 50 | 50 |
| 51 virtual base::Time TimeNow() override { | 51 base::Time TimeNow() override { return time_; } |
| 52 return time_; | |
| 53 } | |
| 54 | 52 |
| 55 private: | 53 private: |
| 56 base::Time time_; | 54 base::Time time_; |
| 57 }; | 55 }; |
| 58 | 56 |
| 59 class PersistentTabRestoreServiceTest : public ChromeRenderViewHostTestHarness { | 57 class PersistentTabRestoreServiceTest : public ChromeRenderViewHostTestHarness { |
| 60 public: | 58 public: |
| 61 PersistentTabRestoreServiceTest() | 59 PersistentTabRestoreServiceTest() |
| 62 : url1_("http://1"), | 60 : url1_("http://1"), |
| 63 url2_("http://2"), | 61 url2_("http://2"), |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 174 namespace { | 172 namespace { |
| 175 | 173 |
| 176 class TestTabRestoreServiceObserver : public TabRestoreServiceObserver { | 174 class TestTabRestoreServiceObserver : public TabRestoreServiceObserver { |
| 177 public: | 175 public: |
| 178 TestTabRestoreServiceObserver() : got_loaded_(false) {} | 176 TestTabRestoreServiceObserver() : got_loaded_(false) {} |
| 179 | 177 |
| 180 void clear_got_loaded() { got_loaded_ = false; } | 178 void clear_got_loaded() { got_loaded_ = false; } |
| 181 bool got_loaded() const { return got_loaded_; } | 179 bool got_loaded() const { return got_loaded_; } |
| 182 | 180 |
| 183 // TabRestoreServiceObserver: | 181 // TabRestoreServiceObserver: |
| 184 virtual void TabRestoreServiceChanged(TabRestoreService* service) override { | 182 void TabRestoreServiceChanged(TabRestoreService* service) override {} |
| 185 } | 183 void TabRestoreServiceDestroyed(TabRestoreService* service) override {} |
| 186 virtual void TabRestoreServiceDestroyed(TabRestoreService* service) override { | 184 void TabRestoreServiceLoaded(TabRestoreService* service) override { |
| 187 } | |
| 188 virtual void TabRestoreServiceLoaded(TabRestoreService* service) override { | |
| 189 got_loaded_ = true; | 185 got_loaded_ = true; |
| 190 } | 186 } |
| 191 | 187 |
| 192 private: | 188 private: |
| 193 // Was TabRestoreServiceLoaded() invoked? | 189 // Was TabRestoreServiceLoaded() invoked? |
| 194 bool got_loaded_; | 190 bool got_loaded_; |
| 195 | 191 |
| 196 DISALLOW_COPY_AND_ASSIGN(TestTabRestoreServiceObserver); | 192 DISALLOW_COPY_AND_ASSIGN(TestTabRestoreServiceObserver); |
| 197 }; | 193 }; |
| 198 | 194 |
| (...skipping 559 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 758 | 754 |
| 759 EXPECT_FALSE(service_->IsLoaded()); | 755 EXPECT_FALSE(service_->IsLoaded()); |
| 760 TestTabRestoreServiceObserver observer; | 756 TestTabRestoreServiceObserver observer; |
| 761 service_->AddObserver(&observer); | 757 service_->AddObserver(&observer); |
| 762 EXPECT_EQ(max_entries, service_->entries().size()); | 758 EXPECT_EQ(max_entries, service_->entries().size()); |
| 763 SynchronousLoadTabsFromLastSession(); | 759 SynchronousLoadTabsFromLastSession(); |
| 764 EXPECT_TRUE(observer.got_loaded()); | 760 EXPECT_TRUE(observer.got_loaded()); |
| 765 EXPECT_TRUE(service_->IsLoaded()); | 761 EXPECT_TRUE(service_->IsLoaded()); |
| 766 service_->RemoveObserver(&observer); | 762 service_->RemoveObserver(&observer); |
| 767 } | 763 } |
| OLD | NEW |