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

Side by Side Diff: chrome/browser/rlz/rlz_unittest.cc

Issue 10698024: rlz: Change omnibox / homepage access points from C1/C2 to C5/C6 on mac (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 5 months 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/rlz/rlz.h" 5 #include "chrome/browser/rlz/rlz.h"
6 6
7 #include "base/memory/scoped_ptr.h" 7 #include "base/memory/scoped_ptr.h"
8 #include "base/stringprintf.h" 8 #include "base/stringprintf.h"
9 #include "base/path_service.h" 9 #include "base/path_service.h"
10 #include "base/scoped_temp_dir.h" 10 #include "base/scoped_temp_dir.h"
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 131
132 virtual bool SendFinancialPing(const std::string& brand, 132 virtual bool SendFinancialPing(const std::string& brand,
133 const string16& lang, 133 const string16& lang,
134 const string16& referral) OVERRIDE { 134 const string16& referral) OVERRIDE {
135 // Don't ping the server during tests, just pretend as if we did. 135 // Don't ping the server during tests, just pretend as if we did.
136 EXPECT_FALSE(brand.empty()); 136 EXPECT_FALSE(brand.empty());
137 pinged_brands_.insert(brand); 137 pinged_brands_.insert(brand);
138 138
139 // Set new access points RLZ string, like the actual server ping would have 139 // Set new access points RLZ string, like the actual server ping would have
140 // done. 140 // done.
141 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kNewOmniboxRlzString); 141 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX,
142 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, 142 kNewOmniboxRlzString);
143 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE,
143 kNewHomepageRlzString); 144 kNewHomepageRlzString);
144 return true; 145 return true;
145 } 146 }
146 147
147 std::set<std::string> pinged_brands_; 148 std::set<std::string> pinged_brands_;
148 bool assume_not_ui_thread_; 149 bool assume_not_ui_thread_;
149 150
150 DISALLOW_COPY_AND_ASSIGN(TestRLZTracker); 151 DISALLOW_COPY_AND_ASSIGN(TestRLZTracker);
151 }; 152 };
152 153
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 google_util::GetBrand(&brand); 302 google_util::GetBrand(&brand);
302 EXPECT_EQ(expected, tracker_.was_ping_sent_for_brand(brand.c_str())); 303 EXPECT_EQ(expected, tracker_.was_ping_sent_for_brand(brand.c_str()));
303 } 304 }
304 305
305 void RlzLibTest::ExpectReactivationRlzPingSent(bool expected) { 306 void RlzLibTest::ExpectReactivationRlzPingSent(bool expected) {
306 std::string brand; 307 std::string brand;
307 google_util::GetReactivationBrand(&brand); 308 google_util::GetReactivationBrand(&brand);
308 EXPECT_EQ(expected, tracker_.was_ping_sent_for_brand(brand.c_str())); 309 EXPECT_EQ(expected, tracker_.was_ping_sent_for_brand(brand.c_str()));
309 } 310 }
310 311
311 TEST_F(RlzLibTest, RecordProductEvent) {
312 RLZTracker::RecordProductEvent(rlz_lib::CHROME, rlz_lib::CHROME_OMNIBOX,
313 rlz_lib::FIRST_SEARCH);
314
315 ExpectEventRecorded("C1F", true);
316 }
317
318 // The events that affect the different RLZ scenarios are the following: 312 // The events that affect the different RLZ scenarios are the following:
319 // 313 //
320 // A: the user starts chrome for the first time 314 // A: the user starts chrome for the first time
321 // B: the user stops chrome 315 // B: the user stops chrome
322 // C: the user start a subsequent time 316 // C: the user start a subsequent time
323 // D: the user stops chrome again 317 // D: the user stops chrome again
324 // I: the RLZTracker::DelayedInit() method is invoked 318 // I: the RLZTracker::DelayedInit() method is invoked
325 // X: the user performs a search using the omnibox 319 // X: the user performs a search using the omnibox
326 // Y: the user performs a search using the home page 320 // Y: the user performs a search using the home page
327 // 321 //
328 // The events A to D happen in chronological order, but the other events 322 // The events A to D happen in chronological order, but the other events
329 // may happen at any point between A-B or C-D, in no particular order. 323 // may happen at any point between A-B or C-D, in no particular order.
330 // 324 //
331 // The visible results of the scenarios are: 325 // The visible results of the scenarios are:
332 // 326 //
333 // C1I event is recorded 327 // C1I event is recorded
334 // C2I event is recorded 328 // C2I event is recorded
335 // C1F event is recorded 329 // C1F event is recorded
336 // C2F event is recorded 330 // C2F event is recorded
337 // C1S event is recorded 331 // C1S event is recorded
338 // C2S event is recorded 332 // C2S event is recorded
339 // RLZ ping sent 333 // RLZ ping sent
340 // 334 //
335 // On Mac, C5 / C6 are sent instead of C1 / C2.
336 //
341 // Variations on the above scenarios: 337 // Variations on the above scenarios:
342 // 338 //
343 // - if the delay specified to InitRlzDelayed() is negative, then the RLZ 339 // - if the delay specified to InitRlzDelayed() is negative, then the RLZ
344 // ping should be sent out at the time of event X and not wait for I 340 // ping should be sent out at the time of event X and not wait for I
345 // 341 //
346 // Also want to test that pre-warming the RLZ string cache works correctly. 342 // Also want to test that pre-warming the RLZ string cache works correctly.
347 343
344 #if !defined(OS_MACOSX)
345 const char kC1I[] = "C1I";
346 const char kC1S[] = "C1S";
347 const char kC1F[] = "C1F";
348
349 const char kC2I[] = "C2I";
350 const char kC2S[] = "C2S";
351 const char kC2F[] = "C2F";
352 #else
353 const char kC1I[] = "C5I";
354 const char kC1S[] = "C5S";
355 const char kC1F[] = "C5F";
356
357 const char kC2I[] = "C6I";
358 const char kC2S[] = "C6S";
359 const char kC2F[] = "C6F";
360 #endif
361
362 TEST_F(RlzLibTest, RecordProductEvent) {
363 RLZTracker::RecordProductEvent(rlz_lib::CHROME, RLZTracker::CHROME_OMNIBOX,
364 rlz_lib::FIRST_SEARCH);
365
366 ExpectEventRecorded(kC1F, true);
367 }
368
348 TEST_F(RlzLibTest, QuickStopAfterStart) { 369 TEST_F(RlzLibTest, QuickStopAfterStart) {
349 RLZTracker::InitRlzDelayed(true, 20, true, true); 370 RLZTracker::InitRlzDelayed(true, 20, true, true);
350 371
351 // Omnibox events. 372 // Omnibox events.
352 ExpectEventRecorded("C1I", false); 373 ExpectEventRecorded(kC1I, false);
353 ExpectEventRecorded("C1S", false); 374 ExpectEventRecorded(kC1S, false);
354 ExpectEventRecorded("C1F", false); 375 ExpectEventRecorded(kC1F, false);
355 376
356 // Home page events. 377 // Home page events.
357 ExpectEventRecorded("C2I", false); 378 ExpectEventRecorded(kC2I, false);
358 ExpectEventRecorded("C2S", false); 379 ExpectEventRecorded(kC2S, false);
359 ExpectEventRecorded("C2F", false); 380 ExpectEventRecorded(kC2F, false);
360 381
361 ExpectRlzPingSent(false); 382 ExpectRlzPingSent(false);
362 } 383 }
363 384
364 TEST_F(RlzLibTest, DelayedInitOnly) { 385 TEST_F(RlzLibTest, DelayedInitOnly) {
365 RLZTracker::InitRlzDelayed(true, 20, true, true); 386 RLZTracker::InitRlzDelayed(true, 20, true, true);
366 InvokeDelayedInit(); 387 InvokeDelayedInit();
367 388
368 // Omnibox events. 389 // Omnibox events.
369 ExpectEventRecorded("C1I", true); 390 ExpectEventRecorded(kC1I, true);
370 ExpectEventRecorded("C1S", true); 391 ExpectEventRecorded(kC1S, true);
371 ExpectEventRecorded("C1F", false); 392 ExpectEventRecorded(kC1F, false);
372 393
373 // Home page events. 394 // Home page events.
374 ExpectEventRecorded("C2I", true); 395 ExpectEventRecorded(kC2I, true);
375 ExpectEventRecorded("C2S", true); 396 ExpectEventRecorded(kC2S, true);
376 ExpectEventRecorded("C2F", false); 397 ExpectEventRecorded(kC2F, false);
377 398
378 ExpectRlzPingSent(true); 399 ExpectRlzPingSent(true);
379 } 400 }
380 401
381 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRunNoRlzStrings) { 402 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRunNoRlzStrings) {
382 RLZTracker::InitRlzDelayed(false, 20, true, true); 403 RLZTracker::InitRlzDelayed(false, 20, true, true);
383 InvokeDelayedInit(); 404 InvokeDelayedInit();
384 405
385 // Omnibox events. 406 // Omnibox events.
386 ExpectEventRecorded("C1I", true); 407 ExpectEventRecorded(kC1I, true);
387 ExpectEventRecorded("C1S", true); 408 ExpectEventRecorded(kC1S, true);
388 ExpectEventRecorded("C1F", false); 409 ExpectEventRecorded(kC1F, false);
389 410
390 // Home page events. 411 // Home page events.
391 ExpectEventRecorded("C2I", true); 412 ExpectEventRecorded(kC2I, true);
392 ExpectEventRecorded("C2S", true); 413 ExpectEventRecorded(kC2S, true);
393 ExpectEventRecorded("C2F", false); 414 ExpectEventRecorded(kC2F, false);
394 415
395 ExpectRlzPingSent(true); 416 ExpectRlzPingSent(true);
396 } 417 }
397 418
398 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRun) { 419 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRun) {
399 // Set some dummy RLZ strings to simulate that we already ran before and 420 // Set some dummy RLZ strings to simulate that we already ran before and
400 // performed a successful ping to the RLZ server. 421 // performed a successful ping to the RLZ server.
401 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kOmniboxRlzString); 422 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString);
402 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, kHomepageRlzString); 423 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, kHomepageRlzString);
403 424
404 RLZTracker::InitRlzDelayed(false, 20, true, true); 425 RLZTracker::InitRlzDelayed(false, 20, true, true);
405 InvokeDelayedInit(); 426 InvokeDelayedInit();
406 427
407 // Omnibox events. 428 // Omnibox events.
408 ExpectEventRecorded("C1I", true); 429 ExpectEventRecorded(kC1I, true);
409 ExpectEventRecorded("C1S", false); 430 ExpectEventRecorded(kC1S, false);
410 ExpectEventRecorded("C1F", false); 431 ExpectEventRecorded(kC1F, false);
411 432
412 // Home page events. 433 // Home page events.
413 ExpectEventRecorded("C2I", true); 434 ExpectEventRecorded(kC2I, true);
414 ExpectEventRecorded("C2S", false); 435 ExpectEventRecorded(kC2S, false);
415 ExpectEventRecorded("C2F", false); 436 ExpectEventRecorded(kC2F, false);
416 437
417 ExpectRlzPingSent(true); 438 ExpectRlzPingSent(true);
418 } 439 }
419 440
420 TEST_F(RlzLibTest, DelayedInitOnlyNoGoogleDefaultSearchOrHomepage) { 441 TEST_F(RlzLibTest, DelayedInitOnlyNoGoogleDefaultSearchOrHomepage) {
421 RLZTracker::InitRlzDelayed(true, 20, false, false); 442 RLZTracker::InitRlzDelayed(true, 20, false, false);
422 InvokeDelayedInit(); 443 InvokeDelayedInit();
423 444
424 // Omnibox events. 445 // Omnibox events.
425 ExpectEventRecorded("C1I", true); 446 ExpectEventRecorded(kC1I, true);
426 ExpectEventRecorded("C1S", false); 447 ExpectEventRecorded(kC1S, false);
427 ExpectEventRecorded("C1F", false); 448 ExpectEventRecorded(kC1F, false);
428 449
429 // Home page events. 450 // Home page events.
430 ExpectEventRecorded("C2I", true); 451 ExpectEventRecorded(kC2I, true);
431 ExpectEventRecorded("C2S", false); 452 ExpectEventRecorded(kC2S, false);
432 ExpectEventRecorded("C2F", false); 453 ExpectEventRecorded(kC2F, false);
433 454
434 ExpectRlzPingSent(true); 455 ExpectRlzPingSent(true);
435 } 456 }
436 457
437 TEST_F(RlzLibTest, OmniboxUsageOnly) { 458 TEST_F(RlzLibTest, OmniboxUsageOnly) {
438 RLZTracker::InitRlzDelayed(true, 20, true, true); 459 RLZTracker::InitRlzDelayed(true, 20, true, true);
439 SimulateOmniboxUsage(); 460 SimulateOmniboxUsage();
440 461
441 // Omnibox events. 462 // Omnibox events.
442 ExpectEventRecorded("C1I", false); 463 ExpectEventRecorded(kC1I, false);
443 ExpectEventRecorded("C1S", false); 464 ExpectEventRecorded(kC1S, false);
444 ExpectEventRecorded("C1F", true); 465 ExpectEventRecorded(kC1F, true);
445 466
446 // Home page events. 467 // Home page events.
447 ExpectEventRecorded("C2I", false); 468 ExpectEventRecorded(kC2I, false);
448 ExpectEventRecorded("C2S", false); 469 ExpectEventRecorded(kC2S, false);
449 ExpectEventRecorded("C2F", false); 470 ExpectEventRecorded(kC2F, false);
450 471
451 ExpectRlzPingSent(false); 472 ExpectRlzPingSent(false);
452 } 473 }
453 474
454 TEST_F(RlzLibTest, HomepageUsageOnly) { 475 TEST_F(RlzLibTest, HomepageUsageOnly) {
455 RLZTracker::InitRlzDelayed(true, 20, true, true); 476 RLZTracker::InitRlzDelayed(true, 20, true, true);
456 SimulateHomepageUsage(); 477 SimulateHomepageUsage();
457 478
458 // Omnibox events. 479 // Omnibox events.
459 ExpectEventRecorded("C1I", false); 480 ExpectEventRecorded(kC1I, false);
460 ExpectEventRecorded("C1S", false); 481 ExpectEventRecorded(kC1S, false);
461 ExpectEventRecorded("C1F", false); 482 ExpectEventRecorded(kC1F, false);
462 483
463 // Home page events. 484 // Home page events.
464 ExpectEventRecorded("C2I", false); 485 ExpectEventRecorded(kC2I, false);
465 ExpectEventRecorded("C2S", false); 486 ExpectEventRecorded(kC2S, false);
466 ExpectEventRecorded("C2F", true); 487 ExpectEventRecorded(kC2F, true);
467 488
468 ExpectRlzPingSent(false); 489 ExpectRlzPingSent(false);
469 } 490 }
470 491
471 TEST_F(RlzLibTest, UsageBeforeDelayedInit) { 492 TEST_F(RlzLibTest, UsageBeforeDelayedInit) {
472 RLZTracker::InitRlzDelayed(true, 20, true, true); 493 RLZTracker::InitRlzDelayed(true, 20, true, true);
473 SimulateOmniboxUsage(); 494 SimulateOmniboxUsage();
474 SimulateHomepageUsage(); 495 SimulateHomepageUsage();
475 InvokeDelayedInit(); 496 InvokeDelayedInit();
476 497
477 // Omnibox events. 498 // Omnibox events.
478 ExpectEventRecorded("C1I", true); 499 ExpectEventRecorded(kC1I, true);
479 ExpectEventRecorded("C1S", true); 500 ExpectEventRecorded(kC1S, true);
480 ExpectEventRecorded("C1F", true); 501 ExpectEventRecorded(kC1F, true);
481 502
482 // Home page events. 503 // Home page events.
483 ExpectEventRecorded("C2I", true); 504 ExpectEventRecorded(kC2I, true);
484 ExpectEventRecorded("C2S", true); 505 ExpectEventRecorded(kC2S, true);
485 ExpectEventRecorded("C2F", true); 506 ExpectEventRecorded(kC2F, true);
486 507
487 ExpectRlzPingSent(true); 508 ExpectRlzPingSent(true);
488 } 509 }
489 510
490 TEST_F(RlzLibTest, OmniboxUsageAfterDelayedInit) { 511 TEST_F(RlzLibTest, OmniboxUsageAfterDelayedInit) {
491 RLZTracker::InitRlzDelayed(true, 20, true, true); 512 RLZTracker::InitRlzDelayed(true, 20, true, true);
492 InvokeDelayedInit(); 513 InvokeDelayedInit();
493 SimulateOmniboxUsage(); 514 SimulateOmniboxUsage();
494 SimulateHomepageUsage(); 515 SimulateHomepageUsage();
495 516
496 // Omnibox events. 517 // Omnibox events.
497 ExpectEventRecorded("C1I", true); 518 ExpectEventRecorded(kC1I, true);
498 ExpectEventRecorded("C1S", true); 519 ExpectEventRecorded(kC1S, true);
499 ExpectEventRecorded("C1F", true); 520 ExpectEventRecorded(kC1F, true);
500 521
501 // Home page events. 522 // Home page events.
502 ExpectEventRecorded("C2I", true); 523 ExpectEventRecorded(kC2I, true);
503 ExpectEventRecorded("C2S", true); 524 ExpectEventRecorded(kC2S, true);
504 ExpectEventRecorded("C2F", true); 525 ExpectEventRecorded(kC2F, true);
505 526
506 ExpectRlzPingSent(true); 527 ExpectRlzPingSent(true);
507 } 528 }
508 529
509 TEST_F(RlzLibTest, OmniboxUsageSendsPingWhenDelayNegative) { 530 TEST_F(RlzLibTest, OmniboxUsageSendsPingWhenDelayNegative) {
510 RLZTracker::InitRlzDelayed(true, -20, true, true); 531 RLZTracker::InitRlzDelayed(true, -20, true, true);
511 SimulateOmniboxUsage(); 532 SimulateOmniboxUsage();
512 533
513 // Omnibox events. 534 // Omnibox events.
514 ExpectEventRecorded("C1I", true); 535 ExpectEventRecorded(kC1I, true);
515 ExpectEventRecorded("C1S", true); 536 ExpectEventRecorded(kC1S, true);
516 ExpectEventRecorded("C1F", true); 537 ExpectEventRecorded(kC1F, true);
517 538
518 // Home page events. 539 // Home page events.
519 ExpectEventRecorded("C2I", true); 540 ExpectEventRecorded(kC2I, true);
520 ExpectEventRecorded("C2S", true); 541 ExpectEventRecorded(kC2S, true);
521 ExpectEventRecorded("C2F", false); 542 ExpectEventRecorded(kC2F, false);
522 543
523 ExpectRlzPingSent(true); 544 ExpectRlzPingSent(true);
524 } 545 }
525 546
526 TEST_F(RlzLibTest, HomepageUsageDoesNotSendPingWhenDelayNegative) { 547 TEST_F(RlzLibTest, HomepageUsageDoesNotSendPingWhenDelayNegative) {
527 RLZTracker::InitRlzDelayed(true, -20, true, true); 548 RLZTracker::InitRlzDelayed(true, -20, true, true);
528 SimulateHomepageUsage(); 549 SimulateHomepageUsage();
529 550
530 // Omnibox events. 551 // Omnibox events.
531 ExpectEventRecorded("C1I", false); 552 ExpectEventRecorded(kC1I, false);
532 ExpectEventRecorded("C1S", false); 553 ExpectEventRecorded(kC1S, false);
533 ExpectEventRecorded("C1F", false); 554 ExpectEventRecorded(kC1F, false);
534 555
535 // Home page events. 556 // Home page events.
536 ExpectEventRecorded("C2I", false); 557 ExpectEventRecorded(kC2I, false);
537 ExpectEventRecorded("C2S", false); 558 ExpectEventRecorded(kC2S, false);
538 ExpectEventRecorded("C2F", true); 559 ExpectEventRecorded(kC2F, true);
539 560
540 ExpectRlzPingSent(false); 561 ExpectRlzPingSent(false);
541 } 562 }
542 563
543 TEST_F(RlzLibTest, GetAccessPointRlzOnIoThread) { 564 TEST_F(RlzLibTest, GetAccessPointRlzOnIoThread) {
544 // Set dummy RLZ string. 565 // Set dummy RLZ string.
545 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kOmniboxRlzString); 566 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString);
546 567
547 string16 rlz; 568 string16 rlz;
548 569
549 tracker_.set_assume_not_ui_thread(true); 570 tracker_.set_assume_not_ui_thread(true);
550 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 571 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
551 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 572 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
552 } 573 }
553 574
554 TEST_F(RlzLibTest, GetAccessPointRlzNotOnIoThread) { 575 TEST_F(RlzLibTest, GetAccessPointRlzNotOnIoThread) {
555 // Set dummy RLZ string. 576 // Set dummy RLZ string.
556 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kOmniboxRlzString); 577 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString);
557 578
558 string16 rlz; 579 string16 rlz;
559 580
560 tracker_.set_assume_not_ui_thread(false); 581 tracker_.set_assume_not_ui_thread(false);
561 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 582 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
562 } 583 }
563 584
564 TEST_F(RlzLibTest, GetAccessPointRlzIsCached) { 585 TEST_F(RlzLibTest, GetAccessPointRlzIsCached) {
565 // Set dummy RLZ string. 586 // Set dummy RLZ string.
566 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kOmniboxRlzString); 587 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString);
567 588
568 string16 rlz; 589 string16 rlz;
569 590
570 tracker_.set_assume_not_ui_thread(false); 591 tracker_.set_assume_not_ui_thread(false);
571 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 592 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
572 593
573 tracker_.set_assume_not_ui_thread(true); 594 tracker_.set_assume_not_ui_thread(true);
574 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 595 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
575 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 596 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
576 597
577 tracker_.set_assume_not_ui_thread(false); 598 tracker_.set_assume_not_ui_thread(false);
578 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 599 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
579 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 600 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
580 } 601 }
581 602
582 TEST_F(RlzLibTest, PingUpdatesRlzCache) { 603 TEST_F(RlzLibTest, PingUpdatesRlzCache) {
583 // Set dummy RLZ string. 604 // Set dummy RLZ string.
584 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, kOmniboxRlzString); 605 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString);
585 rlz_lib::SetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, kHomepageRlzString); 606 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, kHomepageRlzString);
586 607
587 string16 rlz; 608 string16 rlz;
588 609
589 // Prime the cache. 610 // Prime the cache.
590 tracker_.set_assume_not_ui_thread(true); 611 tracker_.set_assume_not_ui_thread(true);
591 612
592 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 613 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
593 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 614 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
594 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, &rlz)); 615 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
616 RLZTracker::CHROME_HOME_PAGE, &rlz));
595 EXPECT_STREQ(kHomepageRlzString, UTF16ToUTF8(rlz).c_str()); 617 EXPECT_STREQ(kHomepageRlzString, UTF16ToUTF8(rlz).c_str());
596 618
597 // Make sure cache is valid. 619 // Make sure cache is valid.
598 tracker_.set_assume_not_ui_thread(false); 620 tracker_.set_assume_not_ui_thread(false);
599 621
600 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 622 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
601 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 623 EXPECT_STREQ(kOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
602 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, &rlz)); 624 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
625 RLZTracker::CHROME_HOME_PAGE, &rlz));
603 EXPECT_STREQ(kHomepageRlzString, UTF16ToUTF8(rlz).c_str()); 626 EXPECT_STREQ(kHomepageRlzString, UTF16ToUTF8(rlz).c_str());
604 627
605 // Perform ping. 628 // Perform ping.
606 tracker_.set_assume_not_ui_thread(true); 629 tracker_.set_assume_not_ui_thread(true);
607 RLZTracker::InitRlzDelayed(true, 20, true, true); 630 RLZTracker::InitRlzDelayed(true, 20, true, true);
608 InvokeDelayedInit(); 631 InvokeDelayedInit();
609 ExpectRlzPingSent(true); 632 ExpectRlzPingSent(true);
610 633
611 // Make sure cache is now updated. 634 // Make sure cache is now updated.
612 tracker_.set_assume_not_ui_thread(false); 635 tracker_.set_assume_not_ui_thread(false);
613 636
614 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_OMNIBOX, &rlz)); 637 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz));
615 EXPECT_STREQ(kNewOmniboxRlzString, UTF16ToUTF8(rlz).c_str()); 638 EXPECT_STREQ(kNewOmniboxRlzString, UTF16ToUTF8(rlz).c_str());
616 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(rlz_lib::CHROME_HOME_PAGE, &rlz)); 639 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
640 RLZTracker::CHROME_HOME_PAGE, &rlz));
617 EXPECT_STREQ(kNewHomepageRlzString, UTF16ToUTF8(rlz).c_str()); 641 EXPECT_STREQ(kNewHomepageRlzString, UTF16ToUTF8(rlz).c_str());
618 } 642 }
619 643
620 TEST_F(RlzLibTest, ObserveHandlesBadArgs) { 644 TEST_F(RlzLibTest, ObserveHandlesBadArgs) {
621 scoped_ptr<NavigationEntry> entry(NavigationEntry::Create()); 645 scoped_ptr<NavigationEntry> entry(NavigationEntry::Create());
622 entry->SetPageID(0); 646 entry->SetPageID(0);
623 entry->SetTransitionType(content::PAGE_TRANSITION_LINK); 647 entry->SetTransitionType(content::PAGE_TRANSITION_LINK);
624 tracker_.Observe(content::NOTIFICATION_NAV_ENTRY_PENDING, 648 tracker_.Observe(content::NOTIFICATION_NAV_ENTRY_PENDING,
625 content::NotificationService::AllSources(), 649 content::NotificationService::AllSources(),
626 content::Details<NavigationEntry>(NULL)); 650 content::Details<NavigationEntry>(NULL));
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 SetMainBrand("GGLS"); 691 SetMainBrand("GGLS");
668 SetReactivationBrand("GGRS"); 692 SetReactivationBrand("GGRS");
669 693
670 RLZTracker::InitRlzDelayed(true, 20, true, true); 694 RLZTracker::InitRlzDelayed(true, 20, true, true);
671 InvokeDelayedInit(); 695 InvokeDelayedInit();
672 696
673 ExpectRlzPingSent(false); 697 ExpectRlzPingSent(false);
674 ExpectReactivationRlzPingSent(false); 698 ExpectReactivationRlzPingSent(false);
675 } 699 }
676 #endif // defined(OS_WIN) 700 #endif // defined(OS_WIN)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698