| 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 "chrome/browser/media_galleries/media_galleries_test_util.h" | 5 #include "chrome/browser/media_galleries/media_galleries_test_util.h" |
| 6 | 6 |
| 7 #include "base/base_paths.h" | 7 #include "base/base_paths.h" |
| 8 #include "base/file_util.h" | 8 #include "base/file_util.h" |
| 9 #include "base/files/file_path.h" | 9 #include "base/files/file_path.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| 11 #include "base/strings/stringprintf.h" | 11 #include "base/strings/stringprintf.h" |
| 12 #include "chrome/browser/extensions/extension_prefs.h" | 12 #include "chrome/browser/extensions/extension_prefs.h" |
| 13 #include "chrome/browser/extensions/extension_service.h" | 13 #include "chrome/browser/extensions/extension_service.h" |
| 14 #include "chrome/browser/extensions/extension_system.h" | 14 #include "chrome/browser/extensions/extension_system.h" |
| 15 #include "chrome/browser/profiles/profile.h" | 15 #include "chrome/browser/profiles/profile.h" |
| 16 #include "chrome/common/chrome_paths.h" | 16 #include "chrome/common/chrome_paths.h" |
| 17 #include "chrome/common/extensions/extension.h" | 17 #include "chrome/common/extensions/extension.h" |
| 18 #include "chrome/common/extensions/extension_manifest_constants.h" | 18 #include "chrome/common/extensions/extension_manifest_constants.h" |
| 19 #include "testing/gtest/include/gtest/gtest.h" | 19 #include "testing/gtest/include/gtest/gtest.h" |
| 20 | 20 |
| 21 #if defined(OS_MACOSX) |
| 22 #include "base/mac/foundation_util.h" |
| 23 #include "base/mac/scoped_cftyperef.h" |
| 24 #include "chrome/browser/media_galleries/fileapi/itunes_finder_mac.h" |
| 25 #include "chrome/browser/policy/preferences_mock_mac.h" |
| 26 #endif |
| 27 |
| 21 namespace chrome { | 28 namespace chrome { |
| 22 | 29 |
| 23 scoped_refptr<extensions::Extension> AddMediaGalleriesApp( | 30 scoped_refptr<extensions::Extension> AddMediaGalleriesApp( |
| 24 const std::string& name, | 31 const std::string& name, |
| 25 const std::vector<std::string>& media_galleries_permissions, | 32 const std::vector<std::string>& media_galleries_permissions, |
| 26 Profile* profile) { | 33 Profile* profile) { |
| 27 scoped_ptr<DictionaryValue> manifest(new DictionaryValue); | 34 scoped_ptr<DictionaryValue> manifest(new DictionaryValue); |
| 28 manifest->SetString(extension_manifest_keys::kName, name); | 35 manifest->SetString(extension_manifest_keys::kName, name); |
| 29 manifest->SetString(extension_manifest_keys::kVersion, "0.1"); | 36 manifest->SetString(extension_manifest_keys::kVersion, "0.1"); |
| 30 manifest->SetInteger(extension_manifest_keys::kManifestVersion, 2); | 37 manifest->SetInteger(extension_manifest_keys::kManifestVersion, 2); |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 | 75 |
| 69 return extension; | 76 return extension; |
| 70 } | 77 } |
| 71 | 78 |
| 72 EnsureMediaDirectoriesExists::EnsureMediaDirectoriesExists() | 79 EnsureMediaDirectoriesExists::EnsureMediaDirectoriesExists() |
| 73 : num_galleries_(0) { | 80 : num_galleries_(0) { |
| 74 Init(); | 81 Init(); |
| 75 } | 82 } |
| 76 | 83 |
| 77 EnsureMediaDirectoriesExists::~EnsureMediaDirectoriesExists() { | 84 EnsureMediaDirectoriesExists::~EnsureMediaDirectoriesExists() { |
| 85 #if defined(OS_MACOSX) |
| 86 // Remove the MockPreferences object that is about to be deleted. |
| 87 itunes::ITunesFinderMac::SetMacPreferencesForTesting(NULL); |
| 88 #endif |
| 78 } | 89 } |
| 79 | 90 |
| 80 void EnsureMediaDirectoriesExists::Init() { | 91 void EnsureMediaDirectoriesExists::Init() { |
| 81 #if defined(OS_CHROMEOS) || defined(OS_ANDROID) | 92 #if defined(OS_CHROMEOS) || defined(OS_ANDROID) |
| 82 return; | 93 return; |
| 83 #else | 94 #else |
| 84 | 95 |
| 85 ASSERT_TRUE(fake_dir_.CreateUniqueTempDir()); | 96 ASSERT_TRUE(fake_dir_.CreateUniqueTempDir()); |
| 86 | 97 |
| 87 #if defined(OS_WIN) || defined(OS_MACOSX) | 98 #if defined(OS_WIN) |
| 88 // This is to make sure the tests don't think iTunes is installed (unless | 99 // This is to make sure the tests don't think iTunes is installed (unless |
| 89 // we control it specifically). | 100 // we control it specifically). |
| 90 appdir_override_.reset(new base::ScopedPathOverride( | 101 appdir_override_.reset(new base::ScopedPathOverride( |
| 91 base::DIR_APP_DATA, fake_dir_.path().AppendASCII("itunes"))); | 102 base::DIR_APP_DATA, fake_dir_.path().AppendASCII("itunes"))); |
| 103 #elif defined(OS_MACOSX) |
| 104 mac_preferences_.reset(new MockPreferences); |
| 105 NSString* path = base::mac::FilePathToNSString( |
| 106 fake_dir_.path().AppendASCII("itunes")); |
| 107 CFArrayRef array = CFArrayCreate(NULL, (const void **)(&path), 1, |
| 108 &kCFTypeArrayCallBacks); |
| 109 base::ScopedCFTypeRef<CFString> recent_database_path_key( |
| 110 CFStringCreateWithCStringNoCopy(NULL, |
| 111 itunes::kITunesRecentDatabasePathsKey, |
| 112 kCFStringEncodingASCII, NULL)); |
| 113 mac_preferences_->AddTestItem(recent_database_path_key.get(), array, false); |
| 114 itunes::ITunesFinderMac::SetMacPreferencesForTesting(mac_preferences_.get()); |
| 92 #endif | 115 #endif |
| 93 | 116 |
| 94 music_override_.reset(new base::ScopedPathOverride( | 117 music_override_.reset(new base::ScopedPathOverride( |
| 95 chrome::DIR_USER_MUSIC, fake_dir_.path().AppendASCII("music"))); | 118 chrome::DIR_USER_MUSIC, fake_dir_.path().AppendASCII("music"))); |
| 96 pictures_override_.reset(new base::ScopedPathOverride( | 119 pictures_override_.reset(new base::ScopedPathOverride( |
| 97 chrome::DIR_USER_PICTURES, fake_dir_.path().AppendASCII("pictures"))); | 120 chrome::DIR_USER_PICTURES, fake_dir_.path().AppendASCII("pictures"))); |
| 98 video_override_.reset(new base::ScopedPathOverride( | 121 video_override_.reset(new base::ScopedPathOverride( |
| 99 chrome::DIR_USER_VIDEOS, fake_dir_.path().AppendASCII("videos"))); | 122 chrome::DIR_USER_VIDEOS, fake_dir_.path().AppendASCII("videos"))); |
| 100 num_galleries_ = 3; | 123 num_galleries_ = 3; |
| 101 #endif | 124 #endif |
| 102 } | 125 } |
| 103 | 126 |
| 104 } // namespace chrome | 127 } // namespace chrome |
| OLD | NEW |