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 #ifndef BASE_TEST_TEST_FILE_UTIL_H_ | 5 #ifndef BASE_TEST_TEST_FILE_UTIL_H_ |
6 #define BASE_TEST_TEST_FILE_UTIL_H_ | 6 #define BASE_TEST_TEST_FILE_UTIL_H_ |
7 | 7 |
8 // File utility functions used only by tests. | 8 // File utility functions used only by tests. |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 18 matching lines...) Expand all Loading... |
29 | 29 |
30 // Wrapper over base::Delete. On Windows repeatedly invokes Delete in case | 30 // Wrapper over base::Delete. On Windows repeatedly invokes Delete in case |
31 // of failure to workaround Windows file locking semantics. Returns true on | 31 // of failure to workaround Windows file locking semantics. Returns true on |
32 // success. | 32 // success. |
33 bool DieFileDie(const FilePath& file, bool recurse); | 33 bool DieFileDie(const FilePath& file, bool recurse); |
34 | 34 |
35 // Clear a specific file from the system cache. After this call, trying | 35 // Clear a specific file from the system cache. After this call, trying |
36 // to access this file will result in a cold load from the hard drive. | 36 // to access this file will result in a cold load from the hard drive. |
37 bool EvictFileFromSystemCache(const FilePath& file); | 37 bool EvictFileFromSystemCache(const FilePath& file); |
38 | 38 |
39 #if defined(OS_WIN) | |
40 // Returns true if the volume supports Alternate Data Streams. | |
41 bool VolumeSupportsADS(const FilePath& path); | |
42 | |
43 // Returns true if the ZoneIdentifier is correctly set to "Internet" (3). | |
44 // Note that this function must be called from the same process as | |
45 // the one that set the zone identifier. I.e. don't use it in UI/automation | |
46 // based tests. | |
47 bool HasInternetZoneIdentifier(const FilePath& full_path); | |
48 #endif // defined(OS_WIN) | |
49 | |
50 // For testing, make the file unreadable or unwritable. | 39 // For testing, make the file unreadable or unwritable. |
51 // In POSIX, this does not apply to the root user. | 40 // In POSIX, this does not apply to the root user. |
52 bool MakeFileUnreadable(const FilePath& path) WARN_UNUSED_RESULT; | 41 bool MakeFileUnreadable(const FilePath& path) WARN_UNUSED_RESULT; |
53 bool MakeFileUnwritable(const FilePath& path) WARN_UNUSED_RESULT; | 42 bool MakeFileUnwritable(const FilePath& path) WARN_UNUSED_RESULT; |
54 | 43 |
55 // Saves the current permissions for a path, and restores it on destruction. | 44 // Saves the current permissions for a path, and restores it on destruction. |
56 class FilePermissionRestorer { | 45 class FilePermissionRestorer { |
57 public: | 46 public: |
58 explicit FilePermissionRestorer(const FilePath& path); | 47 explicit FilePermissionRestorer(const FilePath& path); |
59 ~FilePermissionRestorer(); | 48 ~FilePermissionRestorer(); |
(...skipping 11 matching lines...) Expand all Loading... |
71 bool RegisterContentUriTestUtils(JNIEnv* env); | 60 bool RegisterContentUriTestUtils(JNIEnv* env); |
72 | 61 |
73 // Insert an image file into the MediaStore, and retrieve the content URI for | 62 // Insert an image file into the MediaStore, and retrieve the content URI for |
74 // testing purpose. | 63 // testing purpose. |
75 FilePath InsertImageIntoMediaStore(const FilePath& path); | 64 FilePath InsertImageIntoMediaStore(const FilePath& path); |
76 #endif // defined(OS_ANDROID) | 65 #endif // defined(OS_ANDROID) |
77 | 66 |
78 } // namespace base | 67 } // namespace base |
79 | 68 |
80 #endif // BASE_TEST_TEST_FILE_UTIL_H_ | 69 #endif // BASE_TEST_TEST_FILE_UTIL_H_ |
OLD | NEW |