Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(49)

Side by Side Diff: chrome/browser/extensions/extension_sync_data_unittest.cc

Issue 8399022: Add a couple of notifications related settings to app/extensions sync: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 16 matching lines...) Expand all
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 33
34 class ExtensionSyncDataTest : public testing::Test { 34 class ExtensionSyncDataTest : public testing::Test {
35 }; 35 };
36 36
37 TEST_F(ExtensionSyncDataTest, SyncDataToExtensionSyncData) { 37 TEST_F(ExtensionSyncDataTest, SyncDataToExtensionSyncDataForExtension) {
38 sync_pb::EntitySpecifics entity; 38 sync_pb::EntitySpecifics entity;
39 sync_pb::ExtensionSpecifics* extension_specifics = 39 sync_pb::ExtensionSpecifics* extension_specifics =
40 entity.MutableExtension(sync_pb::extension); 40 entity.MutableExtension(sync_pb::extension);
41 extension_specifics->set_id(kValidId); 41 extension_specifics->set_id(kValidId);
42 extension_specifics->set_update_url(kValidUpdateUrl2); 42 extension_specifics->set_update_url(kValidUpdateUrl2);
43 extension_specifics->set_enabled(false); 43 extension_specifics->set_enabled(false);
44 extension_specifics->set_incognito_enabled(true); 44 extension_specifics->set_incognito_enabled(true);
45 extension_specifics->set_version(kVersion1); 45 extension_specifics->set_version(kVersion1);
46 extension_specifics->set_name(kName); 46 extension_specifics->set_name(kName);
47 SyncData sync_data = 47 SyncData sync_data =
48 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); 48 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity);
49 49
50 ExtensionSyncData extension_sync_data(sync_data); 50 ExtensionSyncData extension_sync_data(sync_data);
51 EXPECT_EQ(extension_specifics->id(), extension_sync_data.id()); 51 EXPECT_EQ(extension_specifics->id(), extension_sync_data.id());
52 EXPECT_EQ(extension_specifics->version(), 52 EXPECT_EQ(extension_specifics->version(),
53 extension_sync_data.version().GetString()); 53 extension_sync_data.version().GetString());
54 EXPECT_EQ(extension_specifics->update_url(), 54 EXPECT_EQ(extension_specifics->update_url(),
55 extension_sync_data.update_url().spec()); 55 extension_sync_data.update_url().spec());
56 EXPECT_EQ(extension_specifics->enabled(), extension_sync_data.enabled()); 56 EXPECT_EQ(extension_specifics->enabled(), extension_sync_data.enabled());
57 EXPECT_EQ(extension_specifics->incognito_enabled(), 57 EXPECT_EQ(extension_specifics->incognito_enabled(),
58 extension_sync_data.incognito_enabled()); 58 extension_sync_data.incognito_enabled());
59 EXPECT_EQ(extension_specifics->name(), extension_sync_data.name()); 59 EXPECT_EQ(extension_specifics->name(), extension_sync_data.name());
60 EXPECT_FALSE(extension_sync_data.uninstalled()); 60 EXPECT_FALSE(extension_sync_data.uninstalled());
61 } 61 }
62 62
63 TEST_F(ExtensionSyncDataTest, ExtensionSyncDataToSyncData) { 63 TEST_F(ExtensionSyncDataTest, ExtensionSyncDataToSyncDataForExtension) {
64 sync_pb::EntitySpecifics entity; 64 sync_pb::EntitySpecifics entity;
65 sync_pb::ExtensionSpecifics* input_extension = 65 sync_pb::ExtensionSpecifics* input_extension =
66 entity.MutableExtension(sync_pb::extension); 66 entity.MutableExtension(sync_pb::extension);
67 input_extension->set_id(kValidId); 67 input_extension->set_id(kValidId);
68 input_extension->set_update_url(kValidUpdateUrl2); 68 input_extension->set_update_url(kValidUpdateUrl2);
69 input_extension->set_enabled(true); 69 input_extension->set_enabled(true);
70 input_extension->set_incognito_enabled(false); 70 input_extension->set_incognito_enabled(false);
71 input_extension->set_version(kVersion1); 71 input_extension->set_version(kVersion1);
72 input_extension->set_name(kName); 72 input_extension->set_name(kName);
73 SyncData sync_data = 73 SyncData sync_data =
74 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity); 74 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity);
75 ExtensionSyncData extension_sync_data(sync_data); 75 ExtensionSyncData extension_sync_data(sync_data);
76 76
77 SyncData output_sync_data = extension_sync_data.GetSyncData(); 77 SyncData output_sync_data = extension_sync_data.GetSyncData();
78 const sync_pb::ExtensionSpecifics& output_specifics = 78 const sync_pb::ExtensionSpecifics& output_specifics =
79 output_sync_data.GetSpecifics().GetExtension(sync_pb::extension); 79 output_sync_data.GetSpecifics().GetExtension(sync_pb::extension);
80 EXPECT_EQ(extension_sync_data.id(), output_specifics.id()); 80 EXPECT_EQ(extension_sync_data.id(), output_specifics.id());
81 EXPECT_EQ(extension_sync_data.update_url().spec(), 81 EXPECT_EQ(extension_sync_data.update_url().spec(),
82 output_specifics.update_url()); 82 output_specifics.update_url());
83 EXPECT_EQ(extension_sync_data.enabled(), output_specifics.enabled()); 83 EXPECT_EQ(extension_sync_data.enabled(), output_specifics.enabled());
84 EXPECT_EQ(extension_sync_data.incognito_enabled(), 84 EXPECT_EQ(extension_sync_data.incognito_enabled(),
85 output_specifics.incognito_enabled()); 85 output_specifics.incognito_enabled());
86 EXPECT_EQ(extension_sync_data.version().GetString(), 86 EXPECT_EQ(extension_sync_data.version().GetString(),
87 output_specifics.version()); 87 output_specifics.version());
88 EXPECT_EQ(extension_sync_data.name(), output_specifics.name()); 88 EXPECT_EQ(extension_sync_data.name(), output_specifics.name());
89 } 89 }
90 90
91 TEST_F(ExtensionSyncDataTest, SyncDataToExtensionSyncDataForApp) {
92 sync_pb::EntitySpecifics entity;
93 sync_pb::AppSpecifics* app_specifics = entity.MutableExtension(sync_pb::app);
94 sync_pb::ExtensionSpecifics* extension_specifics =
95 app_specifics->mutable_extension();
96 extension_specifics->set_id(kValidId);
97 extension_specifics->set_update_url(kValidUpdateUrl2);
98 extension_specifics->set_enabled(false);
99 extension_specifics->set_incognito_enabled(true);
100 extension_specifics->set_version(kVersion1);
101 extension_specifics->set_name(kName);
102 sync_pb::AppNotificationSettings* notif_settings =
103 app_specifics->mutable_notification_settings();
104 notif_settings->set_initial_setup_done(true);
105 notif_settings->set_disabled(true);
106 SyncData sync_data =
107 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity);
108
109 ExtensionSyncData extension_sync_data(sync_data);
110 EXPECT_EQ(extension_specifics->id(), extension_sync_data.id());
111 EXPECT_EQ(extension_specifics->version(),
112 extension_sync_data.version().GetString());
113 EXPECT_EQ(extension_specifics->update_url(),
114 extension_sync_data.update_url().spec());
115 EXPECT_EQ(extension_specifics->enabled(), extension_sync_data.enabled());
116 EXPECT_EQ(extension_specifics->incognito_enabled(),
117 extension_sync_data.incognito_enabled());
118 EXPECT_EQ(extension_specifics->name(), extension_sync_data.name());
119 EXPECT_FALSE(extension_sync_data.uninstalled());
120 EXPECT_EQ(notif_settings->initial_setup_done(),
121 extension_sync_data.notifications_initial_setup_done());
122 EXPECT_EQ(notif_settings->disabled(),
123 extension_sync_data.notifications_disabled());
124 }
125
126 TEST_F(ExtensionSyncDataTest, ExtensionSyncDataToSyncDataForApp) {
127 sync_pb::EntitySpecifics entity;
128 sync_pb::AppSpecifics* input_specifics = entity.MutableExtension(
129 sync_pb::app);
130 sync_pb::ExtensionSpecifics* input_extension =
131 input_specifics->mutable_extension();
132 input_extension->set_id(kValidId);
133 input_extension->set_update_url(kValidUpdateUrl2);
134 input_extension->set_enabled(true);
135 input_extension->set_incognito_enabled(false);
136 input_extension->set_version(kVersion1);
137 input_extension->set_name(kName);
138 sync_pb::AppNotificationSettings* notif_settings =
139 input_specifics->mutable_notification_settings();
140 notif_settings->set_initial_setup_done(true);
141 notif_settings->set_disabled(true);
142 SyncData sync_data =
143 SyncData::CreateLocalData("sync_tag", "non_unique_title", entity);
144 ExtensionSyncData extension_sync_data(sync_data);
145
146 SyncData output_sync_data = extension_sync_data.GetSyncData();
147 EXPECT_TRUE(sync_data.GetSpecifics().HasExtension(sync_pb::app));
148 const sync_pb::AppSpecifics& output_specifics =
149 output_sync_data.GetSpecifics().GetExtension(sync_pb::app);
150 EXPECT_EQ(input_specifics->SerializeAsString(),
151 output_specifics.SerializeAsString());
152 }
153
91 } // namespace 154 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698