| OLD | NEW |
| 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 <map> | 5 #include <map> |
| 6 | 6 |
| 7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
| 8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 service.CreateTestExtensions(1, 1, &extensions, &update_url, | 332 service.CreateTestExtensions(1, 1, &extensions, &update_url, |
| 333 Extension::INTERNAL); | 333 Extension::INTERNAL); |
| 334 service.set_extensions(extensions); | 334 service.set_extensions(extensions); |
| 335 } | 335 } |
| 336 | 336 |
| 337 // Set up and start the updater. | 337 // Set up and start the updater. |
| 338 TestURLFetcherFactory factory; | 338 TestURLFetcherFactory factory; |
| 339 ExtensionUpdater updater( | 339 ExtensionUpdater updater( |
| 340 &service, service.extension_prefs(), service.pref_service(), | 340 &service, service.extension_prefs(), service.pref_service(), |
| 341 service.profile(), 60*60*24); | 341 service.profile(), 60*60*24); |
| 342 updater.set_use_utility_process_for_testing(false); |
| 342 updater.Start(); | 343 updater.Start(); |
| 343 // Disable blacklist checks (tested elsewhere) so that we only see the | 344 // Disable blacklist checks (tested elsewhere) so that we only see the |
| 344 // update HTTP request. | 345 // update HTTP request. |
| 345 updater.set_blacklist_checks_enabled(false); | 346 updater.set_blacklist_checks_enabled(false); |
| 346 | 347 |
| 347 // Tell the update that it's time to do update checks. | 348 // Tell the update that it's time to do update checks. |
| 348 SimulateTimerFired(&updater); | 349 SimulateTimerFired(&updater); |
| 349 | 350 |
| 350 // Get the url our mock fetcher was asked to fetch. | 351 // Get the url our mock fetcher was asked to fetch. |
| 351 TestURLFetcher* fetcher = | 352 TestURLFetcher* fetcher = |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 384 // Setup and start the updater. | 385 // Setup and start the updater. |
| 385 MessageLoop message_loop; | 386 MessageLoop message_loop; |
| 386 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); | 387 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); |
| 387 content::TestBrowserThread io_thread(BrowserThread::IO); | 388 content::TestBrowserThread io_thread(BrowserThread::IO); |
| 388 io_thread.Start(); | 389 io_thread.Start(); |
| 389 | 390 |
| 390 TestURLFetcherFactory factory; | 391 TestURLFetcherFactory factory; |
| 391 ExtensionUpdater updater( | 392 ExtensionUpdater updater( |
| 392 &service, service.extension_prefs(), service.pref_service(), | 393 &service, service.extension_prefs(), service.pref_service(), |
| 393 service.profile(), 60*60*24); | 394 service.profile(), 60*60*24); |
| 395 updater.set_use_utility_process_for_testing(false); |
| 394 updater.Start(); | 396 updater.Start(); |
| 395 | 397 |
| 396 // Tell the updater that it's time to do update checks. | 398 // Tell the updater that it's time to do update checks. |
| 397 SimulateTimerFired(&updater); | 399 SimulateTimerFired(&updater); |
| 398 | 400 |
| 399 // Get the url our mock fetcher was asked to fetch. | 401 // Get the url our mock fetcher was asked to fetch. |
| 400 TestURLFetcher* fetcher = | 402 TestURLFetcher* fetcher = |
| 401 factory.GetFetcherByID(ExtensionUpdater::kManifestFetcherId); | 403 factory.GetFetcherByID(ExtensionUpdater::kManifestFetcherId); |
| 402 ASSERT_FALSE(fetcher == NULL); | 404 ASSERT_FALSE(fetcher == NULL); |
| 403 const GURL& url = fetcher->GetOriginalURL(); | 405 const GURL& url = fetcher->GetOriginalURL(); |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 496 | 498 |
| 497 // Create a set of test extensions | 499 // Create a set of test extensions |
| 498 ServiceForManifestTests service; | 500 ServiceForManifestTests service; |
| 499 ExtensionList tmp; | 501 ExtensionList tmp; |
| 500 service.CreateTestExtensions(1, 3, &tmp, NULL, Extension::INTERNAL); | 502 service.CreateTestExtensions(1, 3, &tmp, NULL, Extension::INTERNAL); |
| 501 service.set_extensions(tmp); | 503 service.set_extensions(tmp); |
| 502 | 504 |
| 503 ExtensionUpdater updater( | 505 ExtensionUpdater updater( |
| 504 &service, service.extension_prefs(), service.pref_service(), | 506 &service, service.extension_prefs(), service.pref_service(), |
| 505 service.profile(), kUpdateFrequencySecs); | 507 service.profile(), kUpdateFrequencySecs); |
| 508 updater.set_use_utility_process_for_testing(false); |
| 506 updater.Start(); | 509 updater.Start(); |
| 507 | 510 |
| 508 // Check passing an empty list of parse results to DetermineUpdates | 511 // Check passing an empty list of parse results to DetermineUpdates |
| 509 ManifestFetchData fetch_data(GURL("http://localhost/foo")); | 512 ManifestFetchData fetch_data(GURL("http://localhost/foo")); |
| 510 UpdateManifest::Results updates; | 513 UpdateManifest::Results updates; |
| 511 std::vector<int> updateable = updater.DetermineUpdates(fetch_data, | 514 std::vector<int> updateable = updater.DetermineUpdates(fetch_data, |
| 512 updates); | 515 updates); |
| 513 EXPECT_TRUE(updateable.empty()); | 516 EXPECT_TRUE(updateable.empty()); |
| 514 | 517 |
| 515 // Create two updates - expect that DetermineUpdates will return the first | 518 // Create two updates - expect that DetermineUpdates will return the first |
| (...skipping 21 matching lines...) Expand all Loading... |
| 537 ServiceForManifestTests service; | 540 ServiceForManifestTests service; |
| 538 PendingExtensionManager* pending_extension_manager = | 541 PendingExtensionManager* pending_extension_manager = |
| 539 service.pending_extension_manager(); | 542 service.pending_extension_manager(); |
| 540 SetupPendingExtensionManagerForTest(3, GURL(), pending_extension_manager); | 543 SetupPendingExtensionManagerForTest(3, GURL(), pending_extension_manager); |
| 541 | 544 |
| 542 MessageLoop message_loop; | 545 MessageLoop message_loop; |
| 543 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); | 546 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); |
| 544 ExtensionUpdater updater( | 547 ExtensionUpdater updater( |
| 545 &service, service.extension_prefs(), service.pref_service(), | 548 &service, service.extension_prefs(), service.pref_service(), |
| 546 service.profile(), kUpdateFrequencySecs); | 549 service.profile(), kUpdateFrequencySecs); |
| 550 updater.set_use_utility_process_for_testing(false); |
| 547 updater.Start(); | 551 updater.Start(); |
| 548 | 552 |
| 549 ManifestFetchData fetch_data(GURL("http://localhost/foo")); | 553 ManifestFetchData fetch_data(GURL("http://localhost/foo")); |
| 550 UpdateManifest::Results updates; | 554 UpdateManifest::Results updates; |
| 551 PendingExtensionManager::const_iterator it; | 555 PendingExtensionManager::const_iterator it; |
| 552 for (it = pending_extension_manager->begin(); | 556 for (it = pending_extension_manager->begin(); |
| 553 it != pending_extension_manager->end(); ++it) { | 557 it != pending_extension_manager->end(); ++it) { |
| 554 fetch_data.AddExtension(it->first, "1.0.0.0", | 558 fetch_data.AddExtension(it->first, "1.0.0.0", |
| 555 kNeverPingedData, | 559 kNeverPingedData, |
| 556 kEmptyUpdateUrlData); | 560 kEmptyUpdateUrlData); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 575 io_thread.Start(); | 579 io_thread.Start(); |
| 576 | 580 |
| 577 TestURLFetcherFactory factory; | 581 TestURLFetcherFactory factory; |
| 578 TestURLFetcher* fetcher = NULL; | 582 TestURLFetcher* fetcher = NULL; |
| 579 scoped_ptr<ServiceForDownloadTests> service(new ServiceForDownloadTests); | 583 scoped_ptr<ServiceForDownloadTests> service(new ServiceForDownloadTests); |
| 580 ExtensionUpdater updater(service.get(), | 584 ExtensionUpdater updater(service.get(), |
| 581 service->extension_prefs(), | 585 service->extension_prefs(), |
| 582 service->pref_service(), | 586 service->pref_service(), |
| 583 service->profile(), | 587 service->profile(), |
| 584 kUpdateFrequencySecs); | 588 kUpdateFrequencySecs); |
| 589 updater.set_use_utility_process_for_testing(false); |
| 585 updater.Start(); | 590 updater.Start(); |
| 586 | 591 |
| 587 GURL url1("http://localhost/manifest1"); | 592 GURL url1("http://localhost/manifest1"); |
| 588 GURL url2("http://localhost/manifest2"); | 593 GURL url2("http://localhost/manifest2"); |
| 589 | 594 |
| 590 // Request 2 update checks - the first should begin immediately and the | 595 // Request 2 update checks - the first should begin immediately and the |
| 591 // second one should be queued up. | 596 // second one should be queued up. |
| 592 ManifestFetchData* fetch1 = new ManifestFetchData(url1); | 597 ManifestFetchData* fetch1 = new ManifestFetchData(url1); |
| 593 ManifestFetchData* fetch2 = new ManifestFetchData(url2); | 598 ManifestFetchData* fetch2 = new ManifestFetchData(url2); |
| 594 ManifestFetchData::PingData zeroDays(0, 0); | 599 ManifestFetchData::PingData zeroDays(0, 0); |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 653 content::TestBrowserThread io_thread(BrowserThread::IO); | 658 content::TestBrowserThread io_thread(BrowserThread::IO); |
| 654 io_thread.Start(); | 659 io_thread.Start(); |
| 655 | 660 |
| 656 TestURLFetcherFactory factory; | 661 TestURLFetcherFactory factory; |
| 657 TestURLFetcher* fetcher = NULL; | 662 TestURLFetcher* fetcher = NULL; |
| 658 scoped_ptr<ServiceForDownloadTests> service(new ServiceForDownloadTests); | 663 scoped_ptr<ServiceForDownloadTests> service(new ServiceForDownloadTests); |
| 659 ExtensionUpdater updater(service.get(), service->extension_prefs(), | 664 ExtensionUpdater updater(service.get(), service->extension_prefs(), |
| 660 service->pref_service(), | 665 service->pref_service(), |
| 661 service->profile(), | 666 service->profile(), |
| 662 kUpdateFrequencySecs); | 667 kUpdateFrequencySecs); |
| 668 updater.set_use_utility_process_for_testing(false); |
| 663 updater.Start(); | 669 updater.Start(); |
| 664 | 670 |
| 665 GURL test_url("http://localhost/extension.crx"); | 671 GURL test_url("http://localhost/extension.crx"); |
| 666 | 672 |
| 667 std::string id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; | 673 std::string id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; |
| 668 std::string hash = ""; | 674 std::string hash = ""; |
| 669 scoped_ptr<Version> version(Version::GetVersionFromString("0.0.1")); | 675 scoped_ptr<Version> version(Version::GetVersionFromString("0.0.1")); |
| 670 ASSERT_TRUE(version.get()); | 676 ASSERT_TRUE(version.get()); |
| 671 updater.FetchUpdatedExtension(id, test_url, hash, version->GetString()); | 677 updater.FetchUpdatedExtension(id, test_url, hash, version->GetString()); |
| 672 | 678 |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 717 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); | 723 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); |
| 718 content::TestBrowserThread io_thread(BrowserThread::IO); | 724 content::TestBrowserThread io_thread(BrowserThread::IO); |
| 719 io_thread.Start(); | 725 io_thread.Start(); |
| 720 | 726 |
| 721 TestURLFetcherFactory factory; | 727 TestURLFetcherFactory factory; |
| 722 TestURLFetcher* fetcher = NULL; | 728 TestURLFetcher* fetcher = NULL; |
| 723 ServiceForBlacklistTests service; | 729 ServiceForBlacklistTests service; |
| 724 ExtensionUpdater updater( | 730 ExtensionUpdater updater( |
| 725 &service, service.extension_prefs(), service.pref_service(), | 731 &service, service.extension_prefs(), service.pref_service(), |
| 726 service.profile(), kUpdateFrequencySecs); | 732 service.profile(), kUpdateFrequencySecs); |
| 733 updater.set_use_utility_process_for_testing(false); |
| 727 updater.Start(); | 734 updater.Start(); |
| 728 GURL test_url("http://localhost/extension.crx"); | 735 GURL test_url("http://localhost/extension.crx"); |
| 729 | 736 |
| 730 std::string id = "com.google.crx.blacklist"; | 737 std::string id = "com.google.crx.blacklist"; |
| 731 | 738 |
| 732 std::string hash = | 739 std::string hash = |
| 733 "2CE109E9D0FAF820B2434E166297934E6177B65AB9951DBC3E204CAD4689B39C"; | 740 "2CE109E9D0FAF820B2434E166297934E6177B65AB9951DBC3E204CAD4689B39C"; |
| 734 | 741 |
| 735 std::string version = "0.0.1"; | 742 std::string version = "0.0.1"; |
| 736 updater.FetchUpdatedExtension(id, test_url, hash, version); | 743 updater.FetchUpdatedExtension(id, test_url, hash, version); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 768 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); | 775 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); |
| 769 content::TestBrowserThread io_thread(BrowserThread::IO); | 776 content::TestBrowserThread io_thread(BrowserThread::IO); |
| 770 io_thread.Start(); | 777 io_thread.Start(); |
| 771 | 778 |
| 772 TestURLFetcherFactory factory; | 779 TestURLFetcherFactory factory; |
| 773 TestURLFetcher* fetcher = NULL; | 780 TestURLFetcher* fetcher = NULL; |
| 774 ServiceForDownloadTests service; | 781 ServiceForDownloadTests service; |
| 775 ExtensionUpdater updater( | 782 ExtensionUpdater updater( |
| 776 &service, service.extension_prefs(), service.pref_service(), | 783 &service, service.extension_prefs(), service.pref_service(), |
| 777 service.profile(), kUpdateFrequencySecs); | 784 service.profile(), kUpdateFrequencySecs); |
| 785 updater.set_use_utility_process_for_testing(false); |
| 778 updater.Start(); | 786 updater.Start(); |
| 779 | 787 |
| 780 EXPECT_FALSE(updater.crx_install_is_running_); | 788 EXPECT_FALSE(updater.crx_install_is_running_); |
| 781 | 789 |
| 782 GURL url1("http://localhost/extension1.crx"); | 790 GURL url1("http://localhost/extension1.crx"); |
| 783 GURL url2("http://localhost/extension2.crx"); | 791 GURL url2("http://localhost/extension2.crx"); |
| 784 | 792 |
| 785 std::string id1 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; | 793 std::string id1 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; |
| 786 std::string id2 = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"; | 794 std::string id2 = "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"; |
| 787 | 795 |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 969 TimeDelta::FromDays(active_ping_days) - | 977 TimeDelta::FromDays(active_ping_days) - |
| 970 TimeDelta::FromSeconds(15); | 978 TimeDelta::FromSeconds(15); |
| 971 prefs->SetLastActivePingDay(id, last_active_ping_day); | 979 prefs->SetLastActivePingDay(id, last_active_ping_day); |
| 972 } | 980 } |
| 973 if (active_bit) | 981 if (active_bit) |
| 974 prefs->SetActiveBit(id, true); | 982 prefs->SetActiveBit(id, true); |
| 975 | 983 |
| 976 ExtensionUpdater updater( | 984 ExtensionUpdater updater( |
| 977 &service, service.extension_prefs(), service.pref_service(), | 985 &service, service.extension_prefs(), service.pref_service(), |
| 978 service.profile(), kUpdateFrequencySecs); | 986 service.profile(), kUpdateFrequencySecs); |
| 987 updater.set_use_utility_process_for_testing(false); |
| 979 updater.Start(); | 988 updater.Start(); |
| 980 updater.set_blacklist_checks_enabled(false); | 989 updater.set_blacklist_checks_enabled(false); |
| 981 | 990 |
| 982 // Make the updater do manifest fetching, and note the urls it tries to | 991 // Make the updater do manifest fetching, and note the urls it tries to |
| 983 // fetch. | 992 // fetch. |
| 984 std::vector<GURL> fetched_urls; | 993 std::vector<GURL> fetched_urls; |
| 985 updater.CheckNow(); | 994 updater.CheckNow(); |
| 986 TestURLFetcher* fetcher = | 995 TestURLFetcher* fetcher = |
| 987 factory.GetFetcherByID(ExtensionUpdater::kManifestFetcherId); | 996 factory.GetFetcherByID(ExtensionUpdater::kManifestFetcherId); |
| 988 EXPECT_TRUE(fetcher != NULL && fetcher->delegate() != NULL); | 997 EXPECT_TRUE(fetcher != NULL && fetcher->delegate() != NULL); |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1056 // of a <daystart> tag from a manifest fetch in one of two cases: 1) This is | 1065 // of a <daystart> tag from a manifest fetch in one of two cases: 1) This is |
| 1057 // the first time we fetched the extension, or 2) We sent a ping value of | 1066 // the first time we fetched the extension, or 2) We sent a ping value of |
| 1058 // >= 1 day for the extension. | 1067 // >= 1 day for the extension. |
| 1059 static void TestHandleManifestResults() { | 1068 static void TestHandleManifestResults() { |
| 1060 ServiceForManifestTests service; | 1069 ServiceForManifestTests service; |
| 1061 MessageLoop message_loop; | 1070 MessageLoop message_loop; |
| 1062 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); | 1071 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); |
| 1063 ExtensionUpdater updater( | 1072 ExtensionUpdater updater( |
| 1064 &service, service.extension_prefs(), service.pref_service(), | 1073 &service, service.extension_prefs(), service.pref_service(), |
| 1065 service.profile(), kUpdateFrequencySecs); | 1074 service.profile(), kUpdateFrequencySecs); |
| 1075 updater.set_use_utility_process_for_testing(false); |
| 1066 updater.Start(); | 1076 updater.Start(); |
| 1067 | 1077 |
| 1068 GURL update_url("http://www.google.com/manifest"); | 1078 GURL update_url("http://www.google.com/manifest"); |
| 1069 ExtensionList tmp; | 1079 ExtensionList tmp; |
| 1070 service.CreateTestExtensions(1, 1, &tmp, &update_url.spec(), | 1080 service.CreateTestExtensions(1, 1, &tmp, &update_url.spec(), |
| 1071 Extension::INTERNAL); | 1081 Extension::INTERNAL); |
| 1072 service.set_extensions(tmp); | 1082 service.set_extensions(tmp); |
| 1073 | 1083 |
| 1074 ManifestFetchData fetch_data(update_url); | 1084 ManifestFetchData fetch_data(update_url); |
| 1075 const Extension* extension = tmp[0]; | 1085 const Extension* extension = tmp[0]; |
| (...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1212 TEST_F(ExtensionUpdaterTest, TestStartUpdateCheckMemory) { | 1222 TEST_F(ExtensionUpdaterTest, TestStartUpdateCheckMemory) { |
| 1213 MessageLoop message_loop; | 1223 MessageLoop message_loop; |
| 1214 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); | 1224 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); |
| 1215 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); | 1225 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); |
| 1216 | 1226 |
| 1217 ServiceForManifestTests service; | 1227 ServiceForManifestTests service; |
| 1218 TestURLFetcherFactory factory; | 1228 TestURLFetcherFactory factory; |
| 1219 ExtensionUpdater updater( | 1229 ExtensionUpdater updater( |
| 1220 &service, service.extension_prefs(), service.pref_service(), | 1230 &service, service.extension_prefs(), service.pref_service(), |
| 1221 service.profile(), kUpdateFrequencySecs); | 1231 service.profile(), kUpdateFrequencySecs); |
| 1232 updater.set_use_utility_process_for_testing(false); |
| 1222 updater.Start(); | 1233 updater.Start(); |
| 1223 updater.StartUpdateCheck(new ManifestFetchData(GURL())); | 1234 updater.StartUpdateCheck(new ManifestFetchData(GURL())); |
| 1224 // This should delete the newly-created ManifestFetchData. | 1235 // This should delete the newly-created ManifestFetchData. |
| 1225 updater.StartUpdateCheck(new ManifestFetchData(GURL())); | 1236 updater.StartUpdateCheck(new ManifestFetchData(GURL())); |
| 1226 // This should add into |manifests_pending_|. | 1237 // This should add into |manifests_pending_|. |
| 1227 updater.StartUpdateCheck(new ManifestFetchData( | 1238 updater.StartUpdateCheck(new ManifestFetchData( |
| 1228 GURL("http://www.google.com"))); | 1239 GURL("http://www.google.com"))); |
| 1229 // This should clear out |manifests_pending_|. | 1240 // This should clear out |manifests_pending_|. |
| 1230 updater.Stop(); | 1241 updater.Stop(); |
| 1231 } | 1242 } |
| 1232 | 1243 |
| 1233 TEST_F(ExtensionUpdaterTest, TestCheckSoon) { | 1244 TEST_F(ExtensionUpdaterTest, TestCheckSoon) { |
| 1234 MessageLoop message_loop; | 1245 MessageLoop message_loop; |
| 1235 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); | 1246 content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop); |
| 1236 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); | 1247 content::TestBrowserThread file_thread(BrowserThread::FILE, &message_loop); |
| 1237 | 1248 |
| 1238 ServiceForManifestTests service; | 1249 ServiceForManifestTests service; |
| 1239 TestURLFetcherFactory factory; | 1250 TestURLFetcherFactory factory; |
| 1240 ExtensionUpdater updater( | 1251 ExtensionUpdater updater( |
| 1241 &service, service.extension_prefs(), service.pref_service(), | 1252 &service, service.extension_prefs(), service.pref_service(), |
| 1242 service.profile(), kUpdateFrequencySecs); | 1253 service.profile(), kUpdateFrequencySecs); |
| 1254 updater.set_use_utility_process_for_testing(false); |
| 1243 EXPECT_FALSE(updater.WillCheckSoon()); | 1255 EXPECT_FALSE(updater.WillCheckSoon()); |
| 1244 updater.Start(); | 1256 updater.Start(); |
| 1245 EXPECT_FALSE(updater.WillCheckSoon()); | 1257 EXPECT_FALSE(updater.WillCheckSoon()); |
| 1246 updater.CheckSoon(); | 1258 updater.CheckSoon(); |
| 1247 EXPECT_TRUE(updater.WillCheckSoon()); | 1259 EXPECT_TRUE(updater.WillCheckSoon()); |
| 1248 updater.CheckSoon(); | 1260 updater.CheckSoon(); |
| 1249 EXPECT_TRUE(updater.WillCheckSoon()); | 1261 EXPECT_TRUE(updater.WillCheckSoon()); |
| 1250 ExtensionUpdaterTest::SimulateCheckSoon(updater, &message_loop); | 1262 ExtensionUpdaterTest::SimulateCheckSoon(updater, &message_loop); |
| 1251 EXPECT_FALSE(updater.WillCheckSoon()); | 1263 EXPECT_FALSE(updater.WillCheckSoon()); |
| 1252 updater.CheckSoon(); | 1264 updater.CheckSoon(); |
| 1253 EXPECT_TRUE(updater.WillCheckSoon()); | 1265 EXPECT_TRUE(updater.WillCheckSoon()); |
| 1254 updater.Stop(); | 1266 updater.Stop(); |
| 1255 EXPECT_FALSE(updater.WillCheckSoon()); | 1267 EXPECT_FALSE(updater.WillCheckSoon()); |
| 1256 } | 1268 } |
| 1257 | 1269 |
| 1258 // TODO(asargent) - (http://crbug.com/12780) add tests for: | 1270 // TODO(asargent) - (http://crbug.com/12780) add tests for: |
| 1259 // -prodversionmin (shouldn't update if browser version too old) | 1271 // -prodversionmin (shouldn't update if browser version too old) |
| 1260 // -manifests & updates arriving out of order / interleaved | 1272 // -manifests & updates arriving out of order / interleaved |
| 1261 // -malformed update url (empty, file://, has query, has a # fragment, etc.) | 1273 // -malformed update url (empty, file://, has query, has a # fragment, etc.) |
| 1262 // -An extension gets uninstalled while updates are in progress (so it doesn't | 1274 // -An extension gets uninstalled while updates are in progress (so it doesn't |
| 1263 // "come back from the dead") | 1275 // "come back from the dead") |
| 1264 // -An extension gets manually updated to v3 while we're downloading v2 (ie | 1276 // -An extension gets manually updated to v3 while we're downloading v2 (ie |
| 1265 // you don't get downgraded accidentally) | 1277 // you don't get downgraded accidentally) |
| 1266 // -An update manifest mentions multiple updates | 1278 // -An update manifest mentions multiple updates |
| OLD | NEW |