OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/session_service_test_helper.h" | 5 #include "chrome/browser/sessions/session_service_test_helper.h" |
6 | 6 |
7 #include "base/memory/scoped_vector.h" | 7 #include "base/memory/scoped_vector.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "chrome/browser/sessions/session_backend.h" | 9 #include "chrome/browser/sessions/session_backend.h" |
10 #include "chrome/browser/sessions/session_service.h" | 10 #include "chrome/browser/sessions/session_service.h" |
11 #include "chrome/browser/sessions/session_types.h" | 11 #include "chrome/browser/sessions/session_types.h" |
12 #include "components/sessions/serialized_navigation_entry_test_helper.h" | 12 #include "components/sessions/serialized_navigation_entry_test_helper.h" |
13 #include "components/sessions/session_id.h" | 13 #include "components/sessions/session_id.h" |
14 #include "content/public/browser/browser_thread.h" | 14 #include "content/public/browser/browser_thread.h" |
| 15 #include "content/public/test/test_utils.h" |
15 #include "testing/gtest/include/gtest/gtest.h" | 16 #include "testing/gtest/include/gtest/gtest.h" |
16 | 17 |
17 using base::Time; | 18 using base::Time; |
18 | 19 |
19 SessionServiceTestHelper::SessionServiceTestHelper() {} | 20 SessionServiceTestHelper::SessionServiceTestHelper() {} |
20 | 21 |
21 SessionServiceTestHelper::SessionServiceTestHelper(SessionService* service) | 22 SessionServiceTestHelper::SessionServiceTestHelper(SessionService* service) |
22 : service_(service) {} | 23 : service_(service) {} |
23 | 24 |
24 SessionServiceTestHelper::~SessionServiceTestHelper() {} | 25 SessionServiceTestHelper::~SessionServiceTestHelper() {} |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 void SessionServiceTestHelper::ReadWindows( | 58 void SessionServiceTestHelper::ReadWindows( |
58 std::vector<SessionWindow*>* windows, | 59 std::vector<SessionWindow*>* windows, |
59 SessionID::id_type* active_window_id) { | 60 SessionID::id_type* active_window_id) { |
60 Time last_time; | 61 Time last_time; |
61 ScopedVector<SessionCommand> read_commands; | 62 ScopedVector<SessionCommand> read_commands; |
62 backend()->ReadLastSessionCommandsImpl(&(read_commands.get())); | 63 backend()->ReadLastSessionCommandsImpl(&(read_commands.get())); |
63 service()->RestoreSessionFromCommands( | 64 service()->RestoreSessionFromCommands( |
64 read_commands.get(), windows, active_window_id); | 65 read_commands.get(), windows, active_window_id); |
65 } | 66 } |
66 | 67 |
67 void SessionServiceTestHelper::AssertTabEquals(SessionID& window_id, | 68 void SessionServiceTestHelper::AssertTabEquals(const SessionID& window_id, |
68 SessionID& tab_id, | 69 const SessionID& tab_id, |
69 int visual_index, | 70 int visual_index, |
70 int nav_index, | 71 int nav_index, |
71 size_t nav_count, | 72 size_t nav_count, |
72 const SessionTab& session_tab) { | 73 const SessionTab& session_tab) { |
73 EXPECT_EQ(window_id.id(), session_tab.window_id.id()); | 74 EXPECT_EQ(window_id.id(), session_tab.window_id.id()); |
74 EXPECT_EQ(tab_id.id(), session_tab.tab_id.id()); | 75 EXPECT_EQ(tab_id.id(), session_tab.tab_id.id()); |
75 AssertTabEquals(visual_index, nav_index, nav_count, session_tab); | 76 AssertTabEquals(visual_index, nav_index, nav_count, session_tab); |
76 } | 77 } |
77 | 78 |
78 void SessionServiceTestHelper::AssertTabEquals( | 79 void SessionServiceTestHelper::AssertTabEquals( |
(...skipping 23 matching lines...) Expand all Loading... |
102 EXPECT_EQ(nav_count, windows[0]->tabs[0]->navigations.size()); | 103 EXPECT_EQ(nav_count, windows[0]->tabs[0]->navigations.size()); |
103 } | 104 } |
104 | 105 |
105 SessionBackend* SessionServiceTestHelper::backend() { | 106 SessionBackend* SessionServiceTestHelper::backend() { |
106 return service_->backend(); | 107 return service_->backend(); |
107 } | 108 } |
108 | 109 |
109 void SessionServiceTestHelper::SetService(SessionService* service) { | 110 void SessionServiceTestHelper::SetService(SessionService* service) { |
110 service_.reset(service); | 111 service_.reset(service); |
111 // Execute IO tasks posted by the SessionService. | 112 // Execute IO tasks posted by the SessionService. |
112 content::BrowserThread::GetBlockingPool()->FlushForTesting(); | 113 content::RunAllBlockingPoolTasksUntilIdle(); |
113 } | 114 } |
114 | 115 |
115 void SessionServiceTestHelper::RunTaskOnBackendThread( | 116 void SessionServiceTestHelper::RunTaskOnBackendThread( |
116 const tracked_objects::Location& from_here, | 117 const tracked_objects::Location& from_here, |
117 const base::Closure& task) { | 118 const base::Closure& task) { |
118 service_->RunTaskOnBackendThread(from_here, task); | 119 service_->RunTaskOnBackendThread(from_here, task); |
119 } | 120 } |
OLD | NEW |