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 "chrome/browser/extensions/extension_sync_data.h" | 5 #include "chrome/browser/extensions/extension_sync_data.h" |
6 | 6 |
7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
8 #include "base/version.h" | 8 #include "base/version.h" |
9 #include "chrome/browser/sync/protocol/app_specifics.pb.h" | 9 #include "chrome/browser/sync/protocol/app_specifics.pb.h" |
10 #include "chrome/browser/sync/protocol/extension_specifics.pb.h" | 10 #include "chrome/browser/sync/protocol/extension_specifics.pb.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 const char kValidVersion[] = "0.0.0.0"; | 23 const char kValidVersion[] = "0.0.0.0"; |
24 const char kVersion1[] = "1.0.0.1"; | 24 const char kVersion1[] = "1.0.0.1"; |
25 const char kVersion2[] = "1.0.1.0"; | 25 const char kVersion2[] = "1.0.1.0"; |
26 const char kVersion3[] = "1.1.0.0"; | 26 const char kVersion3[] = "1.1.0.0"; |
27 const char kValidUpdateUrl1[] = | 27 const char kValidUpdateUrl1[] = |
28 "http://clients2.google.com/service/update2/crx"; | 28 "http://clients2.google.com/service/update2/crx"; |
29 const char kValidUpdateUrl2[] = | 29 const char kValidUpdateUrl2[] = |
30 "https://clients2.google.com/service/update2/crx"; | 30 "https://clients2.google.com/service/update2/crx"; |
31 const char kName[] = "MyExtension"; | 31 const char kName[] = "MyExtension"; |
32 const char kName2[] = "MyExtension2"; | 32 const char kName2[] = "MyExtension2"; |
| 33 const char kOAuthClientId[] = "1234abcd"; |
33 | 34 |
34 class ExtensionSyncDataTest : public testing::Test { | 35 class ExtensionSyncDataTest : public testing::Test { |
35 }; | 36 }; |
36 | 37 |
37 TEST_F(ExtensionSyncDataTest, SyncDataToExtensionSyncDataForExtension) { | 38 TEST_F(ExtensionSyncDataTest, SyncDataToExtensionSyncDataForExtension) { |
38 sync_pb::EntitySpecifics entity; | 39 sync_pb::EntitySpecifics entity; |
39 sync_pb::ExtensionSpecifics* extension_specifics = | 40 sync_pb::ExtensionSpecifics* extension_specifics = |
40 entity.MutableExtension(sync_pb::extension); | 41 entity.MutableExtension(sync_pb::extension); |
41 extension_specifics->set_id(kValidId); | 42 extension_specifics->set_id(kValidId); |
42 extension_specifics->set_update_url(kValidUpdateUrl2); | 43 extension_specifics->set_update_url(kValidUpdateUrl2); |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 sync_pb::ExtensionSpecifics* extension_specifics = | 95 sync_pb::ExtensionSpecifics* extension_specifics = |
95 app_specifics->mutable_extension(); | 96 app_specifics->mutable_extension(); |
96 extension_specifics->set_id(kValidId); | 97 extension_specifics->set_id(kValidId); |
97 extension_specifics->set_update_url(kValidUpdateUrl2); | 98 extension_specifics->set_update_url(kValidUpdateUrl2); |
98 extension_specifics->set_enabled(false); | 99 extension_specifics->set_enabled(false); |
99 extension_specifics->set_incognito_enabled(true); | 100 extension_specifics->set_incognito_enabled(true); |
100 extension_specifics->set_version(kVersion1); | 101 extension_specifics->set_version(kVersion1); |
101 extension_specifics->set_name(kName); | 102 extension_specifics->set_name(kName); |
102 sync_pb::AppNotificationSettings* notif_settings = | 103 sync_pb::AppNotificationSettings* notif_settings = |
103 app_specifics->mutable_notification_settings(); | 104 app_specifics->mutable_notification_settings(); |
104 notif_settings->set_initial_setup_done(true); | 105 notif_settings->set_oauth_client_id(kOAuthClientId); |
105 notif_settings->set_disabled(true); | 106 notif_settings->set_disabled(true); |
106 SyncData sync_data = | 107 SyncData sync_data = |
107 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); | 108 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); |
108 | 109 |
109 ExtensionSyncData extension_sync_data(sync_data); | 110 ExtensionSyncData extension_sync_data(sync_data); |
110 EXPECT_EQ(extension_specifics->id(), extension_sync_data.id()); | 111 EXPECT_EQ(extension_specifics->id(), extension_sync_data.id()); |
111 EXPECT_EQ(extension_specifics->version(), | 112 EXPECT_EQ(extension_specifics->version(), |
112 extension_sync_data.version().GetString()); | 113 extension_sync_data.version().GetString()); |
113 EXPECT_EQ(extension_specifics->update_url(), | 114 EXPECT_EQ(extension_specifics->update_url(), |
114 extension_sync_data.update_url().spec()); | 115 extension_sync_data.update_url().spec()); |
115 EXPECT_EQ(extension_specifics->enabled(), extension_sync_data.enabled()); | 116 EXPECT_EQ(extension_specifics->enabled(), extension_sync_data.enabled()); |
116 EXPECT_EQ(extension_specifics->incognito_enabled(), | 117 EXPECT_EQ(extension_specifics->incognito_enabled(), |
117 extension_sync_data.incognito_enabled()); | 118 extension_sync_data.incognito_enabled()); |
118 EXPECT_EQ(extension_specifics->name(), extension_sync_data.name()); | 119 EXPECT_EQ(extension_specifics->name(), extension_sync_data.name()); |
119 EXPECT_FALSE(extension_sync_data.uninstalled()); | 120 EXPECT_FALSE(extension_sync_data.uninstalled()); |
120 EXPECT_EQ(notif_settings->initial_setup_done(), | 121 EXPECT_EQ(notif_settings->oauth_client_id(), |
121 extension_sync_data.notifications_initial_setup_done()); | 122 extension_sync_data.notifications_client_id()); |
122 EXPECT_EQ(notif_settings->disabled(), | 123 EXPECT_EQ(notif_settings->disabled(), |
123 extension_sync_data.notifications_disabled()); | 124 extension_sync_data.notifications_disabled()); |
124 } | 125 } |
125 | 126 |
126 TEST_F(ExtensionSyncDataTest, ExtensionSyncDataToSyncDataForApp) { | 127 TEST_F(ExtensionSyncDataTest, ExtensionSyncDataToSyncDataForApp) { |
127 sync_pb::EntitySpecifics entity; | 128 sync_pb::EntitySpecifics entity; |
128 sync_pb::AppSpecifics* input_specifics = entity.MutableExtension( | 129 sync_pb::AppSpecifics* input_specifics = entity.MutableExtension( |
129 sync_pb::app); | 130 sync_pb::app); |
130 sync_pb::ExtensionSpecifics* input_extension = | 131 sync_pb::ExtensionSpecifics* input_extension = |
131 input_specifics->mutable_extension(); | 132 input_specifics->mutable_extension(); |
132 input_extension->set_id(kValidId); | 133 input_extension->set_id(kValidId); |
133 input_extension->set_update_url(kValidUpdateUrl2); | 134 input_extension->set_update_url(kValidUpdateUrl2); |
134 input_extension->set_enabled(true); | 135 input_extension->set_enabled(true); |
135 input_extension->set_incognito_enabled(false); | 136 input_extension->set_incognito_enabled(false); |
136 input_extension->set_version(kVersion1); | 137 input_extension->set_version(kVersion1); |
137 input_extension->set_name(kName); | 138 input_extension->set_name(kName); |
138 sync_pb::AppNotificationSettings* notif_settings = | 139 sync_pb::AppNotificationSettings* notif_settings = |
139 input_specifics->mutable_notification_settings(); | 140 input_specifics->mutable_notification_settings(); |
140 notif_settings->set_initial_setup_done(true); | 141 notif_settings->set_oauth_client_id(kOAuthClientId); |
141 notif_settings->set_disabled(true); | 142 notif_settings->set_disabled(true); |
142 SyncData sync_data = | 143 SyncData sync_data = |
143 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); | 144 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); |
144 ExtensionSyncData extension_sync_data(sync_data); | 145 ExtensionSyncData extension_sync_data(sync_data); |
145 | 146 |
146 SyncData output_sync_data = extension_sync_data.GetSyncData(); | 147 SyncData output_sync_data = extension_sync_data.GetSyncData(); |
147 EXPECT_TRUE(sync_data.GetSpecifics().HasExtension(sync_pb::app)); | 148 EXPECT_TRUE(sync_data.GetSpecifics().HasExtension(sync_pb::app)); |
148 const sync_pb::AppSpecifics& output_specifics = | 149 const sync_pb::AppSpecifics& output_specifics = |
149 output_sync_data.GetSpecifics().GetExtension(sync_pb::app); | 150 output_sync_data.GetSpecifics().GetExtension(sync_pb::app); |
150 EXPECT_EQ(input_specifics->SerializeAsString(), | 151 EXPECT_EQ(input_specifics->SerializeAsString(), |
151 output_specifics.SerializeAsString()); | 152 output_specifics.SerializeAsString()); |
152 } | 153 } |
153 | 154 |
154 } // namespace | 155 } // namespace |
OLD | NEW |