OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/files/file_path.h" | 5 #include "base/files/file_path.h" |
6 #include "chrome/common/extensions/extension.h" | 6 #include "chrome/common/extensions/extension.h" |
7 #include "chrome/common/extensions/extension_manifest_constants.h" | 7 #include "chrome/common/extensions/extension_manifest_constants.h" |
8 #include "chrome/common/extensions/manifest.h" | 8 #include "chrome/common/extensions/manifest.h" |
9 #include "chrome/common/extensions/sync_helper.h" | 9 #include "chrome/common/extensions/sync_helper.h" |
10 #include "googleurl/src/gurl.h" | 10 #include "googleurl/src/gurl.h" |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 const char ExtensionSyncTypeTest::kValidUpdateUrl1[] = | 71 const char ExtensionSyncTypeTest::kValidUpdateUrl1[] = |
72 "http://clients2.google.com/service/update2/crx"; | 72 "http://clients2.google.com/service/update2/crx"; |
73 const char ExtensionSyncTypeTest::kValidUpdateUrl2[] = | 73 const char ExtensionSyncTypeTest::kValidUpdateUrl2[] = |
74 "https://clients2.google.com/service/update2/crx"; | 74 "https://clients2.google.com/service/update2/crx"; |
75 | 75 |
76 TEST_F(ExtensionSyncTypeTest, NormalExtensionNoUpdateUrl) { | 76 TEST_F(ExtensionSyncTypeTest, NormalExtensionNoUpdateUrl) { |
77 scoped_refptr<Extension> extension( | 77 scoped_refptr<Extension> extension( |
78 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 78 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
79 Manifest::INTERNAL, 0, base::FilePath(), | 79 Manifest::INTERNAL, 0, base::FilePath(), |
80 Extension::NO_FLAGS)); | 80 Extension::NO_FLAGS)); |
81 EXPECT_TRUE(sync_helper::IsSyncableExtension(extension)); | 81 EXPECT_TRUE(sync_helper::IsSyncableExtension(extension.get())); |
82 } | 82 } |
83 | 83 |
84 TEST_F(ExtensionSyncTypeTest, UserScriptValidUpdateUrl) { | 84 TEST_F(ExtensionSyncTypeTest, UserScriptValidUpdateUrl) { |
85 scoped_refptr<Extension> extension( | 85 scoped_refptr<Extension> extension( |
86 MakeSyncTestExtension(USER_SCRIPT, GURL(kValidUpdateUrl1), GURL(), | 86 MakeSyncTestExtension(USER_SCRIPT, GURL(kValidUpdateUrl1), GURL(), |
87 Manifest::INTERNAL, 0, base::FilePath(), | 87 Manifest::INTERNAL, 0, base::FilePath(), |
88 Extension::NO_FLAGS)); | 88 Extension::NO_FLAGS)); |
89 EXPECT_TRUE(sync_helper::IsSyncableExtension(extension)); | 89 EXPECT_TRUE(sync_helper::IsSyncableExtension(extension.get())); |
90 } | 90 } |
91 | 91 |
92 TEST_F(ExtensionSyncTypeTest, UserScriptNoUpdateUrl) { | 92 TEST_F(ExtensionSyncTypeTest, UserScriptNoUpdateUrl) { |
93 scoped_refptr<Extension> extension( | 93 scoped_refptr<Extension> extension( |
94 MakeSyncTestExtension(USER_SCRIPT, GURL(), GURL(), | 94 MakeSyncTestExtension(USER_SCRIPT, GURL(), GURL(), |
95 Manifest::INTERNAL, 0, base::FilePath(), | 95 Manifest::INTERNAL, 0, base::FilePath(), |
96 Extension::NO_FLAGS)); | 96 Extension::NO_FLAGS)); |
97 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 97 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
98 } | 98 } |
99 | 99 |
100 TEST_F(ExtensionSyncTypeTest, ThemeNoUpdateUrl) { | 100 TEST_F(ExtensionSyncTypeTest, ThemeNoUpdateUrl) { |
101 scoped_refptr<Extension> extension( | 101 scoped_refptr<Extension> extension( |
102 MakeSyncTestExtension(THEME, GURL(), GURL(), | 102 MakeSyncTestExtension(THEME, GURL(), GURL(), |
103 Manifest::INTERNAL, 0, base::FilePath(), | 103 Manifest::INTERNAL, 0, base::FilePath(), |
104 Extension::NO_FLAGS)); | 104 Extension::NO_FLAGS)); |
105 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 105 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
106 EXPECT_FALSE(sync_helper::IsSyncableApp(extension)); | 106 EXPECT_FALSE(sync_helper::IsSyncableApp(extension.get())); |
107 } | 107 } |
108 | 108 |
109 TEST_F(ExtensionSyncTypeTest, AppWithLaunchUrl) { | 109 TEST_F(ExtensionSyncTypeTest, AppWithLaunchUrl) { |
110 scoped_refptr<Extension> extension( | 110 scoped_refptr<Extension> extension( |
111 MakeSyncTestExtension(EXTENSION, GURL(), GURL("http://www.google.com"), | 111 MakeSyncTestExtension(EXTENSION, GURL(), GURL("http://www.google.com"), |
112 Manifest::INTERNAL, 0, base::FilePath(), | 112 Manifest::INTERNAL, 0, base::FilePath(), |
113 Extension::NO_FLAGS)); | 113 Extension::NO_FLAGS)); |
114 EXPECT_TRUE(sync_helper::IsSyncableApp(extension)); | 114 EXPECT_TRUE(sync_helper::IsSyncableApp(extension.get())); |
115 } | 115 } |
116 | 116 |
117 TEST_F(ExtensionSyncTypeTest, ExtensionExternal) { | 117 TEST_F(ExtensionSyncTypeTest, ExtensionExternal) { |
118 scoped_refptr<Extension> extension( | 118 scoped_refptr<Extension> extension( |
119 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 119 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
120 Manifest::EXTERNAL_PREF, 0, base::FilePath(), | 120 Manifest::EXTERNAL_PREF, 0, base::FilePath(), |
121 Extension::NO_FLAGS)); | 121 Extension::NO_FLAGS)); |
122 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 122 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
123 } | 123 } |
124 | 124 |
125 TEST_F(ExtensionSyncTypeTest, UserScriptThirdPartyUpdateUrl) { | 125 TEST_F(ExtensionSyncTypeTest, UserScriptThirdPartyUpdateUrl) { |
126 scoped_refptr<Extension> extension( | 126 scoped_refptr<Extension> extension( |
127 MakeSyncTestExtension( | 127 MakeSyncTestExtension( |
128 USER_SCRIPT, GURL("http://third-party.update_url.com"), GURL(), | 128 USER_SCRIPT, GURL("http://third-party.update_url.com"), GURL(), |
129 Manifest::INTERNAL, 0, base::FilePath(), Extension::NO_FLAGS)); | 129 Manifest::INTERNAL, 0, base::FilePath(), Extension::NO_FLAGS)); |
130 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 130 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
131 } | 131 } |
132 | 132 |
133 TEST_F(ExtensionSyncTypeTest, OnlyDisplayAppsInLauncher) { | 133 TEST_F(ExtensionSyncTypeTest, OnlyDisplayAppsInLauncher) { |
134 scoped_refptr<Extension> extension( | 134 scoped_refptr<Extension> extension( |
135 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 135 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
136 Manifest::INTERNAL, 0, base::FilePath(), | 136 Manifest::INTERNAL, 0, base::FilePath(), |
137 Extension::NO_FLAGS)); | 137 Extension::NO_FLAGS)); |
138 | 138 |
139 EXPECT_FALSE(extension->ShouldDisplayInAppLauncher()); | 139 EXPECT_FALSE(extension->ShouldDisplayInAppLauncher()); |
140 EXPECT_FALSE(extension->ShouldDisplayInNewTabPage()); | 140 EXPECT_FALSE(extension->ShouldDisplayInNewTabPage()); |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 app = Extension::Create( | 194 app = Extension::Create( |
195 base::FilePath(), Manifest::COMPONENT, manifest, 0, &error); | 195 base::FilePath(), Manifest::COMPONENT, manifest, 0, &error); |
196 EXPECT_EQ(error, std::string(errors::kInvalidDisplayInNewTabPage)); | 196 EXPECT_EQ(error, std::string(errors::kInvalidDisplayInNewTabPage)); |
197 } | 197 } |
198 | 198 |
199 TEST_F(ExtensionSyncTypeTest, OnlySyncInternal) { | 199 TEST_F(ExtensionSyncTypeTest, OnlySyncInternal) { |
200 scoped_refptr<Extension> extension_internal( | 200 scoped_refptr<Extension> extension_internal( |
201 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 201 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
202 Manifest::INTERNAL, 0, base::FilePath(), | 202 Manifest::INTERNAL, 0, base::FilePath(), |
203 Extension::NO_FLAGS)); | 203 Extension::NO_FLAGS)); |
204 EXPECT_TRUE(sync_helper::IsSyncable(extension_internal)); | 204 EXPECT_TRUE(sync_helper::IsSyncable(extension_internal.get())); |
205 | 205 |
206 scoped_refptr<Extension> extension_noninternal( | 206 scoped_refptr<Extension> extension_noninternal( |
207 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 207 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
208 Manifest::COMPONENT, 0, base::FilePath(), | 208 Manifest::COMPONENT, 0, base::FilePath(), |
209 Extension::NO_FLAGS)); | 209 Extension::NO_FLAGS)); |
210 EXPECT_FALSE(sync_helper::IsSyncable(extension_noninternal)); | 210 EXPECT_FALSE(sync_helper::IsSyncable(extension_noninternal.get())); |
211 } | 211 } |
212 | 212 |
213 TEST_F(ExtensionSyncTypeTest, DontSyncDefault) { | 213 TEST_F(ExtensionSyncTypeTest, DontSyncDefault) { |
214 scoped_refptr<Extension> extension_default( | 214 scoped_refptr<Extension> extension_default( |
215 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 215 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
216 Manifest::INTERNAL, 0, base::FilePath(), | 216 Manifest::INTERNAL, 0, base::FilePath(), |
217 Extension::WAS_INSTALLED_BY_DEFAULT)); | 217 Extension::WAS_INSTALLED_BY_DEFAULT)); |
218 EXPECT_FALSE(sync_helper::IsSyncable(extension_default)); | 218 EXPECT_FALSE(sync_helper::IsSyncable(extension_default.get())); |
219 } | 219 } |
220 | 220 |
221 // These last 2 tests don't make sense on Chrome OS, where extension plugins | 221 // These last 2 tests don't make sense on Chrome OS, where extension plugins |
222 // are not allowed. | 222 // are not allowed. |
223 #if !defined(OS_CHROMEOS) | 223 #if !defined(OS_CHROMEOS) |
224 TEST_F(ExtensionSyncTypeTest, ExtensionWithPlugin) { | 224 TEST_F(ExtensionSyncTypeTest, ExtensionWithPlugin) { |
225 scoped_refptr<Extension> extension( | 225 scoped_refptr<Extension> extension( |
226 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 226 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
227 Manifest::INTERNAL, 1, base::FilePath(), | 227 Manifest::INTERNAL, 1, base::FilePath(), |
228 Extension::NO_FLAGS)); | 228 Extension::NO_FLAGS)); |
229 if (extension.get()) | 229 if (extension.get()) |
230 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 230 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
231 } | 231 } |
232 | 232 |
233 TEST_F(ExtensionSyncTypeTest, ExtensionWithTwoPlugins) { | 233 TEST_F(ExtensionSyncTypeTest, ExtensionWithTwoPlugins) { |
234 scoped_refptr<Extension> extension( | 234 scoped_refptr<Extension> extension( |
235 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 235 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
236 Manifest::INTERNAL, 2, base::FilePath(), | 236 Manifest::INTERNAL, 2, base::FilePath(), |
237 Extension::NO_FLAGS)); | 237 Extension::NO_FLAGS)); |
238 if (extension.get()) | 238 if (extension.get()) |
239 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension)); | 239 EXPECT_FALSE(sync_helper::IsSyncableExtension(extension.get())); |
240 } | 240 } |
241 #endif // !defined(OS_CHROMEOS) | 241 #endif // !defined(OS_CHROMEOS) |
242 | 242 |
243 } // namespace extensions | 243 } // namespace extensions |
OLD | NEW |