| Index: chrome/browser/extensions/extension_service_unittest.cc
|
| diff --git a/chrome/browser/extensions/extension_service_unittest.cc b/chrome/browser/extensions/extension_service_unittest.cc
|
| index 51931de926d57837682c693df4ad2ab4a4985f9b..a2d6fc4277c3ea5b73ac5f97b437e98177f51ef2 100644
|
| --- a/chrome/browser/extensions/extension_service_unittest.cc
|
| +++ b/chrome/browser/extensions/extension_service_unittest.cc
|
| @@ -2699,6 +2699,42 @@ TEST_F(ExtensionServiceTest, UninstallExtensionHelperTerminated) {
|
| UninstallExtension(good_crx, true);
|
| }
|
|
|
| +TEST_F(ExtensionServiceTest, TestExtensionWarnings) {
|
| + InitializeEmptyExtensionService();
|
| + EXPECT_EQ(0u, service_->GetWarnings().size());
|
| +
|
| + // Simple extension that should install without error.
|
| + FilePath path = data_dir_.AppendASCII("good.crx");
|
| + InstallCrx(path, true);
|
| + const char* extension_id = good_crx;
|
| + std::set<std::string> extension_id_set;
|
| + extension_id_set.insert(extension_id);
|
| +
|
| + ExtensionServiceWarning warning(
|
| + ExtensionServiceWarning::kExcessiveNetworkDelay, extension_id_set);
|
| + EXPECT_TRUE(warning.AffectsExtension(good_crx));
|
| + EXPECT_FALSE(warning.AffectsExtension("foobar"));
|
| + EXPECT_EQ(ExtensionServiceWarning::kExcessiveNetworkDelay,
|
| + warning.warning_type());
|
| +
|
| + // Install warning.
|
| + service_->SetWarning(warning);
|
| + EXPECT_EQ(1u, service_->GetWarnings().size());
|
| + EXPECT_TRUE(
|
| + service_->HasWarning(ExtensionServiceWarning::kExcessiveNetworkDelay));
|
| +
|
| + // Clear warning and check that is is gone.
|
| + service_->ClearWarning(ExtensionServiceWarning::kExcessiveNetworkDelay);
|
| + EXPECT_EQ(0u, service_->GetWarnings().size());
|
| + EXPECT_FALSE(
|
| + service_->HasWarning(ExtensionServiceWarning::kExcessiveNetworkDelay));
|
| +
|
| + // Install warning and disable extension. Check that the warning is gone.
|
| + service_->SetWarning(warning);
|
| + service_->DisableExtension(extension_id);
|
| + EXPECT_EQ(0u, service_->GetWarnings().size());
|
| +}
|
| +
|
| class ExtensionCookieCallback {
|
| public:
|
| ExtensionCookieCallback()
|
|
|