OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "webkit/chromeos/fileapi/cros_mount_point_provider.h" | 5 #include "webkit/browser/chromeos/fileapi/cros_mount_point_provider.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 | 8 |
9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
10 #include "chromeos/dbus/cros_disks_client.h" | 10 #include "chromeos/dbus/cros_disks_client.h" |
11 #include "googleurl/src/url_util.h" | 11 #include "googleurl/src/url_util.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 #include "webkit/browser/fileapi/external_mount_points.h" | 13 #include "webkit/browser/fileapi/external_mount_points.h" |
14 #include "webkit/browser/fileapi/file_permission_policy.h" | 14 #include "webkit/browser/fileapi/file_permission_policy.h" |
15 #include "webkit/browser/fileapi/file_system_url.h" | 15 #include "webkit/browser/fileapi/file_system_url.h" |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 system_mount_points.get()), | 165 system_mount_points.get()), |
166 kPermission)); | 166 kPermission)); |
167 EXPECT_EQ( | 167 EXPECT_EQ( |
168 fileapi::FILE_PERMISSION_ALWAYS_DENY, | 168 fileapi::FILE_PERMISSION_ALWAYS_DENY, |
169 provider.GetPermissionPolicy( | 169 provider.GetPermissionPolicy( |
170 CreateFileSystemURL(extension, "system/foo1", | 170 CreateFileSystemURL(extension, "system/foo1", |
171 system_mount_points.get()), | 171 system_mount_points.get()), |
172 kPermission)); | 172 kPermission)); |
173 | 173 |
174 // oem is restricted file system. | 174 // oem is restricted file system. |
175 provider.GrantFileAccessToExtension(extension, base::FilePath(FPL("oem/foo")))
; | 175 provider.GrantFileAccessToExtension( |
| 176 extension, base::FilePath(FPL("oem/foo"))); |
176 // The extension should not be able to access the file even if | 177 // The extension should not be able to access the file even if |
177 // GrantFileAccessToExtension was called. | 178 // GrantFileAccessToExtension was called. |
178 EXPECT_EQ( | 179 EXPECT_EQ( |
179 fileapi::FILE_PERMISSION_ALWAYS_DENY, | 180 fileapi::FILE_PERMISSION_ALWAYS_DENY, |
180 provider.GetPermissionPolicy( | 181 provider.GetPermissionPolicy( |
181 CreateFileSystemURL(extension, "oem/foo", mount_points.get()), | 182 CreateFileSystemURL(extension, "oem/foo", mount_points.get()), |
182 kPermission)); | 183 kPermission)); |
183 | 184 |
184 provider.GrantFullAccessToExtension(extension); | 185 provider.GrantFullAccessToExtension(extension); |
185 // The extension should be able to access restricted file system after it was | 186 // The extension should be able to access restricted file system after it was |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 mount_points->RegisterFileSystem("b", type, base::FilePath(FPL("/a/b")))); | 251 mount_points->RegisterFileSystem("b", type, base::FilePath(FPL("/a/b")))); |
251 ASSERT_TRUE( | 252 ASSERT_TRUE( |
252 mount_points->RegisterFileSystem("y", type, base::FilePath(FPL("/z/y")))); | 253 mount_points->RegisterFileSystem("y", type, base::FilePath(FPL("/z/y")))); |
253 ASSERT_TRUE( | 254 ASSERT_TRUE( |
254 mount_points->RegisterFileSystem("n", type, base::FilePath(FPL("/m/n")))); | 255 mount_points->RegisterFileSystem("n", type, base::FilePath(FPL("/m/n")))); |
255 | 256 |
256 // System mount points | 257 // System mount points |
257 ASSERT_TRUE(system_mount_points->RegisterFileSystem( | 258 ASSERT_TRUE(system_mount_points->RegisterFileSystem( |
258 "gb", type, base::FilePath(FPL("/a/b")))); | 259 "gb", type, base::FilePath(FPL("/a/b")))); |
259 ASSERT_TRUE( | 260 ASSERT_TRUE( |
260 system_mount_points->RegisterFileSystem("gz", type, base::FilePath(FPL("/z
")))); | 261 system_mount_points->RegisterFileSystem( |
| 262 "gz", type, base::FilePath(FPL("/z")))); |
261 ASSERT_TRUE(system_mount_points->RegisterFileSystem( | 263 ASSERT_TRUE(system_mount_points->RegisterFileSystem( |
262 "gp", type, base::FilePath(FPL("/m/n/o/p")))); | 264 "gp", type, base::FilePath(FPL("/m/n/o/p")))); |
263 | 265 |
264 struct TestCase { | 266 struct TestCase { |
265 const base::FilePath::CharType* const local_path; | 267 const base::FilePath::CharType* const local_path; |
266 bool success; | 268 bool success; |
267 const base::FilePath::CharType* const virtual_path; | 269 const base::FilePath::CharType* const virtual_path; |
268 }; | 270 }; |
269 | 271 |
270 const TestCase kTestCases[] = { | 272 const TestCase kTestCases[] = { |
(...skipping 22 matching lines...) Expand all Loading... |
293 if (!kTestCases[i].success) | 295 if (!kTestCases[i].success) |
294 continue; | 296 continue; |
295 | 297 |
296 base::FilePath expected_virtual_path(kTestCases[i].virtual_path); | 298 base::FilePath expected_virtual_path(kTestCases[i].virtual_path); |
297 EXPECT_EQ(expected_virtual_path, virtual_path) | 299 EXPECT_EQ(expected_virtual_path, virtual_path) |
298 << "Resolving " << kTestCases[i].local_path; | 300 << "Resolving " << kTestCases[i].local_path; |
299 } | 301 } |
300 } | 302 } |
301 | 303 |
302 } // namespace | 304 } // namespace |
OLD | NEW |