| 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/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/bind_helpers.h" | 6 #include "base/bind_helpers.h" |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/files/scoped_temp_dir.h" | 8 #include "base/files/scoped_temp_dir.h" |
| 9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
| 10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 #endif | 37 #endif |
| 38 | 38 |
| 39 const char kTestGalleries[] = "testGalleries(%d)"; | 39 const char kTestGalleries[] = "testGalleries(%d)"; |
| 40 | 40 |
| 41 } // namespace | 41 } // namespace |
| 42 | 42 |
| 43 // This function is to ensure at least one (fake) media gallery exists for | 43 // This function is to ensure at least one (fake) media gallery exists for |
| 44 // testing platforms with no default media galleries, such as CHROMEOS. | 44 // testing platforms with no default media galleries, such as CHROMEOS. |
| 45 void MakeFakeMediaGalleryForTest(Profile* profile, const base::FilePath& path) { | 45 void MakeFakeMediaGalleryForTest(Profile* profile, const base::FilePath& path) { |
| 46 base::RunLoop runloop; | 46 base::RunLoop runloop; |
| 47 StorageMonitor::GetInstance()->EnsureInitialized(runloop.QuitClosure()); | |
| 48 runloop.Run(); | |
| 49 | |
| 50 MediaGalleriesPreferences* preferences = | 47 MediaGalleriesPreferences* preferences = |
| 51 g_browser_process->media_file_system_registry()->GetPreferences(profile); | 48 g_browser_process->media_file_system_registry()->GetPreferences(profile); |
| 49 preferences->EnsureInitialized(runloop.QuitClosure()); |
| 50 runloop.Run(); |
| 52 | 51 |
| 53 MediaGalleryPrefInfo gallery_info; | 52 MediaGalleryPrefInfo gallery_info; |
| 54 ASSERT_FALSE(preferences->LookUpGalleryByPath(path, &gallery_info)); | 53 ASSERT_FALSE(preferences->LookUpGalleryByPath(path, &gallery_info)); |
| 55 preferences->AddGallery(gallery_info.device_id, | 54 preferences->AddGallery(gallery_info.device_id, |
| 56 gallery_info.path, | 55 gallery_info.path, |
| 57 false /* user_added */, | 56 false /* user_added */, |
| 58 gallery_info.volume_label, | 57 gallery_info.volume_label, |
| 59 gallery_info.vendor_name, | 58 gallery_info.vendor_name, |
| 60 gallery_info.model_name, | 59 gallery_info.model_name, |
| 61 gallery_info.total_size_in_bytes, | 60 gallery_info.total_size_in_bytes, |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 StorageMonitor::GetInstance()->receiver()->ProcessDetach(device_id_); | 93 StorageMonitor::GetInstance()->receiver()->ProcessDetach(device_id_); |
| 95 content::RunAllPendingInMessageLoop(); | 94 content::RunAllPendingInMessageLoop(); |
| 96 } | 95 } |
| 97 | 96 |
| 98 private: | 97 private: |
| 99 std::string device_id_; | 98 std::string device_id_; |
| 100 }; | 99 }; |
| 101 | 100 |
| 102 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 101 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 103 MediaGalleriesNoAccess) { | 102 MediaGalleriesNoAccess) { |
| 104 EnsureMediaDirectoriesExists media_directories; | 103 TestMediaDirectoriesOverrides media_directories; |
| 105 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/no_access")) | 104 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/no_access")) |
| 106 << message_; | 105 << message_; |
| 107 RunSecondTestPhase(base::UTF8ToUTF16(base::StringPrintf( | 106 RunSecondTestPhase(base::UTF8ToUTF16(base::StringPrintf( |
| 108 kTestGalleries, media_directories.num_galleries()))); | 107 kTestGalleries, media_directories.num_galleries()))); |
| 109 } | 108 } |
| 110 | 109 |
| 111 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, NoGalleriesRead) { | 110 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, NoGalleriesRead) { |
| 112 EnsureMediaDirectoriesExists media_directories; | 111 TestMediaDirectoriesOverrides media_directories; |
| 113 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/no_galleries")) | 112 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/no_galleries")) |
| 114 << message_; | 113 << message_; |
| 115 } | 114 } |
| 116 | 115 |
| 117 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 116 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 118 NoGalleriesCopyTo) { | 117 NoGalleriesCopyTo) { |
| 119 EnsureMediaDirectoriesExists media_directories; | 118 TestMediaDirectoriesOverrides media_directories; |
| 120 ASSERT_TRUE(RunPlatformAppTest( | 119 ASSERT_TRUE(RunPlatformAppTest( |
| 121 "api_test/media_galleries/no_galleries_copy_to")) << message_; | 120 "api_test/media_galleries/no_galleries_copy_to")) << message_; |
| 122 } | 121 } |
| 123 | 122 |
| 124 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 123 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 125 MediaGalleriesRead) { | 124 MediaGalleriesRead) { |
| 126 EnsureMediaDirectoriesExists media_directories; | 125 TestMediaDirectoriesOverrides media_directories; |
| 127 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/read_access")) | 126 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/read_access")) |
| 128 << message_; | 127 << message_; |
| 129 RunSecondTestPhase(base::UTF8ToUTF16(base::StringPrintf( | 128 RunSecondTestPhase(base::UTF8ToUTF16(base::StringPrintf( |
| 130 kTestGalleries, media_directories.num_galleries()))); | 129 kTestGalleries, media_directories.num_galleries()))); |
| 131 } | 130 } |
| 132 | 131 |
| 133 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 132 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 134 MediaGalleriesCopyTo) { | 133 MediaGalleriesCopyTo) { |
| 135 EnsureMediaDirectoriesExists media_directories; | 134 TestMediaDirectoriesOverrides media_directories; |
| 136 base::ScopedTempDir temp_dir; | 135 base::ScopedTempDir temp_dir; |
| 137 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); | 136 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 138 MakeFakeMediaGalleryForTest(browser()->profile(), temp_dir.path()); | 137 MakeFakeMediaGalleryForTest(browser()->profile(), temp_dir.path()); |
| 139 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/copy_to_access")) | 138 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/copy_to_access")) |
| 140 << message_; | 139 << message_; |
| 141 } | 140 } |
| 142 | 141 |
| 143 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 142 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 144 MediaGalleriesCopyToNoAccess) { | 143 MediaGalleriesCopyToNoAccess) { |
| 145 EnsureMediaDirectoriesExists media_directories; | 144 TestMediaDirectoriesOverrides media_directories; |
| 146 base::ScopedTempDir temp_dir; | 145 base::ScopedTempDir temp_dir; |
| 147 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); | 146 ASSERT_TRUE(temp_dir.CreateUniqueTempDir()); |
| 148 MakeFakeMediaGalleryForTest(browser()->profile(), temp_dir.path()); | 147 MakeFakeMediaGalleryForTest(browser()->profile(), temp_dir.path()); |
| 149 ASSERT_TRUE(RunPlatformAppTest( | 148 ASSERT_TRUE(RunPlatformAppTest( |
| 150 "api_test/media_galleries/copy_to_access/no_access")) | 149 "api_test/media_galleries/copy_to_access/no_access")) |
| 151 << message_; | 150 << message_; |
| 152 } | 151 } |
| 153 | 152 |
| 154 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 153 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 155 MediaGalleriesAccessAttached) { | 154 MediaGalleriesAccessAttached) { |
| 156 EnsureMediaDirectoriesExists media_directories; | 155 TestMediaDirectoriesOverrides media_directories; |
| 157 | 156 |
| 158 AttachFakeDevice(); | 157 AttachFakeDevice(); |
| 159 | 158 |
| 160 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/access_attached")) | 159 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/access_attached")) |
| 161 << message_; | 160 << message_; |
| 162 | 161 |
| 163 RunSecondTestPhase(ASCIIToUTF16(base::StringPrintf( | 162 RunSecondTestPhase(ASCIIToUTF16(base::StringPrintf( |
| 164 "testGalleries(%d, \"%s\")", | 163 "testGalleries(%d, \"%s\")", |
| 165 media_directories.num_galleries() + 1, kDeviceName))); | 164 media_directories.num_galleries() + 1, kDeviceName))); |
| 166 | 165 |
| 167 DetachFakeDevice(); | 166 DetachFakeDevice(); |
| 168 } | 167 } |
| 169 | 168 |
| 170 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, | 169 IN_PROC_BROWSER_TEST_F(MediaGalleriesPlatformAppBrowserTest, |
| 171 GetFilesystemMetadata) { | 170 GetFilesystemMetadata) { |
| 172 EnsureMediaDirectoriesExists media_directories; | 171 TestMediaDirectoriesOverrides media_directories; |
| 173 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/metadata")) | 172 ASSERT_TRUE(RunPlatformAppTest("api_test/media_galleries/metadata")) |
| 174 << message_; | 173 << message_; |
| 175 } | 174 } |
| OLD | NEW |