test_file_util.h revision c7f5f8508d98d5952d42ed7648c2a8f30a4da156
1// Copyright (c) 2008 The Chromium Authors. All rights reserved. 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 BASE_TEST_TEST_FILE_UTIL_H_ 6#define BASE_TEST_TEST_FILE_UTIL_H_ 7 8// File utility functions used only by tests. 9 10#include <string> 11 12class FilePath; 13 14namespace file_util { 15 16// Wrapper over file_util::Delete. On Windows repeatedly invokes Delete in case 17// of failure to workaround Windows file locking semantics. Returns true on 18// success. 19bool DieFileDie(const FilePath& file, bool recurse); 20 21// Clear a specific file from the system cache. After this call, trying 22// to access this file will result in a cold load from the hard drive. 23bool EvictFileFromSystemCache(const FilePath& file); 24 25// Like CopyFileNoCache but recursively copies all files and subdirectories 26// in the given input directory to the output directory. Any files in the 27// destination that already exist will be overwritten. 28// 29// Returns true on success. False means there was some error copying, so the 30// state of the destination is unknown. 31bool CopyRecursiveDirNoCache(const FilePath& source_dir, 32 const FilePath& dest_dir); 33 34} // namespace file_util 35 36#endif // BASE_TEST_TEST_FILE_UTIL_H_ 37