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

Side by Side Diff: chrome/browser/bookmarks/bookmark_model_unittest.cc

Issue 105193002: Replace string16 with base::string16. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 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) 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/bookmarks/bookmark_model.h" 5 #include "chrome/browser/bookmarks/bookmark_model.h"
6 6
7 #include <set> 7 #include <set>
8 #include <string> 8 #include <string>
9 9
10 #include "base/base_paths.h" 10 #include "base/base_paths.h"
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 EXPECT_EQ(0, mobile_node->child_count()); 301 EXPECT_EQ(0, mobile_node->child_count());
302 EXPECT_EQ(BookmarkNode::MOBILE, mobile_node->type()); 302 EXPECT_EQ(BookmarkNode::MOBILE, mobile_node->type());
303 303
304 EXPECT_TRUE(bb_node->id() != other_node->id()); 304 EXPECT_TRUE(bb_node->id() != other_node->id());
305 EXPECT_TRUE(bb_node->id() != mobile_node->id()); 305 EXPECT_TRUE(bb_node->id() != mobile_node->id());
306 EXPECT_TRUE(other_node->id() != mobile_node->id()); 306 EXPECT_TRUE(other_node->id() != mobile_node->id());
307 } 307 }
308 308
309 TEST_F(BookmarkModelTest, AddURL) { 309 TEST_F(BookmarkModelTest, AddURL) {
310 const BookmarkNode* root = model_.bookmark_bar_node(); 310 const BookmarkNode* root = model_.bookmark_bar_node();
311 const string16 title(ASCIIToUTF16("foo")); 311 const base::string16 title(ASCIIToUTF16("foo"));
312 const GURL url("http://foo.com"); 312 const GURL url("http://foo.com");
313 313
314 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url); 314 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url);
315 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0); 315 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0);
316 observer_details_.ExpectEquals(root, NULL, 0, -1); 316 observer_details_.ExpectEquals(root, NULL, 0, -1);
317 317
318 ASSERT_EQ(1, root->child_count()); 318 ASSERT_EQ(1, root->child_count());
319 ASSERT_EQ(title, new_node->GetTitle()); 319 ASSERT_EQ(title, new_node->GetTitle());
320 ASSERT_TRUE(url == new_node->url()); 320 ASSERT_TRUE(url == new_node->url());
321 ASSERT_EQ(BookmarkNode::URL, new_node->type()); 321 ASSERT_EQ(BookmarkNode::URL, new_node->type());
322 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url)); 322 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url));
323 323
324 EXPECT_TRUE(new_node->id() != root->id() && 324 EXPECT_TRUE(new_node->id() != root->id() &&
325 new_node->id() != model_.other_node()->id() && 325 new_node->id() != model_.other_node()->id() &&
326 new_node->id() != model_.mobile_node()->id()); 326 new_node->id() != model_.mobile_node()->id());
327 } 327 }
328 328
329 TEST_F(BookmarkModelTest, AddURLWithUnicodeTitle) { 329 TEST_F(BookmarkModelTest, AddURLWithUnicodeTitle) {
330 const BookmarkNode* root = model_.bookmark_bar_node(); 330 const BookmarkNode* root = model_.bookmark_bar_node();
331 const string16 title(WideToUTF16( 331 const base::string16 title(WideToUTF16(
332 L"\u767e\u5ea6\u4e00\u4e0b\uff0c\u4f60\u5c31\u77e5\u9053")); 332 L"\u767e\u5ea6\u4e00\u4e0b\uff0c\u4f60\u5c31\u77e5\u9053"));
333 const GURL url("https://www.baidu.com/"); 333 const GURL url("https://www.baidu.com/");
334 334
335 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url); 335 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url);
336 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0); 336 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0);
337 observer_details_.ExpectEquals(root, NULL, 0, -1); 337 observer_details_.ExpectEquals(root, NULL, 0, -1);
338 338
339 ASSERT_EQ(1, root->child_count()); 339 ASSERT_EQ(1, root->child_count());
340 ASSERT_EQ(title, new_node->GetTitle()); 340 ASSERT_EQ(title, new_node->GetTitle());
341 ASSERT_TRUE(url == new_node->url()); 341 ASSERT_TRUE(url == new_node->url());
342 ASSERT_EQ(BookmarkNode::URL, new_node->type()); 342 ASSERT_EQ(BookmarkNode::URL, new_node->type());
343 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url)); 343 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url));
344 344
345 EXPECT_TRUE(new_node->id() != root->id() && 345 EXPECT_TRUE(new_node->id() != root->id() &&
346 new_node->id() != model_.other_node()->id() && 346 new_node->id() != model_.other_node()->id() &&
347 new_node->id() != model_.mobile_node()->id()); 347 new_node->id() != model_.mobile_node()->id());
348 } 348 }
349 349
350 TEST_F(BookmarkModelTest, AddURLWithWhitespaceTitle) { 350 TEST_F(BookmarkModelTest, AddURLWithWhitespaceTitle) {
351 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(url_whitespace_test_cases); ++i) { 351 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(url_whitespace_test_cases); ++i) {
352 const BookmarkNode* root = model_.bookmark_bar_node(); 352 const BookmarkNode* root = model_.bookmark_bar_node();
353 const string16 title( 353 const base::string16 title(
354 ASCIIToUTF16(url_whitespace_test_cases[i].input_title)); 354 ASCIIToUTF16(url_whitespace_test_cases[i].input_title));
355 const GURL url("http://foo.com"); 355 const GURL url("http://foo.com");
356 356
357 const BookmarkNode* new_node = model_.AddURL(root, i, title, url); 357 const BookmarkNode* new_node = model_.AddURL(root, i, title, url);
358 358
359 int size = i + 1; 359 int size = i + 1;
360 EXPECT_EQ(size, root->child_count()); 360 EXPECT_EQ(size, root->child_count());
361 EXPECT_EQ(ASCIIToUTF16(url_whitespace_test_cases[i].expected_title), 361 EXPECT_EQ(ASCIIToUTF16(url_whitespace_test_cases[i].expected_title),
362 new_node->GetTitle()); 362 new_node->GetTitle());
363 EXPECT_EQ(BookmarkNode::URL, new_node->type()); 363 EXPECT_EQ(BookmarkNode::URL, new_node->type());
364 } 364 }
365 } 365 }
366 366
367 TEST_F(BookmarkModelTest, AddURLToMobileBookmarks) { 367 TEST_F(BookmarkModelTest, AddURLToMobileBookmarks) {
368 const BookmarkNode* root = model_.mobile_node(); 368 const BookmarkNode* root = model_.mobile_node();
369 const string16 title(ASCIIToUTF16("foo")); 369 const base::string16 title(ASCIIToUTF16("foo"));
370 const GURL url("http://foo.com"); 370 const GURL url("http://foo.com");
371 371
372 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url); 372 const BookmarkNode* new_node = model_.AddURL(root, 0, title, url);
373 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0); 373 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0);
374 observer_details_.ExpectEquals(root, NULL, 0, -1); 374 observer_details_.ExpectEquals(root, NULL, 0, -1);
375 375
376 ASSERT_EQ(1, root->child_count()); 376 ASSERT_EQ(1, root->child_count());
377 ASSERT_EQ(title, new_node->GetTitle()); 377 ASSERT_EQ(title, new_node->GetTitle());
378 ASSERT_TRUE(url == new_node->url()); 378 ASSERT_TRUE(url == new_node->url());
379 ASSERT_EQ(BookmarkNode::URL, new_node->type()); 379 ASSERT_EQ(BookmarkNode::URL, new_node->type());
380 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url)); 380 ASSERT_TRUE(new_node == model_.GetMostRecentlyAddedNodeForURL(url));
381 381
382 EXPECT_TRUE(new_node->id() != root->id() && 382 EXPECT_TRUE(new_node->id() != root->id() &&
383 new_node->id() != model_.other_node()->id() && 383 new_node->id() != model_.other_node()->id() &&
384 new_node->id() != model_.mobile_node()->id()); 384 new_node->id() != model_.mobile_node()->id());
385 } 385 }
386 386
387 TEST_F(BookmarkModelTest, AddFolder) { 387 TEST_F(BookmarkModelTest, AddFolder) {
388 const BookmarkNode* root = model_.bookmark_bar_node(); 388 const BookmarkNode* root = model_.bookmark_bar_node();
389 const string16 title(ASCIIToUTF16("foo")); 389 const base::string16 title(ASCIIToUTF16("foo"));
390 390
391 const BookmarkNode* new_node = model_.AddFolder(root, 0, title); 391 const BookmarkNode* new_node = model_.AddFolder(root, 0, title);
392 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0); 392 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0);
393 observer_details_.ExpectEquals(root, NULL, 0, -1); 393 observer_details_.ExpectEquals(root, NULL, 0, -1);
394 394
395 ASSERT_EQ(1, root->child_count()); 395 ASSERT_EQ(1, root->child_count());
396 ASSERT_EQ(title, new_node->GetTitle()); 396 ASSERT_EQ(title, new_node->GetTitle());
397 ASSERT_EQ(BookmarkNode::FOLDER, new_node->type()); 397 ASSERT_EQ(BookmarkNode::FOLDER, new_node->type());
398 398
399 EXPECT_TRUE(new_node->id() != root->id() && 399 EXPECT_TRUE(new_node->id() != root->id() &&
400 new_node->id() != model_.other_node()->id() && 400 new_node->id() != model_.other_node()->id() &&
401 new_node->id() != model_.mobile_node()->id()); 401 new_node->id() != model_.mobile_node()->id());
402 402
403 // Add another folder, just to make sure folder_ids are incremented correctly. 403 // Add another folder, just to make sure folder_ids are incremented correctly.
404 ClearCounts(); 404 ClearCounts();
405 model_.AddFolder(root, 0, title); 405 model_.AddFolder(root, 0, title);
406 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0); 406 AssertObserverCount(1, 0, 0, 0, 0, 0, 0, 0, 0);
407 observer_details_.ExpectEquals(root, NULL, 0, -1); 407 observer_details_.ExpectEquals(root, NULL, 0, -1);
408 } 408 }
409 409
410 TEST_F(BookmarkModelTest, AddFolderWithWhitespaceTitle) { 410 TEST_F(BookmarkModelTest, AddFolderWithWhitespaceTitle) {
411 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(title_whitespace_test_cases); ++i) { 411 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(title_whitespace_test_cases); ++i) {
412 const BookmarkNode* root = model_.bookmark_bar_node(); 412 const BookmarkNode* root = model_.bookmark_bar_node();
413 const string16 title( 413 const base::string16 title(
414 ASCIIToUTF16(title_whitespace_test_cases[i].input_title)); 414 ASCIIToUTF16(title_whitespace_test_cases[i].input_title));
415 415
416 const BookmarkNode* new_node = model_.AddFolder(root, i, title); 416 const BookmarkNode* new_node = model_.AddFolder(root, i, title);
417 417
418 int size = i + 1; 418 int size = i + 1;
419 EXPECT_EQ(size, root->child_count()); 419 EXPECT_EQ(size, root->child_count());
420 EXPECT_EQ(ASCIIToUTF16(title_whitespace_test_cases[i].expected_title), 420 EXPECT_EQ(ASCIIToUTF16(title_whitespace_test_cases[i].expected_title),
421 new_node->GetTitle()); 421 new_node->GetTitle());
422 EXPECT_EQ(BookmarkNode::FOLDER, new_node->type()); 422 EXPECT_EQ(BookmarkNode::FOLDER, new_node->type());
423 } 423 }
424 } 424 }
425 425
426 TEST_F(BookmarkModelTest, RemoveURL) { 426 TEST_F(BookmarkModelTest, RemoveURL) {
427 const BookmarkNode* root = model_.bookmark_bar_node(); 427 const BookmarkNode* root = model_.bookmark_bar_node();
428 const string16 title(ASCIIToUTF16("foo")); 428 const base::string16 title(ASCIIToUTF16("foo"));
429 const GURL url("http://foo.com"); 429 const GURL url("http://foo.com");
430 model_.AddURL(root, 0, title, url); 430 model_.AddURL(root, 0, title, url);
431 ClearCounts(); 431 ClearCounts();
432 432
433 model_.Remove(root, 0); 433 model_.Remove(root, 0);
434 ASSERT_EQ(0, root->child_count()); 434 ASSERT_EQ(0, root->child_count());
435 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0); 435 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0);
436 observer_details_.ExpectEquals(root, NULL, 0, -1); 436 observer_details_.ExpectEquals(root, NULL, 0, -1);
437 437
438 // Make sure there is no mapping for the URL. 438 // Make sure there is no mapping for the URL.
439 ASSERT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL); 439 ASSERT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL);
440 } 440 }
441 441
442 TEST_F(BookmarkModelTest, RemoveFolder) { 442 TEST_F(BookmarkModelTest, RemoveFolder) {
443 const BookmarkNode* root = model_.bookmark_bar_node(); 443 const BookmarkNode* root = model_.bookmark_bar_node();
444 const BookmarkNode* folder = model_.AddFolder(root, 0, ASCIIToUTF16("foo")); 444 const BookmarkNode* folder = model_.AddFolder(root, 0, ASCIIToUTF16("foo"));
445 445
446 ClearCounts(); 446 ClearCounts();
447 447
448 // Add a URL as a child. 448 // Add a URL as a child.
449 const string16 title(ASCIIToUTF16("foo")); 449 const base::string16 title(ASCIIToUTF16("foo"));
450 const GURL url("http://foo.com"); 450 const GURL url("http://foo.com");
451 model_.AddURL(folder, 0, title, url); 451 model_.AddURL(folder, 0, title, url);
452 452
453 ClearCounts(); 453 ClearCounts();
454 454
455 // Now remove the folder. 455 // Now remove the folder.
456 model_.Remove(root, 0); 456 model_.Remove(root, 0);
457 ASSERT_EQ(0, root->child_count()); 457 ASSERT_EQ(0, root->child_count());
458 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0); 458 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0);
459 observer_details_.ExpectEquals(root, NULL, 0, -1); 459 observer_details_.ExpectEquals(root, NULL, 0, -1);
460 460
461 // Make sure there is no mapping for the URL. 461 // Make sure there is no mapping for the URL.
462 ASSERT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL); 462 ASSERT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL);
463 } 463 }
464 464
465 TEST_F(BookmarkModelTest, RemoveAll) { 465 TEST_F(BookmarkModelTest, RemoveAll) {
466 const BookmarkNode* bookmark_bar_node = model_.bookmark_bar_node(); 466 const BookmarkNode* bookmark_bar_node = model_.bookmark_bar_node();
467 467
468 ClearCounts(); 468 ClearCounts();
469 469
470 // Add a url to bookmark bar. 470 // Add a url to bookmark bar.
471 string16 title(ASCIIToUTF16("foo")); 471 base::string16 title(ASCIIToUTF16("foo"));
472 GURL url("http://foo.com"); 472 GURL url("http://foo.com");
473 model_.AddURL(bookmark_bar_node, 0, title, url); 473 model_.AddURL(bookmark_bar_node, 0, title, url);
474 474
475 // Add a folder with child URL. 475 // Add a folder with child URL.
476 const BookmarkNode* folder = model_.AddFolder(bookmark_bar_node, 0, title); 476 const BookmarkNode* folder = model_.AddFolder(bookmark_bar_node, 0, title);
477 model_.AddURL(folder, 0, title, url); 477 model_.AddURL(folder, 0, title, url);
478 478
479 AssertObserverCount(3, 0, 0, 0, 0, 0, 0, 0, 0); 479 AssertObserverCount(3, 0, 0, 0, 0, 0, 0, 0, 0);
480 ClearCounts(); 480 ClearCounts();
481 481
482 model_.RemoveAll(); 482 model_.RemoveAll();
483 483
484 EXPECT_EQ(0, bookmark_bar_node->child_count()); 484 EXPECT_EQ(0, bookmark_bar_node->child_count());
485 // No individual BookmarkNodeRemoved events are fired, so removed count 485 // No individual BookmarkNodeRemoved events are fired, so removed count
486 // should be 0. 486 // should be 0.
487 AssertObserverCount(0, 0, 0, 0, 0, 0, 0, 0, 1); 487 AssertObserverCount(0, 0, 0, 0, 0, 0, 0, 0, 1);
488 AssertExtensiveChangesObserverCount(1, 1); 488 AssertExtensiveChangesObserverCount(1, 1);
489 EXPECT_EQ(1, AllNodesRemovedObserverCount()); 489 EXPECT_EQ(1, AllNodesRemovedObserverCount());
490 } 490 }
491 491
492 TEST_F(BookmarkModelTest, SetTitle) { 492 TEST_F(BookmarkModelTest, SetTitle) {
493 const BookmarkNode* root = model_.bookmark_bar_node(); 493 const BookmarkNode* root = model_.bookmark_bar_node();
494 string16 title(ASCIIToUTF16("foo")); 494 base::string16 title(ASCIIToUTF16("foo"));
495 const GURL url("http://foo.com"); 495 const GURL url("http://foo.com");
496 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 496 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
497 497
498 ClearCounts(); 498 ClearCounts();
499 499
500 title = ASCIIToUTF16("foo2"); 500 title = ASCIIToUTF16("foo2");
501 model_.SetTitle(node, title); 501 model_.SetTitle(node, title);
502 AssertObserverCount(0, 0, 0, 1, 0, 0, 1, 0, 0); 502 AssertObserverCount(0, 0, 0, 1, 0, 0, 1, 0, 0);
503 observer_details_.ExpectEquals(node, NULL, -1, -1); 503 observer_details_.ExpectEquals(node, NULL, -1, -1);
504 EXPECT_EQ(title, node->GetTitle()); 504 EXPECT_EQ(title, node->GetTitle());
505 } 505 }
506 506
507 TEST_F(BookmarkModelTest, SetTitleWithWhitespace) { 507 TEST_F(BookmarkModelTest, SetTitleWithWhitespace) {
508 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(title_whitespace_test_cases); ++i) { 508 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(title_whitespace_test_cases); ++i) {
509 const BookmarkNode* root = model_.bookmark_bar_node(); 509 const BookmarkNode* root = model_.bookmark_bar_node();
510 string16 title(ASCIIToUTF16("dummy")); 510 base::string16 title(ASCIIToUTF16("dummy"));
511 const GURL url("http://foo.com"); 511 const GURL url("http://foo.com");
512 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 512 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
513 513
514 title = ASCIIToUTF16(title_whitespace_test_cases[i].input_title); 514 title = ASCIIToUTF16(title_whitespace_test_cases[i].input_title);
515 model_.SetTitle(node, title); 515 model_.SetTitle(node, title);
516 EXPECT_EQ(ASCIIToUTF16(title_whitespace_test_cases[i].expected_title), 516 EXPECT_EQ(ASCIIToUTF16(title_whitespace_test_cases[i].expected_title),
517 node->GetTitle()); 517 node->GetTitle());
518 } 518 }
519 } 519 }
520 520
521 TEST_F(BookmarkModelTest, SetURL) { 521 TEST_F(BookmarkModelTest, SetURL) {
522 const BookmarkNode* root = model_.bookmark_bar_node(); 522 const BookmarkNode* root = model_.bookmark_bar_node();
523 const string16 title(ASCIIToUTF16("foo")); 523 const base::string16 title(ASCIIToUTF16("foo"));
524 GURL url("http://foo.com"); 524 GURL url("http://foo.com");
525 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 525 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
526 526
527 ClearCounts(); 527 ClearCounts();
528 528
529 url = GURL("http://foo2.com"); 529 url = GURL("http://foo2.com");
530 model_.SetURL(node, url); 530 model_.SetURL(node, url);
531 AssertObserverCount(0, 0, 0, 1, 0, 0, 1, 0, 0); 531 AssertObserverCount(0, 0, 0, 1, 0, 0, 1, 0, 0);
532 observer_details_.ExpectEquals(node, NULL, -1, -1); 532 observer_details_.ExpectEquals(node, NULL, -1, -1);
533 EXPECT_EQ(url, node->url()); 533 EXPECT_EQ(url, node->url());
534 } 534 }
535 535
536 TEST_F(BookmarkModelTest, SetDateAdded) { 536 TEST_F(BookmarkModelTest, SetDateAdded) {
537 const BookmarkNode* root = model_.bookmark_bar_node(); 537 const BookmarkNode* root = model_.bookmark_bar_node();
538 const string16 title(ASCIIToUTF16("foo")); 538 const base::string16 title(ASCIIToUTF16("foo"));
539 GURL url("http://foo.com"); 539 GURL url("http://foo.com");
540 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 540 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
541 541
542 ClearCounts(); 542 ClearCounts();
543 543
544 base::Time new_time = base::Time::Now() + base::TimeDelta::FromMinutes(20); 544 base::Time new_time = base::Time::Now() + base::TimeDelta::FromMinutes(20);
545 model_.SetDateAdded(node, new_time); 545 model_.SetDateAdded(node, new_time);
546 AssertObserverCount(0, 0, 0, 0, 0, 0, 0, 0, 0); 546 AssertObserverCount(0, 0, 0, 0, 0, 0, 0, 0, 0);
547 EXPECT_EQ(new_time, node->date_added()); 547 EXPECT_EQ(new_time, node->date_added());
548 EXPECT_EQ(new_time, model_.bookmark_bar_node()->date_folder_modified()); 548 EXPECT_EQ(new_time, model_.bookmark_bar_node()->date_folder_modified());
549 } 549 }
550 550
551 TEST_F(BookmarkModelTest, Move) { 551 TEST_F(BookmarkModelTest, Move) {
552 const BookmarkNode* root = model_.bookmark_bar_node(); 552 const BookmarkNode* root = model_.bookmark_bar_node();
553 const string16 title(ASCIIToUTF16("foo")); 553 const base::string16 title(ASCIIToUTF16("foo"));
554 const GURL url("http://foo.com"); 554 const GURL url("http://foo.com");
555 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 555 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
556 const BookmarkNode* folder1 = model_.AddFolder(root, 0, ASCIIToUTF16("foo")); 556 const BookmarkNode* folder1 = model_.AddFolder(root, 0, ASCIIToUTF16("foo"));
557 ClearCounts(); 557 ClearCounts();
558 558
559 model_.Move(node, folder1, 0); 559 model_.Move(node, folder1, 0);
560 560
561 AssertObserverCount(0, 1, 0, 0, 0, 0, 0, 0, 0); 561 AssertObserverCount(0, 1, 0, 0, 0, 0, 0, 0, 0);
562 observer_details_.ExpectEquals(root, folder1, 1, 0); 562 observer_details_.ExpectEquals(root, folder1, 1, 0);
563 EXPECT_TRUE(folder1 == node->parent()); 563 EXPECT_TRUE(folder1 == node->parent());
564 EXPECT_EQ(1, root->child_count()); 564 EXPECT_EQ(1, root->child_count());
565 EXPECT_EQ(folder1, root->GetChild(0)); 565 EXPECT_EQ(folder1, root->GetChild(0));
566 EXPECT_EQ(1, folder1->child_count()); 566 EXPECT_EQ(1, folder1->child_count());
567 EXPECT_EQ(node, folder1->GetChild(0)); 567 EXPECT_EQ(node, folder1->GetChild(0));
568 568
569 // And remove the folder. 569 // And remove the folder.
570 ClearCounts(); 570 ClearCounts();
571 model_.Remove(root, 0); 571 model_.Remove(root, 0);
572 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0); 572 AssertObserverCount(0, 0, 1, 0, 0, 1, 0, 0, 0);
573 observer_details_.ExpectEquals(root, NULL, 0, -1); 573 observer_details_.ExpectEquals(root, NULL, 0, -1);
574 EXPECT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL); 574 EXPECT_TRUE(model_.GetMostRecentlyAddedNodeForURL(url) == NULL);
575 EXPECT_EQ(0, root->child_count()); 575 EXPECT_EQ(0, root->child_count());
576 } 576 }
577 577
578 TEST_F(BookmarkModelTest, NonMovingMoveCall) { 578 TEST_F(BookmarkModelTest, NonMovingMoveCall) {
579 const BookmarkNode* root = model_.bookmark_bar_node(); 579 const BookmarkNode* root = model_.bookmark_bar_node();
580 const string16 title(ASCIIToUTF16("foo")); 580 const base::string16 title(ASCIIToUTF16("foo"));
581 const GURL url("http://foo.com"); 581 const GURL url("http://foo.com");
582 const base::Time old_date(base::Time::Now() - base::TimeDelta::FromDays(1)); 582 const base::Time old_date(base::Time::Now() - base::TimeDelta::FromDays(1));
583 583
584 const BookmarkNode* node = model_.AddURL(root, 0, title, url); 584 const BookmarkNode* node = model_.AddURL(root, 0, title, url);
585 model_.SetDateFolderModified(root, old_date); 585 model_.SetDateFolderModified(root, old_date);
586 586
587 // Since |node| is already at the index 0 of |root|, this is no-op. 587 // Since |node| is already at the index 0 of |root|, this is no-op.
588 model_.Move(node, root, 0); 588 model_.Move(node, root, 0);
589 589
590 // Check that the modification date is kept untouched. 590 // Check that the modification date is kept untouched.
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
643 actual_model_string = test::ModelStringFromNode(root); 643 actual_model_string = test::ModelStringFromNode(root);
644 EXPECT_EQ("a 2:[ e 1:[ b d c ] f 1:[ b d c ] g ] d 1:[ b d c ] " 644 EXPECT_EQ("a 2:[ e 1:[ b d c ] f 1:[ b d c ] g ] d 1:[ b d c ] "
645 "d 2:[ e 1:[ b d c ] f 1:[ b d c ] g ] h d ", 645 "d 2:[ e 1:[ b d c ] f 1:[ b d c ] g ] h d ",
646 actual_model_string); 646 actual_model_string);
647 } 647 }
648 648
649 // Tests that adding a URL to a folder updates the last modified time. 649 // Tests that adding a URL to a folder updates the last modified time.
650 TEST_F(BookmarkModelTest, ParentForNewNodes) { 650 TEST_F(BookmarkModelTest, ParentForNewNodes) {
651 ASSERT_EQ(model_.bookmark_bar_node(), model_.GetParentForNewNodes()); 651 ASSERT_EQ(model_.bookmark_bar_node(), model_.GetParentForNewNodes());
652 652
653 const string16 title(ASCIIToUTF16("foo")); 653 const base::string16 title(ASCIIToUTF16("foo"));
654 const GURL url("http://foo.com"); 654 const GURL url("http://foo.com");
655 655
656 model_.AddURL(model_.other_node(), 0, title, url); 656 model_.AddURL(model_.other_node(), 0, title, url);
657 ASSERT_EQ(model_.other_node(), model_.GetParentForNewNodes()); 657 ASSERT_EQ(model_.other_node(), model_.GetParentForNewNodes());
658 } 658 }
659 659
660 // Tests that adding a URL to a folder updates the last modified time. 660 // Tests that adding a URL to a folder updates the last modified time.
661 TEST_F(BookmarkModelTest, ParentForNewMobileNodes) { 661 TEST_F(BookmarkModelTest, ParentForNewMobileNodes) {
662 ASSERT_EQ(model_.bookmark_bar_node(), model_.GetParentForNewNodes()); 662 ASSERT_EQ(model_.bookmark_bar_node(), model_.GetParentForNewNodes());
663 663
664 const string16 title(ASCIIToUTF16("foo")); 664 const base::string16 title(ASCIIToUTF16("foo"));
665 const GURL url("http://foo.com"); 665 const GURL url("http://foo.com");
666 666
667 model_.AddURL(model_.mobile_node(), 0, title, url); 667 model_.AddURL(model_.mobile_node(), 0, title, url);
668 ASSERT_EQ(model_.mobile_node(), model_.GetParentForNewNodes()); 668 ASSERT_EQ(model_.mobile_node(), model_.GetParentForNewNodes());
669 } 669 }
670 670
671 // Make sure recently modified stays in sync when adding a URL. 671 // Make sure recently modified stays in sync when adding a URL.
672 TEST_F(BookmarkModelTest, MostRecentlyModifiedFolders) { 672 TEST_F(BookmarkModelTest, MostRecentlyModifiedFolders) {
673 // Add a folder. 673 // Add a folder.
674 const BookmarkNode* folder = model_.AddFolder(model_.other_node(), 0, 674 const BookmarkNode* folder = model_.AddFolder(model_.other_node(), 0,
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
752 ASSERT_EQ(n1, model_.GetMostRecentlyAddedNodeForURL(url)); 752 ASSERT_EQ(n1, model_.GetMostRecentlyAddedNodeForURL(url));
753 753
754 // swap 1 and 2, then check again. 754 // swap 1 and 2, then check again.
755 SwapDateAdded(n1, n2); 755 SwapDateAdded(n1, n2);
756 ASSERT_EQ(n2, model_.GetMostRecentlyAddedNodeForURL(url)); 756 ASSERT_EQ(n2, model_.GetMostRecentlyAddedNodeForURL(url));
757 } 757 }
758 758
759 // Makes sure GetBookmarks removes duplicates. 759 // Makes sure GetBookmarks removes duplicates.
760 TEST_F(BookmarkModelTest, GetBookmarksWithDups) { 760 TEST_F(BookmarkModelTest, GetBookmarksWithDups) {
761 const GURL url("http://foo.com/0"); 761 const GURL url("http://foo.com/0");
762 const string16 title(ASCIIToUTF16("blah")); 762 const base::string16 title(ASCIIToUTF16("blah"));
763 model_.AddURL(model_.bookmark_bar_node(), 0, title, url); 763 model_.AddURL(model_.bookmark_bar_node(), 0, title, url);
764 model_.AddURL(model_.bookmark_bar_node(), 1, title, url); 764 model_.AddURL(model_.bookmark_bar_node(), 1, title, url);
765 765
766 std::vector<BookmarkService::URLAndTitle> bookmarks; 766 std::vector<BookmarkService::URLAndTitle> bookmarks;
767 model_.GetBookmarks(&bookmarks); 767 model_.GetBookmarks(&bookmarks);
768 ASSERT_EQ(1U, bookmarks.size()); 768 ASSERT_EQ(1U, bookmarks.size());
769 EXPECT_EQ(url, bookmarks[0].url); 769 EXPECT_EQ(url, bookmarks[0].url);
770 EXPECT_EQ(title, bookmarks[0].title); 770 EXPECT_EQ(title, bookmarks[0].title);
771 771
772 model_.AddURL(model_.bookmark_bar_node(), 2, ASCIIToUTF16("Title2"), url); 772 model_.AddURL(model_.bookmark_bar_node(), 2, ASCIIToUTF16("Title2"), url);
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
1046 const BookmarkNode* parent = model_.bookmark_bar_node(); 1046 const BookmarkNode* parent = model_.bookmark_bar_node();
1047 PopulateBookmarkNode(&bbn, &model_, parent); 1047 PopulateBookmarkNode(&bbn, &model_, parent);
1048 EXPECT_TRUE(parent->GetChild(0)->IsVisible()); 1048 EXPECT_TRUE(parent->GetChild(0)->IsVisible());
1049 1049
1050 // Bookmark bar should be visible now that it has a child. 1050 // Bookmark bar should be visible now that it has a child.
1051 EXPECT_TRUE(model_.bookmark_bar_node()->IsVisible()); 1051 EXPECT_TRUE(model_.bookmark_bar_node()->IsVisible());
1052 } 1052 }
1053 1053
1054 TEST_F(BookmarkModelTest, MobileNodeVisibileWithChildren) { 1054 TEST_F(BookmarkModelTest, MobileNodeVisibileWithChildren) {
1055 const BookmarkNode* root = model_.mobile_node(); 1055 const BookmarkNode* root = model_.mobile_node();
1056 const string16 title(ASCIIToUTF16("foo")); 1056 const base::string16 title(ASCIIToUTF16("foo"));
1057 const GURL url("http://foo.com"); 1057 const GURL url("http://foo.com");
1058 1058
1059 model_.AddURL(root, 0, title, url); 1059 model_.AddURL(root, 0, title, url);
1060 EXPECT_TRUE(model_.mobile_node()->IsVisible()); 1060 EXPECT_TRUE(model_.mobile_node()->IsVisible());
1061 } 1061 }
1062 1062
1063 TEST_F(BookmarkModelTest, ExtensiveChangesObserver) { 1063 TEST_F(BookmarkModelTest, ExtensiveChangesObserver) {
1064 AssertExtensiveChangesObserverCount(0, 0); 1064 AssertExtensiveChangesObserverCount(0, 0);
1065 EXPECT_FALSE(model_.IsDoingExtensiveChanges()); 1065 EXPECT_FALSE(model_.IsDoingExtensiveChanges());
1066 model_.BeginExtensiveChanges(); 1066 model_.BeginExtensiveChanges();
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
1114 EXPECT_TRUE(node.DeleteMetaInfo("key2.subkey2.leaf")); 1114 EXPECT_TRUE(node.DeleteMetaInfo("key2.subkey2.leaf"));
1115 EXPECT_FALSE(node.DeleteMetaInfo("key3")); 1115 EXPECT_FALSE(node.DeleteMetaInfo("key3"));
1116 EXPECT_FALSE(node.GetMetaInfo("key1", &out_value)); 1116 EXPECT_FALSE(node.GetMetaInfo("key1", &out_value));
1117 EXPECT_FALSE(node.GetMetaInfo("key2.subkey1", &out_value)); 1117 EXPECT_FALSE(node.GetMetaInfo("key2.subkey1", &out_value));
1118 EXPECT_FALSE(node.GetMetaInfo("key2.subkey2", &out_value)); 1118 EXPECT_FALSE(node.GetMetaInfo("key2.subkey2", &out_value));
1119 EXPECT_FALSE(node.GetMetaInfo("key2.subkey2.leaf", &out_value)); 1119 EXPECT_FALSE(node.GetMetaInfo("key2.subkey2.leaf", &out_value));
1120 EXPECT_FALSE(node.GetMetaInfoMap()); 1120 EXPECT_FALSE(node.GetMetaInfoMap());
1121 } 1121 }
1122 1122
1123 } // namespace 1123 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/bookmarks/bookmark_model.cc ('k') | chrome/browser/bookmarks/bookmark_node_data.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698