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

Side by Side Diff: chrome/browser/sync_file_system/syncable_file_system_util_unittest.cc

Issue 23856002: SyncFS: Support resolveLocalFileSystemURL on SyncFileSystem (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/sync_file_system/syncable_file_system_util.h" 5 #include "chrome/browser/sync_file_system/syncable_file_system_util.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/message_loop/message_loop.h" 8 #include "base/message_loop/message_loop.h"
9 #include "base/message_loop/message_loop_proxy.h" 9 #include "base/message_loop/message_loop_proxy.h"
10 #include "chrome/browser/sync_file_system/local/canned_syncable_file_system.h" 10 #include "chrome/browser/sync_file_system/local/canned_syncable_file_system.h"
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 // non-registered filesystem and non-syncable filesystem. 104 // non-registered filesystem and non-syncable filesystem.
105 FileSystemURL deserialized; 105 FileSystemURL deserialized;
106 EXPECT_FALSE(DeserializeSyncableFileSystemURL( 106 EXPECT_FALSE(DeserializeSyncableFileSystemURL(
107 non_registered_url, &deserialized)); 107 non_registered_url, &deserialized));
108 EXPECT_FALSE(DeserializeSyncableFileSystemURL( 108 EXPECT_FALSE(DeserializeSyncableFileSystemURL(
109 non_syncable_url, &deserialized)); 109 non_syncable_url, &deserialized));
110 110
111 RevokeSyncableFileSystem(); 111 RevokeSyncableFileSystem();
112 } 112 }
113 113
114 TEST(SyncableFileSystemUtilTest, SerializeBeforeOpenFileSystem) {
115 ScopedEnableSyncFSDirectoryOperation enable_directory_operation_;
116 const std::string serialized = kSyncableFileSystemRootURI +
117 CreateNormalizedFilePath(kPath).AsUTF8Unsafe();
118 FileSystemURL deserialized;
119 base::MessageLoop message_loop;
120
121 // Setting up a full syncable filesystem environment.
122 CannedSyncableFileSystem file_system(GURL(kOrigin),
123 base::MessageLoopProxy::current().get(),
124 base::MessageLoopProxy::current().get());
125 file_system.SetUp();
126 scoped_refptr<LocalFileSyncContext> sync_context =
127 new LocalFileSyncContext(base::MessageLoopProxy::current().get(),
128 base::MessageLoopProxy::current().get());
129
130 // Before calling initialization we would not be able to get a valid
131 // deserialized URL.
132 EXPECT_FALSE(DeserializeSyncableFileSystemURL(serialized, &deserialized));
133 EXPECT_FALSE(deserialized.is_valid());
134
135 ASSERT_EQ(sync_file_system::SYNC_STATUS_OK,
136 file_system.MaybeInitializeFileSystemContext(sync_context.get()));
137
138 // After initialization this should be ok (even before opening the file
139 // system).
140 EXPECT_TRUE(DeserializeSyncableFileSystemURL(serialized, &deserialized));
141 EXPECT_TRUE(deserialized.is_valid());
142
143 // Shutting down.
144 file_system.TearDown();
145 RevokeSyncableFileSystem();
146 sync_context->ShutdownOnUIThread();
147 sync_context = NULL;
148 base::MessageLoop::current()->RunUntilIdle();
149 }
150
151 TEST(SyncableFileSystemUtilTest, SyncableFileSystemURL_IsParent) { 114 TEST(SyncableFileSystemUtilTest, SyncableFileSystemURL_IsParent) {
152 RegisterSyncableFileSystem(); 115 RegisterSyncableFileSystem();
153 116
154 const std::string root1 = sync_file_system::GetSyncableFileSystemRootURI( 117 const std::string root1 = sync_file_system::GetSyncableFileSystemRootURI(
155 GURL("http://foo.com")).spec(); 118 GURL("http://foo.com")).spec();
156 const std::string root2 = sync_file_system::GetSyncableFileSystemRootURI( 119 const std::string root2 = sync_file_system::GetSyncableFileSystemRootURI(
157 GURL("http://bar.com")).spec(); 120 GURL("http://bar.com")).spec();
158 121
159 const std::string parent("dir"); 122 const std::string parent("dir");
160 const std::string child("dir/child"); 123 const std::string child("dir/child");
161 124
162 // True case. 125 // True case.
163 EXPECT_TRUE(CreateFileSystemURL(root1 + parent).IsParent( 126 EXPECT_TRUE(CreateFileSystemURL(root1 + parent).IsParent(
164 CreateFileSystemURL(root1 + child))); 127 CreateFileSystemURL(root1 + child)));
165 EXPECT_TRUE(CreateFileSystemURL(root2 + parent).IsParent( 128 EXPECT_TRUE(CreateFileSystemURL(root2 + parent).IsParent(
166 CreateFileSystemURL(root2 + child))); 129 CreateFileSystemURL(root2 + child)));
167 130
168 // False case: different origin. 131 // False case: different origin.
169 EXPECT_FALSE(CreateFileSystemURL(root1 + parent).IsParent( 132 EXPECT_FALSE(CreateFileSystemURL(root1 + parent).IsParent(
170 CreateFileSystemURL(root2 + child))); 133 CreateFileSystemURL(root2 + child)));
171 EXPECT_FALSE(CreateFileSystemURL(root2 + parent).IsParent( 134 EXPECT_FALSE(CreateFileSystemURL(root2 + parent).IsParent(
172 CreateFileSystemURL(root1 + child))); 135 CreateFileSystemURL(root1 + child)));
173 136
174 RevokeSyncableFileSystem(); 137 RevokeSyncableFileSystem();
175 } 138 }
176 139
177 } // namespace sync_file_system 140 } // namespace sync_file_system
OLDNEW
« no previous file with comments | « chrome/browser/sync_file_system/sync_file_system_service_factory.cc ('k') | content/browser/fileapi/fileapi_message_filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698