Index: chrome/browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc |
diff --git a/chrome/browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc b/chrome/browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc |
index d0b4541e4916fc44fc962d5f7c96d87366963cda..3f23e0ee90a55d5f910795b8a7e4f44ec162dbb9 100644 |
--- a/chrome/browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc |
+++ b/chrome/browser/chromeos/extensions/file_manager/file_manager_private_apitest.cc |
@@ -15,6 +15,8 @@ |
#include "chromeos/disks/mock_disk_mount_manager.h" |
#include "extensions/common/extension.h" |
#include "extensions/common/install_warning.h" |
+#include "google_apis/drive/test_util.h" |
+#include "storage/browser/fileapi/external_mount_points.h" |
using ::testing::_; |
using ::testing::ReturnRef; |
@@ -128,6 +130,29 @@ void DispatchDirectoryChangeEventImpl( |
void AddFileWatchCallback(bool success) {} |
+bool InitializeLocalFileSystem(std::string mount_point_name, |
+ base::ScopedTempDir *temp_dir, |
mtomasz
2015/01/09 05:11:28
nit: Pointer asterisk glue to the type name, not v
Ben Kwa
2015/01/09 06:24:18
Done.
|
+ base::FilePath* mount_point_dir) { |
+ const char kTestFileContent[] = "The five boxing wizards jumped quickly"; |
+ if (!temp_dir->CreateUniqueTempDir()) |
+ return false; |
+ |
+ *mount_point_dir = temp_dir->path().AppendASCII(mount_point_name); |
+ // Create the mount point. |
+ if (!base::CreateDirectory(*mount_point_dir)) |
+ return false; |
+ |
+ const base::FilePath test_dir = mount_point_dir->AppendASCII("test_dir"); |
+ if (!base::CreateDirectory(test_dir)) |
+ return false; |
+ |
+ const base::FilePath test_file = test_dir.AppendASCII("test_file.txt"); |
+ if (!google_apis::test_util::WriteStringToFile(test_file, kTestFileContent)) |
+ return false; |
+ |
+ return true; |
+} |
+ |
} // namespace |
class FileManagerPrivateApiTest : public ExtensionApiTest { |
@@ -384,3 +409,26 @@ IN_PROC_BROWSER_TEST_F(FileManagerPrivateApiTest, OnFileChanged) { |
// message loop of BrowserThread::FILE. Wait until they are done. |
content::RunAllPendingInMessageLoop(content::BrowserThread::FILE); |
} |
+ |
+IN_PROC_BROWSER_TEST_F(FileManagerPrivateApiTest, ContentChecksum) { |
+ base::ScopedTempDir temp_dir; |
+ base::FilePath mount_point_dir; |
+ const char kLocalMountPointName[] = "local"; |
+ |
+ ASSERT_TRUE(InitializeLocalFileSystem( |
+ kLocalMountPointName, &temp_dir, &mount_point_dir)) |
+ << "Failed to initialize test file system"; |
+ |
+ EXPECT_TRUE(content::BrowserContext::GetMountPoints(browser()->profile()) |
+ ->RegisterFileSystem(kLocalMountPointName, |
+ storage::kFileSystemTypeNativeLocal, |
+ storage::FileSystemMountOption(), |
+ mount_point_dir)); |
+ file_manager::VolumeManager::Get( |
+ browser()->profile())->AddVolumeInfoForTesting( |
+ mount_point_dir, |
+ file_manager::VOLUME_TYPE_TESTING, |
+ chromeos::DEVICE_TYPE_UNKNOWN); |
+ |
+ ASSERT_TRUE(RunComponentExtensionTest("file_browser/content_checksum_test")); |
+} |