summaryrefslogtreecommitdiffstats
path: root/chrome/test
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/test')
-rw-r--r--chrome/test/test_file_util.cc30
-rw-r--r--chrome/test/test_file_util.h11
2 files changed, 4 insertions, 37 deletions
diff --git a/chrome/test/test_file_util.cc b/chrome/test/test_file_util.cc
index 5bb55cc..633fdc9 100644
--- a/chrome/test/test_file_util.cc
+++ b/chrome/test/test_file_util.cc
@@ -12,34 +12,6 @@
namespace file_util {
-bool EvictFileFromSystemCache(const wchar_t* file) {
- // Request exclusive access to the file and overwrite it with no buffering.
- win_util::ScopedHandle hfile(
- CreateFile(file, GENERIC_READ | GENERIC_WRITE, 0, NULL,
- OPEN_EXISTING, FILE_FLAG_NO_BUFFERING,
- NULL));
- if (!hfile)
- return false;
-
- // Execute in chunks. It could be optimized. We want to do few of these since
- // these opterations will be slow without the cache.
- char buffer[4096];
- int total_bytes = 0;
- DWORD bytes_read;
- for (;;) {
- bytes_read = 0;
- ReadFile(hfile, buffer, sizeof(buffer), &bytes_read, NULL);
- if (bytes_read == 0)
- break;
-
- SetFilePointer(hfile, total_bytes, 0, FILE_BEGIN);
- if (!WriteFile(hfile, buffer, bytes_read, &bytes_read, NULL))
- return false;
- total_bytes += bytes_read;
- }
- return true;
-}
-
// Like CopyFileNoCache but recursively copies all files and subdirectories
// in the given input directory to the output directory.
bool CopyRecursiveDirNoCache(const std::wstring& source_dir,
@@ -88,7 +60,7 @@ bool CopyRecursiveDirNoCache(const std::wstring& source_dir,
// files that are in the repository, and they will have read-only set.
// This will prevent us from evicting from the cache, but these don't
// matter anyway.
- EvictFileFromSystemCache(cur_dest_path.c_str());
+ file_util::EvictFileFromSystemCache(cur_dest_path.c_str());
}
} while (FindNextFile(fh, &fd));
diff --git a/chrome/test/test_file_util.h b/chrome/test/test_file_util.h
index dd4e34f..bf415a1 100644
--- a/chrome/test/test_file_util.h
+++ b/chrome/test/test_file_util.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_TEST_TEST_FILE_UTIL_H__
-#define CHROME_TEST_TEST_FILE_UTIL_H__
+#ifndef CHROME_TEST_TEST_FILE_UTIL_H_
+#define CHROME_TEST_TEST_FILE_UTIL_H_
// File utility functions used only by tests.
@@ -11,11 +11,6 @@
namespace file_util {
-// Clear a specific file from the system cache using a neat trick. After this
-// call, trying to access this file will result in a cold load from the hard
-// drive.
-bool EvictFileFromSystemCache(const wchar_t* file);
-
// Like CopyFileNoCache but recursively copies all files and subdirectories
// in the given input directory to the output directory. Any files in the
// destination that already exist will be overwritten.
@@ -27,5 +22,5 @@ bool CopyRecursiveDirNoCache(const std::wstring& source_dir,
} // namespace file_util
-#endif // CHROME_TEST_TEST_FILE_UTIL_H__
+#endif // CHROME_TEST_TEST_FILE_UTIL_H_