Chromium Code Reviews| 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 "base/file_util.h" | 5 #include "base/file_util.h" |
| 6 #include "base/platform_file.h" | 6 #include "base/platform_file.h" |
| 7 #include "base/path_service.h" | 7 #include "base/path_service.h" |
| 8 #include "base/scoped_temp_dir.h" | 8 #include "base/scoped_temp_dir.h" |
| 9 #include "base/stringprintf.h" | 9 #include "base/stringprintf.h" |
| 10 #include "chrome/browser/chromeos/gdata/gdata_file_system_proxy.h" | 10 #include "chrome/browser/chromeos/gdata/gdata_file_system_proxy.h" |
| 11 #include "chrome/browser/extensions/extension_apitest.h" | 11 #include "chrome/browser/extensions/extension_apitest.h" |
| 12 #include "chrome/browser/profiles/profile.h" | 12 #include "chrome/browser/profiles/profile.h" |
| 13 #include "chrome/browser/ui/browser.h" | 13 #include "chrome/browser/ui/browser.h" |
| 14 #include "chrome/common/chrome_switches.h" | |
| 14 #include "testing/gmock/include/gmock/gmock.h" | 15 #include "testing/gmock/include/gmock/gmock.h" |
| 15 #include "webkit/fileapi/file_system_context.h" | 16 #include "webkit/fileapi/file_system_context.h" |
| 16 #include "webkit/fileapi/file_system_mount_point_provider.h" | 17 #include "webkit/fileapi/file_system_mount_point_provider.h" |
| 17 #include "chrome/browser/chromeos/gdata/gdata_util.h" | 18 #include "chrome/browser/chromeos/gdata/gdata_util.h" |
| 18 #include "webkit/chromeos/fileapi/remote_file_system_proxy.h" | 19 #include "webkit/chromeos/fileapi/remote_file_system_proxy.h" |
| 19 | 20 |
| 20 using ::testing::_; | 21 using ::testing::_; |
| 21 using content::BrowserContext; | 22 using content::BrowserContext; |
| 22 | 23 |
| 23 // These should match the counterparts in remote.js. | 24 // These should match the counterparts in remote.js. |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 111 "Got unexpected error: File handler error: SECURITY_ERR"; | 112 "Got unexpected error: File handler error: SECURITY_ERR"; |
| 112 } | 113 } |
| 113 | 114 |
| 114 class FileSystemExtensionApiTest : public ExtensionApiTest { | 115 class FileSystemExtensionApiTest : public ExtensionApiTest { |
| 115 public: | 116 public: |
| 116 FileSystemExtensionApiTest() : test_mount_point_("/tmp") { | 117 FileSystemExtensionApiTest() : test_mount_point_("/tmp") { |
| 117 } | 118 } |
| 118 | 119 |
| 119 virtual ~FileSystemExtensionApiTest() {} | 120 virtual ~FileSystemExtensionApiTest() {} |
| 120 | 121 |
| 122 void SetUpCommandLine(CommandLine* command_line) { | |
|
tbarzic
2012/04/13 02:58:30
I messed up indent here..
| |
| 123 ExtensionApiTest::SetUpCommandLine(command_line); | |
| 124 command_line->AppendSwitch(switches::kEnableExperimentalExtensionApis); | |
| 125 } | |
| 126 | |
| 121 // Adds a local mount point at at mount point /tmp. | 127 // Adds a local mount point at at mount point /tmp. |
| 122 void AddTmpMountPoint() { | 128 void AddTmpMountPoint() { |
| 123 fileapi::ExternalFileSystemMountPointProvider* provider = | 129 fileapi::ExternalFileSystemMountPointProvider* provider = |
| 124 BrowserContext::GetFileSystemContext(browser()->profile())-> | 130 BrowserContext::GetFileSystemContext(browser()->profile())-> |
| 125 external_provider(); | 131 external_provider(); |
| 126 provider->AddLocalMountPoint(test_mount_point_); | 132 provider->AddLocalMountPoint(test_mount_point_); |
| 127 } | 133 } |
| 128 | 134 |
| 129 private: | 135 private: |
| 130 FilePath test_mount_point_; | 136 FilePath test_mount_point_; |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 184 ASSERT_TRUE(RunComponentExtensionTest("local_filesystem")) << message_; | 190 ASSERT_TRUE(RunComponentExtensionTest("local_filesystem")) << message_; |
| 185 } | 191 } |
| 186 | 192 |
| 187 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, FileBrowserTest) { | 193 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, FileBrowserTest) { |
| 188 AddTmpMountPoint(); | 194 AddTmpMountPoint(); |
| 189 ASSERT_TRUE(RunExtensionTest("filesystem_handler")) << message_; | 195 ASSERT_TRUE(RunExtensionTest("filesystem_handler")) << message_; |
| 190 ASSERT_TRUE(RunExtensionSubtest( | 196 ASSERT_TRUE(RunExtensionSubtest( |
| 191 "filebrowser_component", "read.html", kComponentFlags)) << message_; | 197 "filebrowser_component", "read.html", kComponentFlags)) << message_; |
| 192 } | 198 } |
| 193 | 199 |
| 200 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, FileBrowserTestLazy) { | |
| 201 AddTmpMountPoint(); | |
| 202 ASSERT_TRUE(RunExtensionTest("filesystem_handler_lazy_background")) | |
| 203 << message_; | |
| 204 ASSERT_TRUE(RunExtensionSubtest( | |
| 205 "filebrowser_component", "read.html", kComponentFlags)) << message_; | |
| 206 } | |
| 207 | |
| 194 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, FileBrowserTestWrite) { | 208 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, FileBrowserTestWrite) { |
| 195 AddTmpMountPoint(); | 209 AddTmpMountPoint(); |
| 196 ASSERT_TRUE(RunExtensionTest("filesystem_handler_write")) << message_; | 210 ASSERT_TRUE(RunExtensionTest("filesystem_handler_write")) << message_; |
| 197 ASSERT_TRUE(RunExtensionSubtest( | 211 ASSERT_TRUE(RunExtensionSubtest( |
| 198 "filebrowser_component", "write.html", kComponentFlags)) << message_; | 212 "filebrowser_component", "write.html", kComponentFlags)) << message_; |
| 199 } | 213 } |
| 200 | 214 |
| 201 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, | 215 IN_PROC_BROWSER_TEST_F(FileSystemExtensionApiTest, |
| 202 FileBrowserTestWriteReadOnly) { | 216 FileBrowserTestWriteReadOnly) { |
| 203 AddTmpMountPoint(); | 217 AddTmpMountPoint(); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 240 .WillOnce(MockCreateSnapshotFile( | 254 .WillOnce(MockCreateSnapshotFile( |
| 241 base::PLATFORM_FILE_OK, | 255 base::PLATFORM_FILE_OK, |
| 242 test_file_info_, | 256 test_file_info_, |
| 243 // Returns the path to the temporary file on the local drive. | 257 // Returns the path to the temporary file on the local drive. |
| 244 test_file_path_, | 258 test_file_path_, |
| 245 scoped_refptr<webkit_blob::ShareableFileReference>(NULL))); | 259 scoped_refptr<webkit_blob::ShareableFileReference>(NULL))); |
| 246 ASSERT_TRUE(RunExtensionSubtest( | 260 ASSERT_TRUE(RunExtensionSubtest( |
| 247 "filebrowser_component", "remote.html#" + GetPathOnMountPoint(""), | 261 "filebrowser_component", "remote.html#" + GetPathOnMountPoint(""), |
| 248 kComponentFlags)) << message_; | 262 kComponentFlags)) << message_; |
| 249 } | 263 } |
| OLD | NEW |