| OLD | NEW |
| 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/bind_helpers.h" | 6 #include "base/bind_helpers.h" |
| 7 #include "base/memory/ref_counted.h" | 7 #include "base/memory/ref_counted.h" |
| 8 #include "base/prefs/pref_service.h" | 8 #include "base/prefs/pref_service.h" |
| 9 #include "base/stl_util.h" | 9 #include "base/stl_util.h" |
| 10 #include "chrome/browser/chrome_notification_types.h" | 10 #include "chrome/browser/chrome_notification_types.h" |
| (...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 const size_t size_before = service->extensions()->size(); | 266 const size_t size_before = service->extensions()->size(); |
| 267 ASSERT_TRUE(service->disabled_extensions()->is_empty()); | 267 ASSERT_TRUE(service->disabled_extensions()->is_empty()); |
| 268 const Extension* extension = | 268 const Extension* extension = |
| 269 InstallExtension(basedir.AppendASCII("v1.crx"), 1); | 269 InstallExtension(basedir.AppendASCII("v1.crx"), 1); |
| 270 ASSERT_TRUE(extension); | 270 ASSERT_TRUE(extension); |
| 271 listener1.WaitUntilSatisfied(); | 271 listener1.WaitUntilSatisfied(); |
| 272 ASSERT_EQ(size_before + 1, service->extensions()->size()); | 272 ASSERT_EQ(size_before + 1, service->extensions()->size()); |
| 273 ASSERT_EQ("ogjcoiohnmldgjemafoockdghcjciccf", extension->id()); | 273 ASSERT_EQ("ogjcoiohnmldgjemafoockdghcjciccf", extension->id()); |
| 274 ASSERT_EQ("1.0", extension->VersionString()); | 274 ASSERT_EQ("1.0", extension->VersionString()); |
| 275 | 275 |
| 276 // We don't want autoupdate blacklist checks. | |
| 277 extensions::ExtensionUpdater::CheckParams params; | 276 extensions::ExtensionUpdater::CheckParams params; |
| 278 params.check_blacklist = false; | |
| 279 params.callback = | 277 params.callback = |
| 280 base::Bind(&NotificationListener::OnFinished, | 278 base::Bind(&NotificationListener::OnFinished, |
| 281 base::Unretained(¬ification_listener)); | 279 base::Unretained(¬ification_listener)); |
| 282 | 280 |
| 283 // Run autoupdate and make sure version 2 of the extension was installed. | 281 // Run autoupdate and make sure version 2 of the extension was installed. |
| 284 ExtensionTestMessageListener listener2("v2 installed", false); | 282 ExtensionTestMessageListener listener2("v2 installed", false); |
| 285 service->updater()->CheckNow(params); | 283 service->updater()->CheckNow(params); |
| 286 ASSERT_TRUE(WaitForExtensionInstall()); | 284 ASSERT_TRUE(WaitForExtensionInstall()); |
| 287 listener2.WaitUntilSatisfied(); | 285 listener2.WaitUntilSatisfied(); |
| 288 ASSERT_EQ(size_before + 1, service->extensions()->size()); | 286 ASSERT_EQ(size_before + 1, service->extensions()->size()); |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 354 const Extension* extension = | 352 const Extension* extension = |
| 355 InstallExtension(basedir.AppendASCII("v1.crx"), 1); | 353 InstallExtension(basedir.AppendASCII("v1.crx"), 1); |
| 356 ASSERT_TRUE(extension); | 354 ASSERT_TRUE(extension); |
| 357 listener1.WaitUntilSatisfied(); | 355 listener1.WaitUntilSatisfied(); |
| 358 DisableExtension(extension->id()); | 356 DisableExtension(extension->id()); |
| 359 ASSERT_EQ(disabled_size_before + 1, service->disabled_extensions()->size()); | 357 ASSERT_EQ(disabled_size_before + 1, service->disabled_extensions()->size()); |
| 360 ASSERT_EQ(enabled_size_before, service->extensions()->size()); | 358 ASSERT_EQ(enabled_size_before, service->extensions()->size()); |
| 361 ASSERT_EQ("ogjcoiohnmldgjemafoockdghcjciccf", extension->id()); | 359 ASSERT_EQ("ogjcoiohnmldgjemafoockdghcjciccf", extension->id()); |
| 362 ASSERT_EQ("1.0", extension->VersionString()); | 360 ASSERT_EQ("1.0", extension->VersionString()); |
| 363 | 361 |
| 364 // We don't want autoupdate blacklist checks. | |
| 365 extensions::ExtensionUpdater::CheckParams params; | 362 extensions::ExtensionUpdater::CheckParams params; |
| 366 params.check_blacklist = false; | |
| 367 params.callback = | 363 params.callback = |
| 368 base::Bind(&NotificationListener::OnFinished, | 364 base::Bind(&NotificationListener::OnFinished, |
| 369 base::Unretained(¬ification_listener)); | 365 base::Unretained(¬ification_listener)); |
| 370 | 366 |
| 371 ExtensionTestMessageListener listener2("v2 installed", false); | 367 ExtensionTestMessageListener listener2("v2 installed", false); |
| 372 // Run autoupdate and make sure version 2 of the extension was installed but | 368 // Run autoupdate and make sure version 2 of the extension was installed but |
| 373 // is still disabled. | 369 // is still disabled. |
| 374 service->updater()->CheckNow(params); | 370 service->updater()->CheckNow(params); |
| 375 ASSERT_TRUE(WaitForExtensionInstall()); | 371 ASSERT_TRUE(WaitForExtensionInstall()); |
| 376 ASSERT_EQ(disabled_size_before + 1, service->disabled_extensions()->size()); | 372 ASSERT_EQ(disabled_size_before + 1, service->disabled_extensions()->size()); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 398 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA) | 394 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) && defined(USE_AURA) |
| 399 #define MAYBE_ExternalUrlUpdate DISABLED_ExternalUrlUpdate | 395 #define MAYBE_ExternalUrlUpdate DISABLED_ExternalUrlUpdate |
| 400 #else | 396 #else |
| 401 #define MAYBE_ExternalUrlUpdate ExternalUrlUpdate | 397 #define MAYBE_ExternalUrlUpdate ExternalUrlUpdate |
| 402 #endif | 398 #endif |
| 403 | 399 |
| 404 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, MAYBE_ExternalUrlUpdate) { | 400 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, MAYBE_ExternalUrlUpdate) { |
| 405 ExtensionService* service = extensions::ExtensionSystem::Get( | 401 ExtensionService* service = extensions::ExtensionSystem::Get( |
| 406 browser()->profile())->extension_service(); | 402 browser()->profile())->extension_service(); |
| 407 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; | 403 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; |
| 408 // We don't want autoupdate blacklist checks. | |
| 409 extensions::ExtensionUpdater::CheckParams params; | 404 extensions::ExtensionUpdater::CheckParams params; |
| 410 params.check_blacklist = false; | |
| 411 | 405 |
| 412 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); | 406 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); |
| 413 | 407 |
| 414 // Note: This interceptor gets requests on the IO thread. | 408 // Note: This interceptor gets requests on the IO thread. |
| 415 content::URLLocalHostRequestPrepackagedInterceptor interceptor; | 409 content::URLLocalHostRequestPrepackagedInterceptor interceptor; |
| 416 net::URLFetcher::SetEnableInterceptionForTests(true); | 410 net::URLFetcher::SetEnableInterceptionForTests(true); |
| 417 | 411 |
| 418 interceptor.SetResponseIgnoreQuery( | 412 interceptor.SetResponseIgnoreQuery( |
| 419 GURL("http://localhost/autoupdate/manifest"), | 413 GURL("http://localhost/autoupdate/manifest"), |
| 420 basedir.AppendASCII("manifest_v2.xml")); | 414 basedir.AppendASCII("manifest_v2.xml")); |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 484 "before running tests. E.g. from /etc/chromium/policies Linux or " | 478 "before running tests. E.g. from /etc/chromium/policies Linux or " |
| 485 "from the registry on Windows, etc."; | 479 "from the registry on Windows, etc."; |
| 486 | 480 |
| 487 } | 481 } |
| 488 | 482 |
| 489 // See http://crbug.com/57378 for flakiness details. | 483 // See http://crbug.com/57378 for flakiness details. |
| 490 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, ExternalPolicyRefresh) { | 484 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, ExternalPolicyRefresh) { |
| 491 ExtensionService* service = extensions::ExtensionSystem::Get( | 485 ExtensionService* service = extensions::ExtensionSystem::Get( |
| 492 browser()->profile())->extension_service(); | 486 browser()->profile())->extension_service(); |
| 493 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; | 487 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; |
| 494 // We don't want autoupdate blacklist checks. | |
| 495 extensions::ExtensionUpdater::CheckParams params; | |
| 496 params.check_blacklist = false; | |
| 497 | 488 |
| 498 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); | 489 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); |
| 499 | 490 |
| 500 // Note: This interceptor gets requests on the IO thread. | 491 // Note: This interceptor gets requests on the IO thread. |
| 501 content::URLLocalHostRequestPrepackagedInterceptor interceptor; | 492 content::URLLocalHostRequestPrepackagedInterceptor interceptor; |
| 502 net::URLFetcher::SetEnableInterceptionForTests(true); | 493 net::URLFetcher::SetEnableInterceptionForTests(true); |
| 503 | 494 |
| 504 interceptor.SetResponseIgnoreQuery( | 495 interceptor.SetResponseIgnoreQuery( |
| 505 GURL("http://localhost/autoupdate/manifest"), | 496 GURL("http://localhost/autoupdate/manifest"), |
| 506 basedir.AppendASCII("manifest_v2.xml")); | 497 basedir.AppendASCII("manifest_v2.xml")); |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 559 #else | 550 #else |
| 560 #define MAYBE_PolicyOverridesUserInstall PolicyOverridesUserInstall | 551 #define MAYBE_PolicyOverridesUserInstall PolicyOverridesUserInstall |
| 561 #endif | 552 #endif |
| 562 | 553 |
| 563 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, | 554 IN_PROC_BROWSER_TEST_F(ExtensionManagementTest, |
| 564 MAYBE_PolicyOverridesUserInstall) { | 555 MAYBE_PolicyOverridesUserInstall) { |
| 565 ExtensionService* service = extensions::ExtensionSystem::Get( | 556 ExtensionService* service = extensions::ExtensionSystem::Get( |
| 566 browser()->profile())->extension_service(); | 557 browser()->profile())->extension_service(); |
| 567 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; | 558 const char* kExtensionId = "ogjcoiohnmldgjemafoockdghcjciccf"; |
| 568 extensions::ExtensionUpdater::CheckParams params; | 559 extensions::ExtensionUpdater::CheckParams params; |
| 569 params.check_blacklist = false; | |
| 570 service->updater()->set_default_check_params(params); | 560 service->updater()->set_default_check_params(params); |
| 571 const size_t size_before = service->extensions()->size(); | 561 const size_t size_before = service->extensions()->size(); |
| 572 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); | 562 base::FilePath basedir = test_data_dir_.AppendASCII("autoupdate"); |
| 573 ASSERT_TRUE(service->disabled_extensions()->is_empty()); | 563 ASSERT_TRUE(service->disabled_extensions()->is_empty()); |
| 574 | 564 |
| 575 // Note: This interceptor gets requests on the IO thread. | 565 // Note: This interceptor gets requests on the IO thread. |
| 576 content::URLLocalHostRequestPrepackagedInterceptor interceptor; | 566 content::URLLocalHostRequestPrepackagedInterceptor interceptor; |
| 577 net::URLFetcher::SetEnableInterceptionForTests(true); | 567 net::URLFetcher::SetEnableInterceptionForTests(true); |
| 578 | 568 |
| 579 interceptor.SetResponseIgnoreQuery( | 569 interceptor.SetResponseIgnoreQuery( |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 643 forcelist, kExtensionId, "http://localhost/autoupdate/manifest"); | 633 forcelist, kExtensionId, "http://localhost/autoupdate/manifest"); |
| 644 } | 634 } |
| 645 ASSERT_TRUE(WaitForExtensionInstall()); | 635 ASSERT_TRUE(WaitForExtensionInstall()); |
| 646 ASSERT_EQ(size_before + 1, service->extensions()->size()); | 636 ASSERT_EQ(size_before + 1, service->extensions()->size()); |
| 647 extension = service->GetExtensionById(kExtensionId, false); | 637 extension = service->GetExtensionById(kExtensionId, false); |
| 648 ASSERT_TRUE(extension); | 638 ASSERT_TRUE(extension); |
| 649 EXPECT_EQ(Manifest::EXTERNAL_POLICY_DOWNLOAD, extension->location()); | 639 EXPECT_EQ(Manifest::EXTERNAL_POLICY_DOWNLOAD, extension->location()); |
| 650 EXPECT_TRUE(service->IsExtensionEnabled(kExtensionId)); | 640 EXPECT_TRUE(service->IsExtensionEnabled(kExtensionId)); |
| 651 EXPECT_TRUE(service->disabled_extensions()->is_empty()); | 641 EXPECT_TRUE(service->disabled_extensions()->is_empty()); |
| 652 } | 642 } |
| OLD | NEW |