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/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/compiler_specific.h" | 6 #include "base/compiler_specific.h" |
7 #include "base/file_util.h" | 7 #include "base/file_util.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/message_loop.h" | 9 #include "base/message_loop.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 EXPECT_FALSE(harness_.service->sync_initialized()); | 314 EXPECT_FALSE(harness_.service->sync_initialized()); |
315 } | 315 } |
316 | 316 |
317 #endif // !defined(OS_CHROMEOS) | 317 #endif // !defined(OS_CHROMEOS) |
318 | 318 |
319 TEST_F(ProfileSyncServiceTest, JsControllerHandlersBasic) { | 319 TEST_F(ProfileSyncServiceTest, JsControllerHandlersBasic) { |
320 harness_.StartSyncService(); | 320 harness_.StartSyncService(); |
321 EXPECT_TRUE(harness_.service->sync_initialized()); | 321 EXPECT_TRUE(harness_.service->sync_initialized()); |
322 EXPECT_TRUE(harness_.service->GetBackendForTest() != NULL); | 322 EXPECT_TRUE(harness_.service->GetBackendForTest() != NULL); |
323 | 323 |
324 syncer::JsController* js_controller = harness_.service->GetJsController(); | 324 base::WeakPtr<syncer::JsController> js_controller = |
| 325 harness_.service->GetJsController(); |
325 StrictMock<syncer::MockJsEventHandler> event_handler; | 326 StrictMock<syncer::MockJsEventHandler> event_handler; |
326 js_controller->AddJsEventHandler(&event_handler); | 327 js_controller->AddJsEventHandler(&event_handler); |
327 js_controller->RemoveJsEventHandler(&event_handler); | 328 js_controller->RemoveJsEventHandler(&event_handler); |
328 } | 329 } |
329 | 330 |
330 TEST_F(ProfileSyncServiceTest, | 331 TEST_F(ProfileSyncServiceTest, |
331 JsControllerHandlersDelayedBackendInitialization) { | 332 JsControllerHandlersDelayedBackendInitialization) { |
332 harness_.StartSyncServiceAndSetInitialSyncEnded(true, false, false, true, | 333 harness_.StartSyncServiceAndSetInitialSyncEnded(true, false, false, true, |
333 syncer::STORAGE_IN_MEMORY); | 334 syncer::STORAGE_IN_MEMORY); |
334 | 335 |
335 StrictMock<syncer::MockJsEventHandler> event_handler; | 336 StrictMock<syncer::MockJsEventHandler> event_handler; |
336 EXPECT_CALL(event_handler, HandleJsEvent(_, _)).Times(AtLeast(1)); | 337 EXPECT_CALL(event_handler, HandleJsEvent(_, _)).Times(AtLeast(1)); |
337 | 338 |
338 EXPECT_EQ(NULL, harness_.service->GetBackendForTest()); | 339 EXPECT_EQ(NULL, harness_.service->GetBackendForTest()); |
339 EXPECT_FALSE(harness_.service->sync_initialized()); | 340 EXPECT_FALSE(harness_.service->sync_initialized()); |
340 | 341 |
341 syncer::JsController* js_controller = harness_.service->GetJsController(); | 342 base::WeakPtr<syncer::JsController> js_controller = |
| 343 harness_.service->GetJsController(); |
342 js_controller->AddJsEventHandler(&event_handler); | 344 js_controller->AddJsEventHandler(&event_handler); |
343 // Since we're doing synchronous initialization, backend should be | 345 // Since we're doing synchronous initialization, backend should be |
344 // initialized by this call. | 346 // initialized by this call. |
345 harness_.IssueTestTokens(); | 347 harness_.IssueTestTokens(); |
346 EXPECT_TRUE(harness_.service->sync_initialized()); | 348 EXPECT_TRUE(harness_.service->sync_initialized()); |
347 js_controller->RemoveJsEventHandler(&event_handler); | 349 js_controller->RemoveJsEventHandler(&event_handler); |
348 } | 350 } |
349 | 351 |
350 TEST_F(ProfileSyncServiceTest, JsControllerProcessJsMessageBasic) { | 352 TEST_F(ProfileSyncServiceTest, JsControllerProcessJsMessageBasic) { |
351 harness_.StartSyncService(); | 353 harness_.StartSyncService(); |
352 | 354 |
353 StrictMock<syncer::MockJsReplyHandler> reply_handler; | 355 StrictMock<syncer::MockJsReplyHandler> reply_handler; |
354 | 356 |
355 ListValue arg_list1; | 357 ListValue arg_list1; |
356 arg_list1.Append(Value::CreateStringValue("TRANSIENT_INVALIDATION_ERROR")); | 358 arg_list1.Append(Value::CreateStringValue("TRANSIENT_INVALIDATION_ERROR")); |
357 syncer::JsArgList args1(&arg_list1); | 359 syncer::JsArgList args1(&arg_list1); |
358 EXPECT_CALL(reply_handler, | 360 EXPECT_CALL(reply_handler, |
359 HandleJsReply("getNotificationState", HasArgs(args1))); | 361 HandleJsReply("getNotificationState", HasArgs(args1))); |
360 | 362 |
361 { | 363 { |
362 syncer::JsController* js_controller = harness_.service->GetJsController(); | 364 base::WeakPtr<syncer::JsController> js_controller = |
| 365 harness_.service->GetJsController(); |
363 js_controller->ProcessJsMessage("getNotificationState", args1, | 366 js_controller->ProcessJsMessage("getNotificationState", args1, |
364 reply_handler.AsWeakHandle()); | 367 reply_handler.AsWeakHandle()); |
365 } | 368 } |
366 | 369 |
367 // This forces the sync thread to process the message and reply. | 370 // This forces the sync thread to process the message and reply. |
368 harness_.TearDown(); | 371 harness_.TearDown(); |
369 } | 372 } |
370 | 373 |
371 TEST_F(ProfileSyncServiceTest, | 374 TEST_F(ProfileSyncServiceTest, |
372 JsControllerProcessJsMessageBasicDelayedBackendInitialization) { | 375 JsControllerProcessJsMessageBasicDelayedBackendInitialization) { |
373 harness_.StartSyncServiceAndSetInitialSyncEnded(true, false, false, true, | 376 harness_.StartSyncServiceAndSetInitialSyncEnded(true, false, false, true, |
374 syncer::STORAGE_IN_MEMORY); | 377 syncer::STORAGE_IN_MEMORY); |
375 | 378 |
376 StrictMock<syncer::MockJsReplyHandler> reply_handler; | 379 StrictMock<syncer::MockJsReplyHandler> reply_handler; |
377 | 380 |
378 ListValue arg_list1; | 381 ListValue arg_list1; |
379 arg_list1.Append(Value::CreateStringValue("TRANSIENT_INVALIDATION_ERROR")); | 382 arg_list1.Append(Value::CreateStringValue("TRANSIENT_INVALIDATION_ERROR")); |
380 syncer::JsArgList args1(&arg_list1); | 383 syncer::JsArgList args1(&arg_list1); |
381 EXPECT_CALL(reply_handler, | 384 EXPECT_CALL(reply_handler, |
382 HandleJsReply("getNotificationState", HasArgs(args1))); | 385 HandleJsReply("getNotificationState", HasArgs(args1))); |
383 | 386 |
384 { | 387 { |
385 syncer::JsController* js_controller = harness_.service->GetJsController(); | 388 base::WeakPtr<syncer::JsController> js_controller = |
| 389 harness_.service->GetJsController(); |
386 js_controller->ProcessJsMessage("getNotificationState", | 390 js_controller->ProcessJsMessage("getNotificationState", |
387 args1, reply_handler.AsWeakHandle()); | 391 args1, reply_handler.AsWeakHandle()); |
388 } | 392 } |
389 | 393 |
390 harness_.IssueTestTokens(); | 394 harness_.IssueTestTokens(); |
391 | 395 |
392 // This forces the sync thread to process the message and reply. | 396 // This forces the sync thread to process the message and reply. |
393 harness_.TearDown(); | 397 harness_.TearDown(); |
394 } | 398 } |
395 | 399 |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
629 namespace syncer { | 633 namespace syncer { |
630 namespace { | 634 namespace { |
631 | 635 |
632 // ProfileSyncService should behave just like an invalidator. | 636 // ProfileSyncService should behave just like an invalidator. |
633 INSTANTIATE_TYPED_TEST_CASE_P( | 637 INSTANTIATE_TYPED_TEST_CASE_P( |
634 ProfileSyncServiceInvalidatorTest, InvalidatorTest, | 638 ProfileSyncServiceInvalidatorTest, InvalidatorTest, |
635 ::browser_sync::ProfileSyncServiceInvalidatorTestDelegate); | 639 ::browser_sync::ProfileSyncServiceInvalidatorTestDelegate); |
636 | 640 |
637 } // namespace | 641 } // namespace |
638 } // namespace syncer | 642 } // namespace syncer |
OLD | NEW |