| 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 "chrome/browser/extensions/app_sync_data.h" | 5 #include "chrome/browser/extensions/app_sync_data.h" |
| 6 | 6 |
| 7 #include "sync/protocol/app_specifics.pb.h" | 7 #include "sync/protocol/app_specifics.pb.h" |
| 8 #include "sync/protocol/sync.pb.h" | 8 #include "sync/protocol/sync.pb.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 StringOrdinal::CreateInitialOrdinal().ToString()); | 44 StringOrdinal::CreateInitialOrdinal().ToString()); |
| 45 app_specifics->set_page_ordinal( | 45 app_specifics->set_page_ordinal( |
| 46 StringOrdinal::CreateInitialOrdinal().ToString()); | 46 StringOrdinal::CreateInitialOrdinal().ToString()); |
| 47 sync_pb::AppNotificationSettings* notif_settings = | 47 sync_pb::AppNotificationSettings* notif_settings = |
| 48 app_specifics->mutable_notification_settings(); | 48 app_specifics->mutable_notification_settings(); |
| 49 notif_settings->set_oauth_client_id(kOAuthClientId); | 49 notif_settings->set_oauth_client_id(kOAuthClientId); |
| 50 notif_settings->set_disabled(true); | 50 notif_settings->set_disabled(true); |
| 51 | 51 |
| 52 SetRequiredExtensionValues(app_specifics->mutable_extension()); | 52 SetRequiredExtensionValues(app_specifics->mutable_extension()); |
| 53 | 53 |
| 54 SyncData sync_data = | 54 csync::SyncData sync_data = |
| 55 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); | 55 csync::SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); |
| 56 | 56 |
| 57 AppSyncData app_sync_data(sync_data); | 57 AppSyncData app_sync_data(sync_data); |
| 58 EXPECT_EQ(app_specifics->app_launch_ordinal(), | 58 EXPECT_EQ(app_specifics->app_launch_ordinal(), |
| 59 app_sync_data.app_launch_ordinal().ToString()); | 59 app_sync_data.app_launch_ordinal().ToString()); |
| 60 EXPECT_EQ(app_specifics->page_ordinal(), | 60 EXPECT_EQ(app_specifics->page_ordinal(), |
| 61 app_sync_data.page_ordinal().ToString()); | 61 app_sync_data.page_ordinal().ToString()); |
| 62 EXPECT_EQ(notif_settings->oauth_client_id(), | 62 EXPECT_EQ(notif_settings->oauth_client_id(), |
| 63 app_sync_data.notifications_client_id()); | 63 app_sync_data.notifications_client_id()); |
| 64 EXPECT_EQ(notif_settings->disabled(), | 64 EXPECT_EQ(notif_settings->disabled(), |
| 65 app_sync_data.notifications_disabled()); | 65 app_sync_data.notifications_disabled()); |
| 66 } | 66 } |
| 67 | 67 |
| 68 | 68 |
| 69 | 69 |
| 70 TEST_F(AppSyncDataTest, ExtensionSyncDataToSyncDataForApp) { | 70 TEST_F(AppSyncDataTest, ExtensionSyncDataToSyncDataForApp) { |
| 71 sync_pb::EntitySpecifics entity; | 71 sync_pb::EntitySpecifics entity; |
| 72 sync_pb::AppSpecifics* input_specifics = entity.mutable_app(); | 72 sync_pb::AppSpecifics* input_specifics = entity.mutable_app(); |
| 73 input_specifics->set_app_launch_ordinal( | 73 input_specifics->set_app_launch_ordinal( |
| 74 StringOrdinal::CreateInitialOrdinal().ToString()); | 74 StringOrdinal::CreateInitialOrdinal().ToString()); |
| 75 input_specifics->set_page_ordinal( | 75 input_specifics->set_page_ordinal( |
| 76 StringOrdinal::CreateInitialOrdinal().ToString()); | 76 StringOrdinal::CreateInitialOrdinal().ToString()); |
| 77 sync_pb::AppNotificationSettings* notif_settings = | 77 sync_pb::AppNotificationSettings* notif_settings = |
| 78 input_specifics->mutable_notification_settings(); | 78 input_specifics->mutable_notification_settings(); |
| 79 notif_settings->set_oauth_client_id(kOAuthClientId); | 79 notif_settings->set_oauth_client_id(kOAuthClientId); |
| 80 notif_settings->set_disabled(true); | 80 notif_settings->set_disabled(true); |
| 81 | 81 |
| 82 SetRequiredExtensionValues(input_specifics->mutable_extension()); | 82 SetRequiredExtensionValues(input_specifics->mutable_extension()); |
| 83 | 83 |
| 84 SyncData sync_data = | 84 csync::SyncData sync_data = |
| 85 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); | 85 csync::SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); |
| 86 AppSyncData app_sync_data(sync_data); | 86 AppSyncData app_sync_data(sync_data); |
| 87 | 87 |
| 88 SyncData output_sync_data = app_sync_data.GetSyncData(); | 88 csync::SyncData output_sync_data = app_sync_data.GetSyncData(); |
| 89 EXPECT_TRUE(sync_data.GetSpecifics().has_app()); | 89 EXPECT_TRUE(sync_data.GetSpecifics().has_app()); |
| 90 const sync_pb::AppSpecifics& output_specifics = | 90 const sync_pb::AppSpecifics& output_specifics = |
| 91 output_sync_data.GetSpecifics().app(); | 91 output_sync_data.GetSpecifics().app(); |
| 92 EXPECT_EQ(input_specifics->SerializeAsString(), | 92 EXPECT_EQ(input_specifics->SerializeAsString(), |
| 93 output_specifics.SerializeAsString()); | 93 output_specifics.SerializeAsString()); |
| 94 } | 94 } |
| 95 | 95 |
| 96 // Ensures that invalid StringOrdinals don't break ExtensionSyncData. | 96 // Ensures that invalid StringOrdinals don't break ExtensionSyncData. |
| 97 TEST_F(AppSyncDataTest, ExtensionSyncDataInvalidOrdinal) { | 97 TEST_F(AppSyncDataTest, ExtensionSyncDataInvalidOrdinal) { |
| 98 sync_pb::EntitySpecifics entity; | 98 sync_pb::EntitySpecifics entity; |
| 99 sync_pb::AppSpecifics* app_specifics = entity.mutable_app(); | 99 sync_pb::AppSpecifics* app_specifics = entity.mutable_app(); |
| 100 // Set the ordinals as invalid. | 100 // Set the ordinals as invalid. |
| 101 app_specifics->set_app_launch_ordinal(""); | 101 app_specifics->set_app_launch_ordinal(""); |
| 102 app_specifics->set_page_ordinal(""); | 102 app_specifics->set_page_ordinal(""); |
| 103 | 103 |
| 104 sync_pb::AppNotificationSettings* notif_settings = | 104 sync_pb::AppNotificationSettings* notif_settings = |
| 105 app_specifics->mutable_notification_settings(); | 105 app_specifics->mutable_notification_settings(); |
| 106 notif_settings->set_oauth_client_id(kOAuthClientId); | 106 notif_settings->set_oauth_client_id(kOAuthClientId); |
| 107 notif_settings->set_disabled(true); | 107 notif_settings->set_disabled(true); |
| 108 | 108 |
| 109 SetRequiredExtensionValues(app_specifics->mutable_extension()); | 109 SetRequiredExtensionValues(app_specifics->mutable_extension()); |
| 110 | 110 |
| 111 SyncData sync_data = | 111 csync::SyncData sync_data = |
| 112 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); | 112 csync::SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); |
| 113 | 113 |
| 114 // There should be no issue loading the sync data. | 114 // There should be no issue loading the sync data. |
| 115 AppSyncData app_sync_data(sync_data); | 115 AppSyncData app_sync_data(sync_data); |
| 116 app_sync_data.GetSyncData(); | 116 app_sync_data.GetSyncData(); |
| 117 } | 117 } |
| 118 | 118 |
| 119 } // namespace extensions | 119 } // namespace extensions |
| OLD | NEW |