OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "base/macros.h" | 5 #include "base/macros.h" |
6 #include "base/run_loop.h" | 6 #include "base/run_loop.h" |
7 #include "base/test/histogram_tester.h" | 7 #include "base/test/histogram_tester.h" |
8 #include "chrome/browser/sessions/session_service.h" | 8 #include "chrome/browser/sessions/session_service.h" |
9 #include "chrome/browser/sessions/session_tab_helper.h" | 9 #include "chrome/browser/sessions/session_tab_helper.h" |
10 #include "chrome/browser/sync/sessions/sync_sessions_router_tab_helper.h" | 10 #include "chrome/browser/sync/sessions/sync_sessions_router_tab_helper.h" |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 } // namespace | 70 } // namespace |
71 | 71 |
72 class SingleClientSessionsSyncTest : public SyncTest { | 72 class SingleClientSessionsSyncTest : public SyncTest { |
73 public: | 73 public: |
74 SingleClientSessionsSyncTest() : SyncTest(SINGLE_CLIENT) {} | 74 SingleClientSessionsSyncTest() : SyncTest(SINGLE_CLIENT) {} |
75 ~SingleClientSessionsSyncTest() override {} | 75 ~SingleClientSessionsSyncTest() override {} |
76 | 76 |
77 void ExpectNavigationChain(const std::vector<GURL>& urls) { | 77 void ExpectNavigationChain(const std::vector<GURL>& urls) { |
78 ScopedWindowMap windows; | 78 ScopedWindowMap windows; |
79 ASSERT_TRUE(GetLocalWindows(0, &windows)); | 79 ASSERT_TRUE(GetLocalWindows(0, &windows)); |
80 ASSERT_EQ(windows.begin()->second->tabs.size(), 1u); | 80 ASSERT_EQ(windows.begin()->second->wrapped_window.tabs.size(), 1u); |
81 sessions::SessionTab* tab = windows.begin()->second->tabs[0].get(); | 81 sessions::SessionTab* tab = |
| 82 windows.begin()->second->wrapped_window.tabs[0].get(); |
82 | 83 |
83 int index = 0; | 84 int index = 0; |
84 EXPECT_EQ(urls.size(), tab->navigations.size()); | 85 EXPECT_EQ(urls.size(), tab->navigations.size()); |
85 for (auto it = tab->navigations.begin(); it != tab->navigations.end(); | 86 for (auto it = tab->navigations.begin(); it != tab->navigations.end(); |
86 ++it, ++index) { | 87 ++it, ++index) { |
87 EXPECT_EQ(urls[index], it->virtual_url()); | 88 EXPECT_EQ(urls[index], it->virtual_url()); |
88 } | 89 } |
89 } | 90 } |
90 | 91 |
91 // Block until the expected hierarchy is recorded on the FakeServer for | 92 // Block until the expected hierarchy is recorded on the FakeServer for |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 ASSERT_TRUE(CheckInitialState(0)); | 155 ASSERT_TRUE(CheckInitialState(0)); |
155 | 156 |
156 const GURL url(kURL1); | 157 const GURL url(kURL1); |
157 | 158 |
158 ScopedWindowMap windows; | 159 ScopedWindowMap windows; |
159 ASSERT_TRUE(OpenTab(0, url)); | 160 ASSERT_TRUE(OpenTab(0, url)); |
160 ASSERT_TRUE(GetLocalWindows(0, &windows)); | 161 ASSERT_TRUE(GetLocalWindows(0, &windows)); |
161 | 162 |
162 int found_navigations = 0; | 163 int found_navigations = 0; |
163 for (auto it = windows.begin(); it != windows.end(); ++it) { | 164 for (auto it = windows.begin(); it != windows.end(); ++it) { |
164 for (auto it2 = it->second->tabs.begin(); it2 != it->second->tabs.end(); | 165 for (auto it2 = it->second->wrapped_window.tabs.begin(); |
165 ++it2) { | 166 it2 != it->second->wrapped_window.tabs.end(); ++it2) { |
166 for (auto it3 = (*it2)->navigations.begin(); | 167 for (auto it3 = (*it2)->navigations.begin(); |
167 it3 != (*it2)->navigations.end(); ++it3) { | 168 it3 != (*it2)->navigations.end(); ++it3) { |
168 const base::Time timestamp = it3->timestamp(); | 169 const base::Time timestamp = it3->timestamp(); |
169 | 170 |
170 history::URLRow virtual_row; | 171 history::URLRow virtual_row; |
171 ASSERT_TRUE(GetUrlFromClient(0, it3->virtual_url(), &virtual_row)); | 172 ASSERT_TRUE(GetUrlFromClient(0, it3->virtual_url(), &virtual_row)); |
172 const base::Time history_timestamp = virtual_row.last_visit(); | 173 const base::Time history_timestamp = virtual_row.last_visit(); |
173 | 174 |
174 ASSERT_EQ(timestamp, history_timestamp); | 175 ASSERT_EQ(timestamp, history_timestamp); |
175 ++found_navigations; | 176 ++found_navigations; |
176 } | 177 } |
177 } | 178 } |
178 } | 179 } |
179 ASSERT_EQ(1, found_navigations); | 180 ASSERT_EQ(1, found_navigations); |
180 } | 181 } |
181 | 182 |
182 IN_PROC_BROWSER_TEST_F(SingleClientSessionsSyncTest, ResponseCodeIsPreserved) { | 183 IN_PROC_BROWSER_TEST_F(SingleClientSessionsSyncTest, ResponseCodeIsPreserved) { |
183 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; | 184 ASSERT_TRUE(SetupSync()) << "SetupSync() failed."; |
184 | 185 |
185 ASSERT_TRUE(CheckInitialState(0)); | 186 ASSERT_TRUE(CheckInitialState(0)); |
186 | 187 |
187 const GURL url(kURL1); | 188 const GURL url(kURL1); |
188 ScopedWindowMap windows; | 189 ScopedWindowMap windows; |
189 ASSERT_TRUE(OpenTab(0, url)); | 190 ASSERT_TRUE(OpenTab(0, url)); |
190 ASSERT_TRUE(GetLocalWindows(0, &windows)); | 191 ASSERT_TRUE(GetLocalWindows(0, &windows)); |
191 | 192 |
192 int found_navigations = 0; | 193 int found_navigations = 0; |
193 for (auto it = windows.begin(); it != windows.end(); ++it) { | 194 for (auto it = windows.begin(); it != windows.end(); ++it) { |
194 for (auto it2 = it->second->tabs.begin(); it2 != it->second->tabs.end(); | 195 for (auto it2 = it->second->wrapped_window.tabs.begin(); |
195 ++it2) { | 196 it2 != it->second->wrapped_window.tabs.end(); ++it2) { |
196 for (auto it3 = (*it2)->navigations.begin(); | 197 for (auto it3 = (*it2)->navigations.begin(); |
197 it3 != (*it2)->navigations.end(); ++it3) { | 198 it3 != (*it2)->navigations.end(); ++it3) { |
198 EXPECT_EQ(200, it3->http_status_code()); | 199 EXPECT_EQ(200, it3->http_status_code()); |
199 ++found_navigations; | 200 ++found_navigations; |
200 } | 201 } |
201 } | 202 } |
202 } | 203 } |
203 ASSERT_EQ(1, found_navigations); | 204 ASSERT_EQ(1, found_navigations); |
204 } | 205 } |
205 | 206 |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
422 // Verify the cookie jar mismatch bool is set to false. | 423 // Verify the cookie jar mismatch bool is set to false. |
423 ASSERT_TRUE(GetFakeServer()->GetLastCommitMessage(&message)); | 424 ASSERT_TRUE(GetFakeServer()->GetLastCommitMessage(&message)); |
424 ASSERT_FALSE(message.commit().config_params().cookie_jar_mismatch()); | 425 ASSERT_FALSE(message.commit().config_params().cookie_jar_mismatch()); |
425 | 426 |
426 // Verify the histograms were recorded properly. | 427 // Verify the histograms were recorded properly. |
427 ExpectUniqueSampleGE(histogram_tester, "Sync.CookieJarMatchOnNavigation", | 428 ExpectUniqueSampleGE(histogram_tester, "Sync.CookieJarMatchOnNavigation", |
428 true, 1); | 429 true, 1); |
429 histogram_tester.ExpectTotalCount("Sync.CookieJarEmptyOnMismatch", 0); | 430 histogram_tester.ExpectTotalCount("Sync.CookieJarEmptyOnMismatch", 0); |
430 } | 431 } |
431 } | 432 } |
OLD | NEW |