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 3b749066bfb741c5364d497814ee36b03abc4ea8..0b166431fc6508a8cbc0ce9f7c966f396e44c4cf 100644 |
--- a/chrome/browser/extensions/extension_service_unittest.cc |
+++ b/chrome/browser/extensions/extension_service_unittest.cc |
@@ -25,6 +25,7 @@ |
#include "base/strings/string_number_conversions.h" |
#include "base/strings/string_util.h" |
#include "base/strings/utf_string_conversions.h" |
+#include "base/test/thread_test_helper.h" |
#include "base/version.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/chrome_notification_types.h" |
@@ -4262,13 +4263,7 @@ class ExtensionCookieCallback { |
}; |
// Verifies extension state is removed upon uninstall. |
-#if defined(OS_CHROMEOS) |
-// http://crbug.com/396504 |
-#define MAYBE_ClearExtensionData DISABLED_ClearExtensionData |
-#else |
-#define MAYBE_ClearExtensionData ClearExtensionData |
-#endif |
-TEST_F(ExtensionServiceTest, MAYBE_ClearExtensionData) { |
+TEST_F(ExtensionServiceTest, ClearExtensionData) { |
InitializeEmptyExtensionService(); |
ExtensionCookieCallback callback; |
@@ -4340,6 +4335,12 @@ TEST_F(ExtensionServiceTest, MAYBE_ClearExtensionData) { |
// Uninstall the extension. |
service()->UninstallExtension( |
good_crx, extensions::UNINSTALL_REASON_FOR_TESTING, NULL); |
+ // The data deletion happens on the IO thread. |
+ scoped_refptr<base::ThreadTestHelper> wait_for_io_thread( |
awong
2014/07/28 15:05:25
unrelated: Why is ThreadTestHelper refcounted? :-/
|
+ new base::ThreadTestHelper( |
+ content::BrowserThread::GetMessageLoopProxyForThread( |
+ content::BrowserThread::IO))); |
+ EXPECT_TRUE(wait_for_io_thread->Run()); |
base::RunLoop().RunUntilIdle(); |
// Check that the cookie is gone. |