| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
| 7 #include "base/string_number_conversions.h" | 7 #include "base/string_number_conversions.h" |
| 8 #include "chrome/browser/extensions/app_notification_manager.h" | 8 #include "chrome/browser/extensions/app_notification_manager.h" |
| 9 #include "chrome/browser/extensions/app_notification.h" | 9 #include "chrome/browser/extensions/app_notification.h" |
| 10 #include "chrome/browser/sync/protocol/app_notification_specifics.pb.h" | 10 #include "chrome/browser/sync/protocol/app_notification_specifics.pb.h" |
| (...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 const std::string& link_text) { | 139 const std::string& link_text) { |
| 140 AppNotification* notif = new AppNotification( | 140 AppNotification* notif = new AppNotification( |
| 141 is_local, guid, extension_id, title, body); | 141 is_local, guid, extension_id, title, body); |
| 142 if (!link_url.empty()) | 142 if (!link_url.empty()) |
| 143 notif->set_link_url(GURL(link_url)); | 143 notif->set_link_url(GURL(link_url)); |
| 144 if (!link_text.empty()) | 144 if (!link_text.empty()) |
| 145 notif->set_link_text(link_text); | 145 notif->set_link_text(link_text); |
| 146 return notif; | 146 return notif; |
| 147 } | 147 } |
| 148 | 148 |
| 149 static AppNotification* CreateNotification(const AppNotification& notif) { | |
| 150 return CreateNotification( | |
| 151 notif.is_local(), notif.guid(), notif.extension_id(), notif.title(), | |
| 152 notif.body(), notif.link_url().spec(), notif.link_text()); | |
| 153 } | |
| 154 | |
| 155 static SyncData CreateSyncData(int suffix) { | 149 static SyncData CreateSyncData(int suffix) { |
| 156 scoped_ptr<AppNotification> notif(CreateNotification(suffix)); | 150 scoped_ptr<AppNotification> notif(CreateNotification(suffix)); |
| 157 return AppNotificationManager::CreateSyncDataFromNotification(*notif); | 151 return AppNotificationManager::CreateSyncDataFromNotification(*notif); |
| 158 } | 152 } |
| 159 static SyncData CreateSyncData(int suffix, const std::string& extension_id) { | 153 static SyncData CreateSyncData(int suffix, const std::string& extension_id) { |
| 160 scoped_ptr<AppNotification> notif( | 154 scoped_ptr<AppNotification> notif( |
| 161 CreateNotification(false, suffix, extension_id)); | 155 CreateNotification(false, suffix, extension_id)); |
| 162 return AppNotificationManager::CreateSyncDataFromNotification(*notif); | 156 return AppNotificationManager::CreateSyncDataFromNotification(*notif); |
| 163 } | 157 } |
| 164 | 158 |
| (...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 484 model()->Add(n2); | 478 model()->Add(n2); |
| 485 model()->MergeDataAndStartSyncing( | 479 model()->MergeDataAndStartSyncing( |
| 486 syncable::APP_NOTIFICATIONS, | 480 syncable::APP_NOTIFICATIONS, |
| 487 SyncDataList(), | 481 SyncDataList(), |
| 488 processor()); | 482 processor()); |
| 489 | 483 |
| 490 // Some adds and some deletes. | 484 // Some adds and some deletes. |
| 491 SyncChangeList changes; | 485 SyncChangeList changes; |
| 492 changes.push_back(CreateSyncChange( | 486 changes.push_back(CreateSyncChange( |
| 493 SyncChange::ACTION_ADD, CreateNotification(3))); | 487 SyncChange::ACTION_ADD, CreateNotification(3))); |
| 494 changes.push_back(CreateSyncChange( | 488 changes.push_back(CreateSyncChange(SyncChange::ACTION_DELETE, n1->Copy())); |
| 495 SyncChange::ACTION_DELETE, CreateNotification(*n1))); | |
| 496 changes.push_back(CreateSyncChange( | 489 changes.push_back(CreateSyncChange( |
| 497 SyncChange::ACTION_ADD, CreateNotification(4))); | 490 SyncChange::ACTION_ADD, CreateNotification(4))); |
| 498 | 491 |
| 499 model()->ProcessSyncChanges(FROM_HERE, changes); | 492 model()->ProcessSyncChanges(FROM_HERE, changes); |
| 500 | 493 |
| 501 EXPECT_EQ(3U, model()->GetAllSyncData(syncable::APP_NOTIFICATIONS).size()); | 494 EXPECT_EQ(3U, model()->GetAllSyncData(syncable::APP_NOTIFICATIONS).size()); |
| 502 EXPECT_EQ(2, processor()->change_list_size()); | 495 EXPECT_EQ(2, processor()->change_list_size()); |
| 503 } | 496 } |
| 504 | 497 |
| 505 // Process sync changes should return error if model association is not done. | 498 // Process sync changes should return error if model association is not done. |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 579 | 572 |
| 580 EXPECT_EQ(3, processor()->change_list_size()); | 573 EXPECT_EQ(3, processor()->change_list_size()); |
| 581 EXPECT_TRUE(processor()->ContainsGuid(n1->guid())); | 574 EXPECT_TRUE(processor()->ContainsGuid(n1->guid())); |
| 582 SyncChange c1 = processor()->GetChangeByGuid(n1->guid()); | 575 SyncChange c1 = processor()->GetChangeByGuid(n1->guid()); |
| 583 AssertSyncChange(c1, SyncChange::ACTION_DELETE, *n1); | 576 AssertSyncChange(c1, SyncChange::ACTION_DELETE, *n1); |
| 584 SyncChange c2 = processor()->GetChangeByGuid(n2->guid()); | 577 SyncChange c2 = processor()->GetChangeByGuid(n2->guid()); |
| 585 AssertSyncChange(c2, SyncChange::ACTION_DELETE, *n2); | 578 AssertSyncChange(c2, SyncChange::ACTION_DELETE, *n2); |
| 586 SyncChange c3 = processor()->GetChangeByGuid(n3->guid()); | 579 SyncChange c3 = processor()->GetChangeByGuid(n3->guid()); |
| 587 AssertSyncChange(c3, SyncChange::ACTION_DELETE, *n3); | 580 AssertSyncChange(c3, SyncChange::ACTION_DELETE, *n3); |
| 588 } | 581 } |
| OLD | NEW |