| Index: chrome/browser/sync/test/integration/autofill_helper.cc
|
| diff --git a/chrome/browser/sync/test/integration/autofill_helper.cc b/chrome/browser/sync/test/integration/autofill_helper.cc
|
| index 7e5741b31af01d6715c0dd6e4ed5c428e7962828..0439db945a3285558f355fdad551762d93598d84 100644
|
| --- a/chrome/browser/sync/test/integration/autofill_helper.cc
|
| +++ b/chrome/browser/sync/test/integration/autofill_helper.cc
|
| @@ -16,7 +16,6 @@
|
| #include "chrome/browser/webdata/web_data_service_factory.h"
|
| #include "chrome/browser/webdata/web_database.h"
|
| #include "chrome/common/chrome_notification_types.h"
|
| -#include "chrome/test/base/thread_observer_helper.h"
|
| #include "components/autofill/browser/autofill_common_test.h"
|
| #include "components/autofill/browser/autofill_profile.h"
|
| #include "components/autofill/browser/autofill_type.h"
|
| @@ -35,18 +34,10 @@ ACTION_P(SignalEvent, event) {
|
| event->Signal();
|
| }
|
|
|
| -class AutofillDBThreadObserverHelper : public DBThreadObserverHelper {
|
| - protected:
|
| - virtual ~AutofillDBThreadObserverHelper() {}
|
| -
|
| - virtual void RegisterObservers() OVERRIDE {
|
| - registrar_.Add(&observer_,
|
| - chrome::NOTIFICATION_AUTOFILL_ENTRIES_CHANGED,
|
| - content::NotificationService::AllSources());
|
| - registrar_.Add(&observer_,
|
| - chrome::NOTIFICATION_AUTOFILL_PROFILE_CHANGED,
|
| - content::NotificationService::AllSources());
|
| - }
|
| +class MockWebDataServiceObserver : public WebDataServiceObserver {
|
| + public:
|
| + MOCK_METHOD1(AutofillEntriesChanged,
|
| + void(const AutofillChangeList& changes));
|
| };
|
|
|
| class MockPersonalDataManagerObserver : public PersonalDataManagerObserver {
|
| @@ -56,16 +47,19 @@ class MockPersonalDataManagerObserver : public PersonalDataManagerObserver {
|
|
|
| void RemoveKeyDontBlockForSync(int profile, const AutofillKey& key) {
|
| WaitableEvent done_event(false, false);
|
| - scoped_refptr<AutofillDBThreadObserverHelper> observer_helper(
|
| - new AutofillDBThreadObserverHelper());
|
| - observer_helper->Init();
|
|
|
| - EXPECT_CALL(*observer_helper->observer(), Observe(_, _, _)).
|
| - WillOnce(SignalEvent(&done_event));
|
| + MockWebDataServiceObserver mock_observer;
|
| + EXPECT_CALL(mock_observer, AutofillEntriesChanged(_))
|
| + .WillOnce(SignalEvent(&done_event));
|
| +
|
| scoped_refptr<WebDataService> wds =
|
| autofill_helper::GetWebDataService(profile);
|
| + wds->AddObserver(&mock_observer);
|
| +
|
| wds->RemoveFormValueForElementName(key.name(), key.value());
|
| done_event.Wait();
|
| +
|
| + wds->RemoveObserver(&mock_observer);
|
| }
|
|
|
| void RunOnDBThreadAndSignal(base::Closure task,
|
| @@ -170,16 +164,18 @@ void AddKeys(int profile, const std::set<AutofillKey>& keys) {
|
| }
|
|
|
| WaitableEvent done_event(false, false);
|
| - scoped_refptr<AutofillDBThreadObserverHelper> observer_helper(
|
| - new AutofillDBThreadObserverHelper());
|
| - observer_helper->Init();
|
| + MockWebDataServiceObserver mock_observer;
|
| + EXPECT_CALL(mock_observer, AutofillEntriesChanged(_))
|
| + .WillOnce(SignalEvent(&done_event));
|
|
|
| - EXPECT_CALL(*observer_helper->observer(), Observe(_, _, _)).
|
| - WillOnce(SignalEvent(&done_event));
|
| scoped_refptr<WebDataService> wds = GetWebDataService(profile);
|
| + wds->AddObserver(&mock_observer);
|
| +
|
| wds->AddFormFields(form_fields);
|
| done_event.Wait();
|
| BlockForPendingDBThreadTasks();
|
| +
|
| + wds->RemoveObserver(&mock_observer);
|
| }
|
|
|
| void RemoveKey(int profile, const AutofillKey& key) {
|
|
|