X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fchrome%2Fbrowser%2Fchromeos%2Ffile_manager%2Fpath_util_unittest.cc;h=c3bfbed071c256d0110063e32ed7844402fc2dcc;hb=ff3e2503a20db9193d323c1d19c38c68004dec4a;hp=6d94c9560f1928a01cf2b4ce4ca0694a3fb980c4;hpb=7338fba38ba696536d1cc9d389afd716a6ab2fe6;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/chrome/browser/chromeos/file_manager/path_util_unittest.cc b/src/chrome/browser/chromeos/file_manager/path_util_unittest.cc index 6d94c95..c3bfbed 100644 --- a/src/chrome/browser/chromeos/file_manager/path_util_unittest.cc +++ b/src/chrome/browser/chromeos/file_manager/path_util_unittest.cc @@ -5,13 +5,36 @@ #include "chrome/browser/chromeos/file_manager/path_util.h" #include "base/files/file_path.h" +#include "chrome/browser/chromeos/drive/file_system_util.h" +#include "chrome/common/chrome_constants.h" +#include "chrome/test/base/testing_browser_process.h" #include "chrome/test/base/testing_profile.h" +#include "chrome/test/base/testing_profile_manager.h" #include "testing/gtest/include/gtest/gtest.h" namespace file_manager { namespace util { namespace { +class ProfileRelatedTest : public testing::Test { + protected: + ProfileRelatedTest() + : testing_profile_manager_(TestingBrowserProcess::GetGlobal()) { + } + + virtual void SetUp() OVERRIDE { + ASSERT_TRUE(testing_profile_manager_.SetUp()); + } + + Profile* CreateProfileWithName(const std::string& name) { + return testing_profile_manager_.CreateTestingProfile( + chrome::kProfileDirPrefix + name); + } + + private: + TestingProfileManager testing_profile_manager_; +}; + TEST(FileManagerPathUtilTest, MultiProfileDownloadsFolderMigration) { TestingProfile profile; @@ -46,6 +69,39 @@ TEST(FileManagerPathUtilTest, MultiProfileDownloadsFolderMigration) { &path)); } +TEST_F(ProfileRelatedTest, MultiProfileDriveFolderMigration) { + Profile* profile = CreateProfileWithName("hash"); + + const base::FilePath kDrive = drive::util::GetDriveMountPointPath(profile); + ASSERT_EQ(base::FilePath::FromUTF8Unsafe("/special/drive-hash"), kDrive); + + base::FilePath path; + + EXPECT_TRUE(MigratePathFromOldFormat( + profile, + base::FilePath::FromUTF8Unsafe("/special/drive"), + &path)); + EXPECT_EQ(kDrive, path); + + EXPECT_TRUE(MigratePathFromOldFormat( + profile, + base::FilePath::FromUTF8Unsafe("/special/drive/a/b"), + &path)); + EXPECT_EQ(kDrive.AppendASCII("a/b"), path); + + // Path already in the new format is not converted. + EXPECT_FALSE(MigratePathFromOldFormat( + profile, + kDrive.AppendASCII("a/b"), + &path)); + + // Only the "/special/drive" path is converted. + EXPECT_FALSE(MigratePathFromOldFormat( + profile, + base::FilePath::FromUTF8Unsafe("/special/notdrive"), + &path)); +} + } // namespace } // namespace util } // namespace file_manager