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/common/extensions/extension.h" | 5 #include "chrome/common/extensions/extension.h" |
6 | 6 |
7 #include "base/format_macros.h" | 7 #include "base/format_macros.h" |
8 #include "base/file_path.h" | 8 #include "base/file_path.h" |
9 #include "base/file_util.h" | 9 #include "base/file_util.h" |
10 #include "base/json/json_file_value_serializer.h" | 10 #include "base/json/json_file_value_serializer.h" |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 "empty.json"); | 169 "empty.json"); |
170 EXPECT_TRUE(extension.get()); | 170 EXPECT_TRUE(extension.get()); |
171 | 171 |
172 EXPECT_EQ(extension->url().spec() + "bar/baz.js", | 172 EXPECT_EQ(extension->url().spec() + "bar/baz.js", |
173 Extension::GetResourceURL(extension->url(), "bar/baz.js").spec()); | 173 Extension::GetResourceURL(extension->url(), "bar/baz.js").spec()); |
174 EXPECT_EQ(extension->url().spec() + "baz.js", | 174 EXPECT_EQ(extension->url().spec() + "baz.js", |
175 Extension::GetResourceURL(extension->url(), | 175 Extension::GetResourceURL(extension->url(), |
176 "bar/../baz.js").spec()); | 176 "bar/../baz.js").spec()); |
177 EXPECT_EQ(extension->url().spec() + "baz.js", | 177 EXPECT_EQ(extension->url().spec() + "baz.js", |
178 Extension::GetResourceURL(extension->url(), "../baz.js").spec()); | 178 Extension::GetResourceURL(extension->url(), "../baz.js").spec()); |
| 179 |
| 180 // Test that absolute-looking paths ("/"-prefixed) are pasted correctly. |
| 181 EXPECT_EQ(extension->url().spec() + "test.html", |
| 182 extension->GetResourceURL("/test.html").spec()); |
179 } | 183 } |
180 | 184 |
181 TEST(ExtensionTest, GetAbsolutePathNoError) { | 185 TEST(ExtensionTest, GetAbsolutePathNoError) { |
182 scoped_refptr<Extension> extension = LoadManifestStrict("absolute_path", | 186 scoped_refptr<Extension> extension = LoadManifestStrict("absolute_path", |
183 "absolute.json"); | 187 "absolute.json"); |
184 EXPECT_TRUE(extension.get()); | 188 EXPECT_TRUE(extension.get()); |
185 std::string err; | 189 std::string err; |
186 EXPECT_TRUE(extension_file_util::ValidateExtension(extension.get(), &err)); | 190 EXPECT_TRUE(extension_file_util::ValidateExtension(extension.get(), &err)); |
187 | 191 |
188 EXPECT_EQ(extension->path().AppendASCII("test.html").value(), | 192 EXPECT_EQ(extension->path().AppendASCII("test.html").value(), |
(...skipping 770 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
959 } | 963 } |
960 | 964 |
961 TEST(ExtensionTest, GetSyncTypeExtensionWithTwoPlugins) { | 965 TEST(ExtensionTest, GetSyncTypeExtensionWithTwoPlugins) { |
962 scoped_refptr<Extension> extension( | 966 scoped_refptr<Extension> extension( |
963 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), | 967 MakeSyncTestExtension(EXTENSION, GURL(), GURL(), |
964 Extension::INTERNAL, 2, FilePath())); | 968 Extension::INTERNAL, 2, FilePath())); |
965 if (extension) | 969 if (extension) |
966 EXPECT_EQ(extension->GetSyncType(), Extension::SYNC_TYPE_NONE); | 970 EXPECT_EQ(extension->GetSyncType(), Extension::SYNC_TYPE_NONE); |
967 } | 971 } |
968 #endif // !defined(OS_CHROMEOS) | 972 #endif // !defined(OS_CHROMEOS) |
OLD | NEW |