Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(321)

Unified Diff: chrome/browser/chromeos/gdata/gdata_system_service.cc

Issue 10805034: Fix flakiness in RemoteFileSystemExtensionApiTests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/gdata/gdata_system_service.cc
diff --git a/chrome/browser/chromeos/gdata/gdata_system_service.cc b/chrome/browser/chromeos/gdata/gdata_system_service.cc
index 777ee9c964ef9859d9c2bac41025aaa197207670..58a25aa79701f9dd378c81158f37faf304eeca57 100644
--- a/chrome/browser/chromeos/gdata/gdata_system_service.cc
+++ b/chrome/browser/chromeos/gdata/gdata_system_service.cc
@@ -53,12 +53,13 @@ GDataSystemService::~GDataSystemService() {
}
void GDataSystemService::Initialize(
- DocumentsServiceInterface* documents_service) {
+ DocumentsServiceInterface* documents_service,
+ const FilePath& cache_root) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
documents_service_.reset(documents_service);
cache_ = GDataCache::CreateGDataCacheOnUIThread(
- GDataCache::GetCacheRootPath(profile_),
+ cache_root,
GetTaskRunner(sequence_token_));
uploader_.reset(new GDataUploader(docs_service()));
webapps_registry_.reset(new DriveWebAppsRegistry);
@@ -153,28 +154,40 @@ GDataSystemServiceFactory::~GDataSystemServiceFactory() {
}
// static
-ProfileKeyedService* GDataSystemServiceFactory::CreateInstance(
- Profile* profile) {
- return new GDataSystemService(profile);
+void GDataSystemServiceFactory::set_documents_service_for_test(
+ DocumentsServiceInterface* documents_service) {
+ if (test_documents_service_)
+ delete test_documents_service_;
+ test_documents_service_ = documents_service;
}
-GDataSystemService*
-GDataSystemServiceFactory::GetWithCustomDocumentsServiceForTesting(
- Profile* profile,
- DocumentsServiceInterface* documents_service) {
- GDataSystemService* service =
- static_cast<GDataSystemService*>(GetInstance()->SetTestingFactoryAndUse(
- profile,
- &GDataSystemServiceFactory::CreateInstance));
- service->Initialize(documents_service);
- return service;
+// static
+void GDataSystemServiceFactory::set_cache_root_for_test(
+ const char* cache_root) {
+ test_cache_root_ = cache_root;
}
ProfileKeyedService* GDataSystemServiceFactory::BuildServiceInstanceFor(
Profile* profile) const {
GDataSystemService* service = new GDataSystemService(profile);
- service->Initialize(new DocumentsService);
+
+ DocumentsServiceInterface* documents_service =
+ test_documents_service_ ? test_documents_service_ :
+ new DocumentsService();
+ test_documents_service_ = NULL;
+ FilePath cache_root =
+ test_cache_root_ ? FilePath(test_cache_root_) :
+ GDataCache::GetCacheRootPath(profile);
+
+ service->Initialize(documents_service, cache_root);
return service;
}
+// static
+DocumentsServiceInterface* GDataSystemServiceFactory::test_documents_service_ =
+ NULL;
+
+// static
+const char* GDataSystemServiceFactory::test_cache_root_ = NULL;
+
} // namespace gdata

Powered by Google App Engine
This is Rietveld 408576698