OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
darin (slow to review)
2014/02/13 04:57:18
you might consider re-uploading with lower similar
| |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CONTENT_PUBLIC_TEST_ASYNC_FILE_TEST_HELPER_H_ | |
6 #define CONTENT_PUBLIC_TEST_ASYNC_FILE_TEST_HELPER_H_ | |
7 | |
8 #include "base/basictypes.h" | |
9 #include "webkit/browser/fileapi/file_system_operation.h" | |
10 #include "webkit/common/fileapi/file_system_types.h" | |
11 #include "webkit/common/quota/quota_status_code.h" | |
12 | |
13 namespace quota { | |
14 class QuotaManager; | |
15 } | |
16 | |
17 namespace fileapi { | |
18 class FileSystemContext; | |
19 class FileSystemURL; | |
20 } | |
21 | |
22 namespace content { | |
23 | |
24 // A helper class to perform async file operations in a synchronous way. | |
25 class AsyncFileTestHelper { | |
26 public: | |
27 typedef fileapi::FileSystemOperation::FileEntryList FileEntryList; | |
28 typedef fileapi::FileSystemOperation::CopyProgressCallback | |
29 CopyProgressCallback; | |
30 | |
31 static const int64 kDontCheckSize; | |
32 | |
33 // Performs Copy from |src| to |dest| and returns the status code. | |
34 static base::File::Error Copy(fileapi::FileSystemContext* context, | |
35 const fileapi::FileSystemURL& src, | |
36 const fileapi::FileSystemURL& dest); | |
37 | |
38 // Same as Copy, but this supports |progress_callback|. | |
39 static base::File::Error CopyWithProgress( | |
40 fileapi::FileSystemContext* context, | |
41 const fileapi::FileSystemURL& src, | |
42 const fileapi::FileSystemURL& dest, | |
43 const CopyProgressCallback& progress_callback); | |
44 | |
45 // Performs Move from |src| to |dest| and returns the status code. | |
46 static base::File::Error Move(fileapi::FileSystemContext* context, | |
47 const fileapi::FileSystemURL& src, | |
48 const fileapi::FileSystemURL& dest); | |
49 | |
50 // Removes the given |url|. | |
51 static base::File::Error Remove(fileapi::FileSystemContext* context, | |
52 const fileapi::FileSystemURL& url, | |
53 bool recursive); | |
54 | |
55 // Performs ReadDirectory on |url|. | |
56 static base::File::Error ReadDirectory(fileapi::FileSystemContext* context, | |
57 const fileapi::FileSystemURL& url, | |
58 FileEntryList* entries); | |
59 | |
60 // Creates a directory at |url|. | |
61 static base::File::Error CreateDirectory(fileapi::FileSystemContext* context, | |
62 const fileapi::FileSystemURL& url); | |
63 | |
64 // Creates a file at |url|. | |
65 static base::File::Error CreateFile(fileapi::FileSystemContext* context, | |
66 const fileapi::FileSystemURL& url); | |
67 | |
68 // Creates a file at |url| and fills with |buf|. | |
69 static base::File::Error CreateFileWithData( | |
70 fileapi::FileSystemContext* context, | |
71 const fileapi::FileSystemURL& url, | |
72 const char* buf, | |
73 int buf_size); | |
74 | |
75 // Truncates the file |url| to |size|. | |
76 static base::File::Error TruncateFile(fileapi::FileSystemContext* context, | |
77 const fileapi::FileSystemURL& url, | |
78 size_t size); | |
79 | |
80 // Retrieves File::Info for |url| and populates |file_info|. | |
81 static base::File::Error GetMetadata(fileapi::FileSystemContext* context, | |
82 const fileapi::FileSystemURL& url, | |
83 base::File::Info* file_info); | |
84 | |
85 // Retrieves FilePath for |url| and populates |platform_path|. | |
86 static base::File::Error GetPlatformPath(fileapi::FileSystemContext* context, | |
87 const fileapi::FileSystemURL& url, | |
88 base::FilePath* platform_path); | |
89 | |
90 // Returns true if a file exists at |url| with |size|. If |size| is | |
91 // kDontCheckSize it doesn't check the file size (but just check its | |
92 // existence). | |
93 static bool FileExists(fileapi::FileSystemContext* context, | |
94 const fileapi::FileSystemURL& url, | |
95 int64 size); | |
96 | |
97 // Returns true if a directory exists at |url|. | |
98 static bool DirectoryExists(fileapi::FileSystemContext* context, | |
99 const fileapi::FileSystemURL& url); | |
100 | |
101 // Returns usage and quota. It's valid to pass NULL to |usage| and/or |quota|. | |
102 static quota::QuotaStatusCode GetUsageAndQuota( | |
103 quota::QuotaManager* quota_manager, | |
104 const GURL& origin, | |
105 fileapi::FileSystemType type, | |
106 int64* usage, | |
107 int64* quota); | |
108 }; | |
109 | |
110 } // namespace content | |
111 | |
112 #endif // CONTENT_PUBLIC_TEST_ASYNC_FILE_TEST_HELPER_H_ | |
OLD | NEW |