xref: /aosp_15_r20/external/libchrome/base/test/test_file_util.cc (revision 635a864187cb8b6c713ff48b7e790a6b21769273)
1*635a8641SAndroid Build Coastguard Worker // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2*635a8641SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*635a8641SAndroid Build Coastguard Worker // found in the LICENSE file.
4*635a8641SAndroid Build Coastguard Worker 
5*635a8641SAndroid Build Coastguard Worker #include "base/test/test_file_util.h"
6*635a8641SAndroid Build Coastguard Worker 
7*635a8641SAndroid Build Coastguard Worker #include "base/test/test_timeouts.h"
8*635a8641SAndroid Build Coastguard Worker #include "base/threading/platform_thread.h"
9*635a8641SAndroid Build Coastguard Worker 
10*635a8641SAndroid Build Coastguard Worker namespace base {
11*635a8641SAndroid Build Coastguard Worker 
EvictFileFromSystemCacheWithRetry(const FilePath & path)12*635a8641SAndroid Build Coastguard Worker bool EvictFileFromSystemCacheWithRetry(const FilePath& path) {
13*635a8641SAndroid Build Coastguard Worker   const int kCycles = 10;
14*635a8641SAndroid Build Coastguard Worker   const TimeDelta kDelay = TestTimeouts::action_timeout() / kCycles;
15*635a8641SAndroid Build Coastguard Worker   for (int i = 0; i < kCycles; i++) {
16*635a8641SAndroid Build Coastguard Worker     if (EvictFileFromSystemCache(path))
17*635a8641SAndroid Build Coastguard Worker       return true;
18*635a8641SAndroid Build Coastguard Worker     PlatformThread::Sleep(kDelay);
19*635a8641SAndroid Build Coastguard Worker   }
20*635a8641SAndroid Build Coastguard Worker   return false;
21*635a8641SAndroid Build Coastguard Worker }
22*635a8641SAndroid Build Coastguard Worker 
23*635a8641SAndroid Build Coastguard Worker }  // namespace base
24