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 "testing/gtest/include/gtest/gtest.h" | 5 #include "testing/gtest/include/gtest/gtest.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 } | 183 } |
184 | 184 |
185 void WaitForDTC() { | 185 void WaitForDTC() { |
186 WaitableEvent done(true, false); | 186 WaitableEvent done(true, false); |
187 BrowserThread::PostTask(BrowserThread::DB, FROM_HERE, | 187 BrowserThread::PostTask(BrowserThread::DB, FROM_HERE, |
188 base::Bind(&SyncNonFrontendDataTypeControllerTest::SignalDone, &done)); | 188 base::Bind(&SyncNonFrontendDataTypeControllerTest::SignalDone, &done)); |
189 done.TimedWait(TestTimeouts::action_timeout()); | 189 done.TimedWait(TestTimeouts::action_timeout()); |
190 if (!done.IsSignaled()) { | 190 if (!done.IsSignaled()) { |
191 ADD_FAILURE() << "Timed out waiting for DB thread to finish."; | 191 ADD_FAILURE() << "Timed out waiting for DB thread to finish."; |
192 } | 192 } |
193 MessageLoop::current()->RunUntilIdle(); | 193 base::MessageLoop::current()->RunUntilIdle(); |
194 } | 194 } |
195 | 195 |
196 void Start() { | 196 void Start() { |
197 non_frontend_dtc_->LoadModels( | 197 non_frontend_dtc_->LoadModels( |
198 base::Bind(&ModelLoadCallbackMock::Run, | 198 base::Bind(&ModelLoadCallbackMock::Run, |
199 base::Unretained(&model_load_callback_))); | 199 base::Unretained(&model_load_callback_))); |
200 non_frontend_dtc_->StartAssociating( | 200 non_frontend_dtc_->StartAssociating( |
201 base::Bind(&StartCallbackMock::Run, | 201 base::Bind(&StartCallbackMock::Run, |
202 base::Unretained(&start_callback_))); | 202 base::Unretained(&start_callback_))); |
203 } | 203 } |
204 | 204 |
205 MessageLoopForUI message_loop_; | 205 base::MessageLoopForUI message_loop_; |
206 content::TestBrowserThread ui_thread_; | 206 content::TestBrowserThread ui_thread_; |
207 content::TestBrowserThread db_thread_; | 207 content::TestBrowserThread db_thread_; |
208 scoped_refptr<NonFrontendDataTypeControllerFake> non_frontend_dtc_; | 208 scoped_refptr<NonFrontendDataTypeControllerFake> non_frontend_dtc_; |
209 scoped_ptr<ProfileSyncComponentsFactoryMock> profile_sync_factory_; | 209 scoped_ptr<ProfileSyncComponentsFactoryMock> profile_sync_factory_; |
210 scoped_refptr<NonFrontendDataTypeControllerMock> dtc_mock_; | 210 scoped_refptr<NonFrontendDataTypeControllerMock> dtc_mock_; |
211 ProfileMock profile_; | 211 ProfileMock profile_; |
212 ProfileSyncServiceMock service_; | 212 ProfileSyncServiceMock service_; |
213 ModelAssociatorMock* model_associator_; | 213 ModelAssociatorMock* model_associator_; |
214 ChangeProcessorMock* change_processor_; | 214 ChangeProcessorMock* change_processor_; |
215 StartCallbackMock start_callback_; | 215 StartCallbackMock start_callback_; |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
379 EXPECT_EQ(DataTypeController::RUNNING, non_frontend_dtc_->state()); | 379 EXPECT_EQ(DataTypeController::RUNNING, non_frontend_dtc_->state()); |
380 // This should cause non_frontend_dtc_->Stop() to be called. | 380 // This should cause non_frontend_dtc_->Stop() to be called. |
381 BrowserThread::PostTask(BrowserThread::DB, FROM_HERE, base::Bind( | 381 BrowserThread::PostTask(BrowserThread::DB, FROM_HERE, base::Bind( |
382 &NonFrontendDataTypeControllerFake::OnSingleDatatypeUnrecoverableError, | 382 &NonFrontendDataTypeControllerFake::OnSingleDatatypeUnrecoverableError, |
383 non_frontend_dtc_.get(), | 383 non_frontend_dtc_.get(), |
384 FROM_HERE, | 384 FROM_HERE, |
385 std::string("Test"))); | 385 std::string("Test"))); |
386 WaitForDTC(); | 386 WaitForDTC(); |
387 EXPECT_EQ(DataTypeController::NOT_RUNNING, non_frontend_dtc_->state()); | 387 EXPECT_EQ(DataTypeController::NOT_RUNNING, non_frontend_dtc_->state()); |
388 } | 388 } |
OLD | NEW |