Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Side by Side Diff: chrome/browser/sessions/session_service_unittest.cc

Issue 8806011: Make NavigationEntry and friends use content::Referrer instead of plain URLs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: updates Created 9 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/bind.h" 5 #include "base/bind.h"
6 #include "base/bind_helpers.h" 6 #include "base/bind_helpers.h"
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/memory/scoped_vector.h" 9 #include "base/memory/scoped_vector.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 helper_.ReadWindows(windows); 91 helper_.ReadWindows(windows);
92 } 92 }
93 93
94 // Configures the session service with one window with one tab and a single 94 // Configures the session service with one window with one tab and a single
95 // navigation. If |pinned_state| is true or |write_always| is true, the 95 // navigation. If |pinned_state| is true or |write_always| is true, the
96 // pinned state of the tab is updated. The session service is then recreated 96 // pinned state of the tab is updated. The session service is then recreated
97 // and the pinned state of the read back tab is returned. 97 // and the pinned state of the read back tab is returned.
98 bool CreateAndWriteSessionWithOneTab(bool pinned_state, bool write_always) { 98 bool CreateAndWriteSessionWithOneTab(bool pinned_state, bool write_always) {
99 SessionID tab_id; 99 SessionID tab_id;
100 TabNavigation nav1(0, GURL("http://google.com"), 100 TabNavigation nav1(0, GURL("http://google.com"),
101 GURL("http://www.referrer.com"), 101 content::Referrer(GURL("http://www.referrer.com"),
102 WebKit::WebReferrerPolicyDefault),
102 ASCIIToUTF16("abc"), "def", 103 ASCIIToUTF16("abc"), "def",
103 content::PAGE_TRANSITION_QUALIFIER_MASK); 104 content::PAGE_TRANSITION_QUALIFIER_MASK);
104 105
105 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 106 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
106 UpdateNavigation(window_id, tab_id, nav1, 0, true); 107 UpdateNavigation(window_id, tab_id, nav1, 0, true);
107 108
108 if (pinned_state || write_always) 109 if (pinned_state || write_always)
109 helper_.service()->SetPinnedState(window_id, tab_id, pinned_state); 110 helper_.service()->SetPinnedState(window_id, tab_id, pinned_state);
110 111
111 ScopedVector<SessionWindow> windows; 112 ScopedVector<SessionWindow> windows;
(...skipping 27 matching lines...) Expand all
139 FilePath path_; 140 FilePath path_;
140 141
141 SessionServiceTestHelper helper_; 142 SessionServiceTestHelper helper_;
142 }; 143 };
143 144
144 TEST_F(SessionServiceTest, Basic) { 145 TEST_F(SessionServiceTest, Basic) {
145 SessionID tab_id; 146 SessionID tab_id;
146 ASSERT_NE(window_id.id(), tab_id.id()); 147 ASSERT_NE(window_id.id(), tab_id.id());
147 148
148 TabNavigation nav1(0, GURL("http://google.com"), 149 TabNavigation nav1(0, GURL("http://google.com"),
149 GURL("http://www.referrer.com"), 150 content::Referrer(GURL("http://www.referrer.com"),
151 WebKit::WebReferrerPolicyDefault),
150 ASCIIToUTF16("abc"), "def", 152 ASCIIToUTF16("abc"), "def",
151 content::PAGE_TRANSITION_QUALIFIER_MASK); 153 content::PAGE_TRANSITION_QUALIFIER_MASK);
152 154
153 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 155 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
154 UpdateNavigation(window_id, tab_id, nav1, 0, true); 156 UpdateNavigation(window_id, tab_id, nav1, 0, true);
155 157
156 ScopedVector<SessionWindow> windows; 158 ScopedVector<SessionWindow> windows;
157 ReadWindows(&(windows.get())); 159 ReadWindows(&(windows.get()));
158 160
159 ASSERT_EQ(1U, windows->size()); 161 ASSERT_EQ(1U, windows->size());
160 ASSERT_TRUE(window_bounds == windows[0]->bounds); 162 ASSERT_TRUE(window_bounds == windows[0]->bounds);
161 ASSERT_EQ(0, windows[0]->selected_tab_index); 163 ASSERT_EQ(0, windows[0]->selected_tab_index);
162 ASSERT_EQ(window_id.id(), windows[0]->window_id.id()); 164 ASSERT_EQ(window_id.id(), windows[0]->window_id.id());
163 ASSERT_EQ(1U, windows[0]->tabs.size()); 165 ASSERT_EQ(1U, windows[0]->tabs.size());
164 ASSERT_EQ(Browser::TYPE_TABBED, windows[0]->type); 166 ASSERT_EQ(Browser::TYPE_TABBED, windows[0]->type);
165 167
166 SessionTab* tab = windows[0]->tabs[0]; 168 SessionTab* tab = windows[0]->tabs[0];
167 helper_.AssertTabEquals(window_id, tab_id, 0, 0, 1, *tab); 169 helper_.AssertTabEquals(window_id, tab_id, 0, 0, 1, *tab);
168 170
169 helper_.AssertNavigationEquals(nav1, tab->navigations[0]); 171 helper_.AssertNavigationEquals(nav1, tab->navigations[0]);
170 } 172 }
171 173
172 // Make sure we persist post entries. 174 // Make sure we persist post entries.
173 TEST_F(SessionServiceTest, PersistPostData) { 175 TEST_F(SessionServiceTest, PersistPostData) {
174 SessionID tab_id; 176 SessionID tab_id;
175 ASSERT_NE(window_id.id(), tab_id.id()); 177 ASSERT_NE(window_id.id(), tab_id.id());
176 178
177 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 179 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
178 ASCIIToUTF16("abc"), std::string(), 180 ASCIIToUTF16("abc"), std::string(),
179 content::PAGE_TRANSITION_QUALIFIER_MASK); 181 content::PAGE_TRANSITION_QUALIFIER_MASK);
180 nav1.set_type_mask(TabNavigation::HAS_POST_DATA); 182 nav1.set_type_mask(TabNavigation::HAS_POST_DATA);
181 183
182 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 184 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
183 UpdateNavigation(window_id, tab_id, nav1, 0, true); 185 UpdateNavigation(window_id, tab_id, nav1, 0, true);
184 186
185 ScopedVector<SessionWindow> windows; 187 ScopedVector<SessionWindow> windows;
186 ReadWindows(&(windows.get())); 188 ReadWindows(&(windows.get()));
187 189
188 helper_.AssertSingleWindowWithSingleTab(windows.get(), 1); 190 helper_.AssertSingleWindowWithSingleTab(windows.get(), 1);
189 } 191 }
190 192
191 TEST_F(SessionServiceTest, ClosingTabStaysClosed) { 193 TEST_F(SessionServiceTest, ClosingTabStaysClosed) {
192 SessionID tab_id; 194 SessionID tab_id;
193 SessionID tab2_id; 195 SessionID tab2_id;
194 ASSERT_NE(tab_id.id(), tab2_id.id()); 196 ASSERT_NE(tab_id.id(), tab2_id.id());
195 197
196 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 198 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
197 ASCIIToUTF16("abc"), "def", 199 ASCIIToUTF16("abc"), "def",
198 content::PAGE_TRANSITION_QUALIFIER_MASK); 200 content::PAGE_TRANSITION_QUALIFIER_MASK);
199 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 201 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
200 ASCIIToUTF16("abcd"), "defg", 202 ASCIIToUTF16("abcd"), "defg",
201 content::PAGE_TRANSITION_AUTO_BOOKMARK); 203 content::PAGE_TRANSITION_AUTO_BOOKMARK);
202 204
203 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 205 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
204 UpdateNavigation(window_id, tab_id, nav1, 0, true); 206 UpdateNavigation(window_id, tab_id, nav1, 0, true);
205 207
206 helper_.PrepareTabInWindow(window_id, tab2_id, 1, false); 208 helper_.PrepareTabInWindow(window_id, tab2_id, 1, false);
207 UpdateNavigation(window_id, tab2_id, nav2, 0, true); 209 UpdateNavigation(window_id, tab2_id, nav2, 0, true);
208 service()->TabClosed(window_id, tab2_id, false); 210 service()->TabClosed(window_id, tab2_id, false);
209 211
210 ScopedVector<SessionWindow> windows; 212 ScopedVector<SessionWindow> windows;
211 ReadWindows(&(windows.get())); 213 ReadWindows(&(windows.get()));
212 214
213 ASSERT_EQ(1U, windows->size()); 215 ASSERT_EQ(1U, windows->size());
214 ASSERT_EQ(0, windows[0]->selected_tab_index); 216 ASSERT_EQ(0, windows[0]->selected_tab_index);
215 ASSERT_EQ(window_id.id(), windows[0]->window_id.id()); 217 ASSERT_EQ(window_id.id(), windows[0]->window_id.id());
216 ASSERT_EQ(1U, windows[0]->tabs.size()); 218 ASSERT_EQ(1U, windows[0]->tabs.size());
217 219
218 SessionTab* tab = windows[0]->tabs[0]; 220 SessionTab* tab = windows[0]->tabs[0];
219 helper_.AssertTabEquals(window_id, tab_id, 0, 0, 1, *tab); 221 helper_.AssertTabEquals(window_id, tab_id, 0, 0, 1, *tab);
220 222
221 helper_.AssertNavigationEquals(nav1, tab->navigations[0]); 223 helper_.AssertNavigationEquals(nav1, tab->navigations[0]);
222 } 224 }
223 225
224 TEST_F(SessionServiceTest, Pruning) { 226 TEST_F(SessionServiceTest, Pruning) {
225 SessionID tab_id; 227 SessionID tab_id;
226 228
227 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 229 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
228 ASCIIToUTF16("abc"), "def", 230 ASCIIToUTF16("abc"), "def",
229 content::PAGE_TRANSITION_QUALIFIER_MASK); 231 content::PAGE_TRANSITION_QUALIFIER_MASK);
230 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 232 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
231 ASCIIToUTF16("abcd"), "defg", 233 ASCIIToUTF16("abcd"), "defg",
232 content::PAGE_TRANSITION_AUTO_BOOKMARK); 234 content::PAGE_TRANSITION_AUTO_BOOKMARK);
233 235
234 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 236 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
235 for (int i = 0; i < 6; ++i) { 237 for (int i = 0; i < 6; ++i) {
236 TabNavigation& nav = (i % 2) == 0 ? nav1 : nav2; 238 TabNavigation& nav = (i % 2) == 0 ? nav1 : nav2;
237 UpdateNavigation(window_id, tab_id, nav, i, true); 239 UpdateNavigation(window_id, tab_id, nav, i, true);
238 } 240 }
239 service()->TabNavigationPathPrunedFromBack(window_id, tab_id, 3); 241 service()->TabNavigationPathPrunedFromBack(window_id, tab_id, 3);
240 242
(...skipping 12 matching lines...) Expand all
253 helper_.AssertNavigationEquals(nav1, tab->navigations[0]); 255 helper_.AssertNavigationEquals(nav1, tab->navigations[0]);
254 helper_.AssertNavigationEquals(nav2, tab->navigations[1]); 256 helper_.AssertNavigationEquals(nav2, tab->navigations[1]);
255 helper_.AssertNavigationEquals(nav1, tab->navigations[2]); 257 helper_.AssertNavigationEquals(nav1, tab->navigations[2]);
256 } 258 }
257 259
258 TEST_F(SessionServiceTest, TwoWindows) { 260 TEST_F(SessionServiceTest, TwoWindows) {
259 SessionID window2_id; 261 SessionID window2_id;
260 SessionID tab1_id; 262 SessionID tab1_id;
261 SessionID tab2_id; 263 SessionID tab2_id;
262 264
263 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 265 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
264 ASCIIToUTF16("abc"), "def", 266 ASCIIToUTF16("abc"), "def",
265 content::PAGE_TRANSITION_QUALIFIER_MASK); 267 content::PAGE_TRANSITION_QUALIFIER_MASK);
266 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 268 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
267 ASCIIToUTF16("abcd"), "defg", 269 ASCIIToUTF16("abcd"), "defg",
268 content::PAGE_TRANSITION_AUTO_BOOKMARK); 270 content::PAGE_TRANSITION_AUTO_BOOKMARK);
269 271
270 helper_.PrepareTabInWindow(window_id, tab1_id, 0, true); 272 helper_.PrepareTabInWindow(window_id, tab1_id, 0, true);
271 UpdateNavigation(window_id, tab1_id, nav1, 0, true); 273 UpdateNavigation(window_id, tab1_id, nav1, 0, true);
272 274
273 const gfx::Rect window2_bounds(3, 4, 5, 6); 275 const gfx::Rect window2_bounds(3, 4, 5, 6);
274 service()->SetWindowType(window2_id, Browser::TYPE_TABBED); 276 service()->SetWindowType(window2_id, Browser::TYPE_TABBED);
275 service()->SetWindowBounds(window2_id, 277 service()->SetWindowBounds(window2_id,
276 window2_bounds, 278 window2_bounds,
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
310 tab = rt2; 312 tab = rt2;
311 helper_.AssertTabEquals(window2_id, tab2_id, 0, 0, 1, *tab); 313 helper_.AssertTabEquals(window2_id, tab2_id, 0, 0, 1, *tab);
312 helper_.AssertNavigationEquals(nav2, tab->navigations[0]); 314 helper_.AssertNavigationEquals(nav2, tab->navigations[0]);
313 } 315 }
314 316
315 TEST_F(SessionServiceTest, WindowWithNoTabsGetsPruned) { 317 TEST_F(SessionServiceTest, WindowWithNoTabsGetsPruned) {
316 SessionID window2_id; 318 SessionID window2_id;
317 SessionID tab1_id; 319 SessionID tab1_id;
318 SessionID tab2_id; 320 SessionID tab2_id;
319 321
320 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 322 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
321 ASCIIToUTF16("abc"), "def", 323 ASCIIToUTF16("abc"), "def",
322 content::PAGE_TRANSITION_QUALIFIER_MASK); 324 content::PAGE_TRANSITION_QUALIFIER_MASK);
323 325
324 helper_.PrepareTabInWindow(window_id, tab1_id, 0, true); 326 helper_.PrepareTabInWindow(window_id, tab1_id, 0, true);
325 UpdateNavigation(window_id, tab1_id, nav1, 0, true); 327 UpdateNavigation(window_id, tab1_id, nav1, 0, true);
326 328
327 const gfx::Rect window2_bounds(3, 4, 5, 6); 329 const gfx::Rect window2_bounds(3, 4, 5, 6);
328 service()->SetWindowType(window2_id, Browser::TYPE_TABBED); 330 service()->SetWindowType(window2_id, Browser::TYPE_TABBED);
329 service()->SetWindowBounds(window2_id, 331 service()->SetWindowBounds(window2_id,
330 window2_bounds, 332 window2_bounds,
(...skipping 11 matching lines...) Expand all
342 SessionTab* tab = windows[0]->tabs[0]; 344 SessionTab* tab = windows[0]->tabs[0];
343 helper_.AssertTabEquals(window_id, tab1_id, 0, 0, 1, *tab); 345 helper_.AssertTabEquals(window_id, tab1_id, 0, 0, 1, *tab);
344 helper_.AssertNavigationEquals(nav1, tab->navigations[0]); 346 helper_.AssertNavigationEquals(nav1, tab->navigations[0]);
345 } 347 }
346 348
347 TEST_F(SessionServiceTest, ClosingWindowDoesntCloseTabs) { 349 TEST_F(SessionServiceTest, ClosingWindowDoesntCloseTabs) {
348 SessionID tab_id; 350 SessionID tab_id;
349 SessionID tab2_id; 351 SessionID tab2_id;
350 ASSERT_NE(tab_id.id(), tab2_id.id()); 352 ASSERT_NE(tab_id.id(), tab2_id.id());
351 353
352 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 354 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
353 ASCIIToUTF16("abc"), "def", 355 ASCIIToUTF16("abc"), "def",
354 content::PAGE_TRANSITION_QUALIFIER_MASK); 356 content::PAGE_TRANSITION_QUALIFIER_MASK);
355 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 357 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
356 ASCIIToUTF16("abcd"), "defg", 358 ASCIIToUTF16("abcd"), "defg",
357 content::PAGE_TRANSITION_AUTO_BOOKMARK); 359 content::PAGE_TRANSITION_AUTO_BOOKMARK);
358 360
359 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 361 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
360 UpdateNavigation(window_id, tab_id, nav1, 0, true); 362 UpdateNavigation(window_id, tab_id, nav1, 0, true);
361 363
362 helper_.PrepareTabInWindow(window_id, tab2_id, 1, false); 364 helper_.PrepareTabInWindow(window_id, tab2_id, 1, false);
363 UpdateNavigation(window_id, tab2_id, nav2, 0, true); 365 UpdateNavigation(window_id, tab2_id, nav2, 0, true);
364 366
365 service()->WindowClosing(window_id); 367 service()->WindowClosing(window_id);
(...skipping 19 matching lines...) Expand all
385 SessionID window2_id; 387 SessionID window2_id;
386 SessionID tab_id; 388 SessionID tab_id;
387 SessionID tab2_id; 389 SessionID tab2_id;
388 ASSERT_NE(window2_id.id(), window_id.id()); 390 ASSERT_NE(window2_id.id(), window_id.id());
389 391
390 service()->SetWindowType(window2_id, Browser::TYPE_TABBED); 392 service()->SetWindowType(window2_id, Browser::TYPE_TABBED);
391 service()->SetWindowBounds(window2_id, 393 service()->SetWindowBounds(window2_id,
392 window_bounds, 394 window_bounds,
393 ui::SHOW_STATE_NORMAL); 395 ui::SHOW_STATE_NORMAL);
394 396
395 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 397 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
396 ASCIIToUTF16("abc"), "def", 398 ASCIIToUTF16("abc"), "def",
397 content::PAGE_TRANSITION_QUALIFIER_MASK); 399 content::PAGE_TRANSITION_QUALIFIER_MASK);
398 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 400 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
399 ASCIIToUTF16("abcd"), "defg", 401 ASCIIToUTF16("abcd"), "defg",
400 content::PAGE_TRANSITION_AUTO_BOOKMARK); 402 content::PAGE_TRANSITION_AUTO_BOOKMARK);
401 403
402 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 404 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
403 UpdateNavigation(window_id, tab_id, nav1, 0, true); 405 UpdateNavigation(window_id, tab_id, nav1, 0, true);
404 406
405 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false); 407 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false);
406 UpdateNavigation(window2_id, tab2_id, nav2, 0, true); 408 UpdateNavigation(window2_id, tab2_id, nav2, 0, true);
407 409
408 service()->WindowClosing(window2_id); 410 service()->WindowClosing(window2_id);
(...skipping 21 matching lines...) Expand all
430 SessionID window2_id; 432 SessionID window2_id;
431 SessionID tab_id; 433 SessionID tab_id;
432 SessionID tab2_id; 434 SessionID tab2_id;
433 ASSERT_NE(window2_id.id(), window_id.id()); 435 ASSERT_NE(window2_id.id(), window_id.id());
434 436
435 service()->SetWindowType(window2_id, Browser::TYPE_POPUP); 437 service()->SetWindowType(window2_id, Browser::TYPE_POPUP);
436 service()->SetWindowBounds(window2_id, 438 service()->SetWindowBounds(window2_id,
437 window_bounds, 439 window_bounds,
438 ui::SHOW_STATE_NORMAL); 440 ui::SHOW_STATE_NORMAL);
439 441
440 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 442 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
441 ASCIIToUTF16("abc"), "def", 443 ASCIIToUTF16("abc"), "def",
442 content::PAGE_TRANSITION_QUALIFIER_MASK); 444 content::PAGE_TRANSITION_QUALIFIER_MASK);
443 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 445 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
444 ASCIIToUTF16("abcd"), "defg", 446 ASCIIToUTF16("abcd"), "defg",
445 content::PAGE_TRANSITION_AUTO_BOOKMARK); 447 content::PAGE_TRANSITION_AUTO_BOOKMARK);
446 448
447 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 449 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
448 UpdateNavigation(window_id, tab_id, nav1, 0, true); 450 UpdateNavigation(window_id, tab_id, nav1, 0, true);
449 451
450 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false); 452 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false);
451 UpdateNavigation(window2_id, tab2_id, nav2, 0, true); 453 UpdateNavigation(window2_id, tab2_id, nav2, 0, true);
452 454
453 ScopedVector<SessionWindow> windows; 455 ScopedVector<SessionWindow> windows;
(...skipping 17 matching lines...) Expand all
471 SessionID window2_id; 473 SessionID window2_id;
472 SessionID tab_id; 474 SessionID tab_id;
473 SessionID tab2_id; 475 SessionID tab2_id;
474 ASSERT_NE(window2_id.id(), window_id.id()); 476 ASSERT_NE(window2_id.id(), window_id.id());
475 477
476 service()->SetWindowType(window2_id, Browser::TYPE_POPUP); 478 service()->SetWindowType(window2_id, Browser::TYPE_POPUP);
477 service()->SetWindowBounds(window2_id, 479 service()->SetWindowBounds(window2_id,
478 window_bounds, 480 window_bounds,
479 ui::SHOW_STATE_NORMAL); 481 ui::SHOW_STATE_NORMAL);
480 482
481 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 483 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
482 ASCIIToUTF16("abc"), "def", 484 ASCIIToUTF16("abc"), "def",
483 content::PAGE_TRANSITION_QUALIFIER_MASK); 485 content::PAGE_TRANSITION_QUALIFIER_MASK);
484 TabNavigation nav2(0, GURL("http://google2.com"), GURL(), 486 TabNavigation nav2(0, GURL("http://google2.com"), content::Referrer(),
485 ASCIIToUTF16("abcd"), "defg", 487 ASCIIToUTF16("abcd"), "defg",
486 content::PAGE_TRANSITION_AUTO_BOOKMARK); 488 content::PAGE_TRANSITION_AUTO_BOOKMARK);
487 489
488 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 490 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
489 UpdateNavigation(window_id, tab_id, nav1, 0, true); 491 UpdateNavigation(window_id, tab_id, nav1, 0, true);
490 492
491 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false); 493 helper_.PrepareTabInWindow(window2_id, tab2_id, 0, false);
492 UpdateNavigation(window2_id, tab2_id, nav2, 0, true); 494 UpdateNavigation(window2_id, tab2_id, nav2, 0, true);
493 495
494 ScopedVector<SessionWindow> windows; 496 ScopedVector<SessionWindow> windows;
(...skipping 22 matching lines...) Expand all
517 519
518 // Tests pruning from the front. 520 // Tests pruning from the front.
519 TEST_F(SessionServiceTest, PruneFromFront) { 521 TEST_F(SessionServiceTest, PruneFromFront) {
520 const std::string base_url("http://google.com/"); 522 const std::string base_url("http://google.com/");
521 SessionID tab_id; 523 SessionID tab_id;
522 524
523 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 525 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
524 526
525 // Add 5 navigations, with the 4th selected. 527 // Add 5 navigations, with the 4th selected.
526 for (int i = 0; i < 5; ++i) { 528 for (int i = 0; i < 5; ++i) {
527 TabNavigation nav(0, GURL(base_url + base::IntToString(i)), GURL(), 529 TabNavigation nav(0, GURL(base_url + base::IntToString(i)),
530 content::Referrer(),
528 ASCIIToUTF16("a"), "b", 531 ASCIIToUTF16("a"), "b",
529 content::PAGE_TRANSITION_QUALIFIER_MASK); 532 content::PAGE_TRANSITION_QUALIFIER_MASK);
530 UpdateNavigation(window_id, tab_id, nav, i, (i == 3)); 533 UpdateNavigation(window_id, tab_id, nav, i, (i == 3));
531 } 534 }
532 535
533 // Prune the first two navigations from the front. 536 // Prune the first two navigations from the front.
534 helper_.service()->TabNavigationPathPrunedFromFront(window_id, tab_id, 2); 537 helper_.service()->TabNavigationPathPrunedFromFront(window_id, tab_id, 2);
535 538
536 // Read back in. 539 // Read back in.
537 ScopedVector<SessionWindow> windows; 540 ScopedVector<SessionWindow> windows;
(...skipping 21 matching lines...) Expand all
559 562
560 // Prunes from front so that we have no entries. 563 // Prunes from front so that we have no entries.
561 TEST_F(SessionServiceTest, PruneToEmpty) { 564 TEST_F(SessionServiceTest, PruneToEmpty) {
562 const std::string base_url("http://google.com/"); 565 const std::string base_url("http://google.com/");
563 SessionID tab_id; 566 SessionID tab_id;
564 567
565 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 568 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
566 569
567 // Add 5 navigations, with the 4th selected. 570 // Add 5 navigations, with the 4th selected.
568 for (int i = 0; i < 5; ++i) { 571 for (int i = 0; i < 5; ++i) {
569 TabNavigation nav(0, GURL(base_url + base::IntToString(i)), GURL(), 572 TabNavigation nav(0, GURL(base_url + base::IntToString(i)),
573 content::Referrer(),
570 ASCIIToUTF16("a"), "b", 574 ASCIIToUTF16("a"), "b",
571 content::PAGE_TRANSITION_QUALIFIER_MASK); 575 content::PAGE_TRANSITION_QUALIFIER_MASK);
572 UpdateNavigation(window_id, tab_id, nav, i, (i == 3)); 576 UpdateNavigation(window_id, tab_id, nav, i, (i == 3));
573 } 577 }
574 578
575 // Prune the first two navigations from the front. 579 // Prune the first two navigations from the front.
576 helper_.service()->TabNavigationPathPrunedFromFront(window_id, tab_id, 5); 580 helper_.service()->TabNavigationPathPrunedFromFront(window_id, tab_id, 5);
577 581
578 // Read back in. 582 // Read back in.
579 ScopedVector<SessionWindow> windows; 583 ScopedVector<SessionWindow> windows;
(...skipping 11 matching lines...) Expand all
591 TEST_F(SessionServiceTest, PinnedFalseWhenSetToFalse) { 595 TEST_F(SessionServiceTest, PinnedFalseWhenSetToFalse) {
592 EXPECT_FALSE(CreateAndWriteSessionWithOneTab(false, true)); 596 EXPECT_FALSE(CreateAndWriteSessionWithOneTab(false, true));
593 } 597 }
594 598
595 // Make sure application extension ids are persisted. 599 // Make sure application extension ids are persisted.
596 TEST_F(SessionServiceTest, PersistApplicationExtensionID) { 600 TEST_F(SessionServiceTest, PersistApplicationExtensionID) {
597 SessionID tab_id; 601 SessionID tab_id;
598 ASSERT_NE(window_id.id(), tab_id.id()); 602 ASSERT_NE(window_id.id(), tab_id.id());
599 std::string app_id("foo"); 603 std::string app_id("foo");
600 604
601 TabNavigation nav1(0, GURL("http://google.com"), GURL(), 605 TabNavigation nav1(0, GURL("http://google.com"), content::Referrer(),
602 ASCIIToUTF16("abc"), std::string(), 606 ASCIIToUTF16("abc"), std::string(),
603 content::PAGE_TRANSITION_QUALIFIER_MASK); 607 content::PAGE_TRANSITION_QUALIFIER_MASK);
604 608
605 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 609 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
606 UpdateNavigation(window_id, tab_id, nav1, 0, true); 610 UpdateNavigation(window_id, tab_id, nav1, 0, true);
607 helper_.SetTabExtensionAppID(window_id, tab_id, app_id); 611 helper_.SetTabExtensionAppID(window_id, tab_id, app_id);
608 612
609 ScopedVector<SessionWindow> windows; 613 ScopedVector<SessionWindow> windows;
610 ReadWindows(&(windows.get())); 614 ReadWindows(&(windows.get()));
611 615
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
658 service()->Save(); 662 service()->Save();
659 EXPECT_EQ(sync_save_count_, 1); 663 EXPECT_EQ(sync_save_count_, 1);
660 } 664 }
661 665
662 // Makes sure a tab closed by a user gesture is not restored. 666 // Makes sure a tab closed by a user gesture is not restored.
663 TEST_F(SessionServiceTest, CloseTabUserGesture) { 667 TEST_F(SessionServiceTest, CloseTabUserGesture) {
664 SessionID tab_id; 668 SessionID tab_id;
665 ASSERT_NE(window_id.id(), tab_id.id()); 669 ASSERT_NE(window_id.id(), tab_id.id());
666 670
667 TabNavigation nav1(0, GURL("http://google.com"), 671 TabNavigation nav1(0, GURL("http://google.com"),
668 GURL("http://www.referrer.com"), 672 content::Referrer(GURL("http://www.referrer.com"),
673 WebKit::WebReferrerPolicyDefault),
669 ASCIIToUTF16("abc"), "def", 674 ASCIIToUTF16("abc"), "def",
670 content::PAGE_TRANSITION_QUALIFIER_MASK); 675 content::PAGE_TRANSITION_QUALIFIER_MASK);
671 676
672 helper_.PrepareTabInWindow(window_id, tab_id, 0, true); 677 helper_.PrepareTabInWindow(window_id, tab_id, 0, true);
673 UpdateNavigation(window_id, tab_id, nav1, 0, true); 678 UpdateNavigation(window_id, tab_id, nav1, 0, true);
674 service()->TabClosed(window_id, tab_id, true); 679 service()->TabClosed(window_id, tab_id, true);
675 680
676 ScopedVector<SessionWindow> windows; 681 ScopedVector<SessionWindow> windows;
677 ReadWindows(&(windows.get())); 682 ReadWindows(&(windows.get()));
678 683
679 ASSERT_TRUE(windows->empty()); 684 ASSERT_TRUE(windows->empty());
680 } 685 }
OLDNEW
« no previous file with comments | « chrome/browser/sessions/session_service_test_helper.cc ('k') | chrome/browser/sessions/session_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698