#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include <stdint.h>
#include <memory>
#include <optional>
#include <string_view>
#include "base/containers/queue.h"
#include "base/files/file.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/functional/callback_helpers.h"
#include "base/memory/memory_pressure_listener.h"
#include "base/memory/raw_ptr.h"
#include "base/metrics/field_trial.h"
#include "base/ranges/algorithm.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_split.h"
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/single_thread_task_runner.h"
#include "base/task/thread_pool.h"
#include "base/test/bind.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "base/test/simple_test_clock.h"
#include "base/threading/platform_thread.h"
#include "base/threading/thread_restrictions.h"
#include "base/time/time.h"
#include "base/trace_event/memory_allocator_dump.h"
#include "base/trace_event/process_memory_dump.h"
#include "build/build_config.h"
#include "net/base/cache_type.h"
#include "net/base/completion_once_callback.h"
#include "net/base/io_buffer.h"
#include "net/base/net_errors.h"
#include "net/base/request_priority.h"
#include "net/base/test_completion_callback.h"
#include "net/base/tracing.h"
#include "net/disk_cache/backend_cleanup_tracker.h"
#include "net/disk_cache/blockfile/backend_impl.h"
#include "net/disk_cache/blockfile/entry_impl.h"
#include "net/disk_cache/blockfile/experiments.h"
#include "net/disk_cache/blockfile/mapped_file.h"
#include "net/disk_cache/cache_util.h"
#include "net/disk_cache/disk_cache_test_base.h"
#include "net/disk_cache/disk_cache_test_util.h"
#include "net/disk_cache/memory/mem_backend_impl.h"
#include "net/disk_cache/simple/simple_backend_impl.h"
#include "net/disk_cache/simple/simple_entry_format.h"
#include "net/disk_cache/simple/simple_histogram_enums.h"
#include "net/disk_cache/simple/simple_index.h"
#include "net/disk_cache/simple/simple_synchronous_entry.h"
#include "net/disk_cache/simple/simple_test_util.h"
#include "net/disk_cache/simple/simple_util.h"
#include "net/test/gtest_util.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/abseil-cpp/absl/base/dynamic_annotations.h"
EntryResult;
IsError;
IsOk;
ByRef;
Contains;
Eq;
Field;
#if BUILDFLAG(IS_WIN)
#include <windows.h>
#include "base/win/scoped_handle.h"
#endif
#ifdef LEAK_SANITIZER
#define MAYBE_BlockFileOpenOrCreateEntry …
#define MAYBE_NonEmptyCorruptSimpleCacheDoesNotRecover …
#define MAYBE_SimpleOpenOrCreateEntry …
#else
#define MAYBE_BlockFileOpenOrCreateEntry …
#define MAYBE_NonEmptyCorruptSimpleCacheDoesNotRecover …
#define MAYBE_SimpleOpenOrCreateEntry …
#endif
Time;
namespace {
const char kExistingEntryKey[] = …;
std::unique_ptr<disk_cache::BackendImpl> CreateExistingEntryCache(
const base::FilePath& cache_path) { … }
#if BUILDFLAG(IS_FUCHSIA)
const int kLargeNumEntries = 100;
#else
const int kLargeNumEntries = …;
#endif
}
class DiskCacheBackendTest : public DiskCacheTestWithCache { … };
void DiskCacheBackendTest::CreateKeyAndCheck(disk_cache::Backend* cache,
std::string key) { … }
void DiskCacheBackendTest::WaitForSimpleCacheIndexAndCheck(
disk_cache::Backend* cache) { … }
void DiskCacheBackendTest::RunUntilIdle() { … }
int DiskCacheBackendTest::GeneratePendingIO(net::TestCompletionCallback* cb) { … }
void DiskCacheBackendTest::InitSparseCache(base::Time* doomed_start,
base::Time* doomed_end) { … }
bool DiskCacheBackendTest::CreateSetOfRandomEntries(
std::set<std::string>* key_pool) { … }
bool DiskCacheBackendTest::EnumerateAndMatchKeys(
int max_to_open,
TestIterator* iter,
std::set<std::string>* keys_to_match,
size_t* count) { … }
int DiskCacheBackendTest::GetEntryMetadataSize(std::string key) { … }
int DiskCacheBackendTest::GetRoundedSize(int exact_size) { … }
void DiskCacheBackendTest::BackendBasics() { … }
TEST_F(DiskCacheBackendTest, Basics) { … }
TEST_F(DiskCacheBackendTest, NewEvictionBasics) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyBasics) { … }
TEST_F(DiskCacheBackendTest, AppCacheBasics) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheBasics) { … }
void DiskCacheBackendTest::BackendKeying() { … }
TEST_F(DiskCacheBackendTest, Keying) { … }
TEST_F(DiskCacheBackendTest, NewEvictionKeying) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyKeying) { … }
TEST_F(DiskCacheBackendTest, AppCacheKeying) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheKeying) { … }
TEST_F(DiskCacheTest, CreateBackend) { … }
TEST_F(DiskCacheTest, MemBackendPostCleanupCallback) { … }
TEST_F(DiskCacheTest, CreateBackendDouble) { … }
TEST_F(DiskCacheBackendTest, CreateBackendDoubleOpenEntry) { … }
TEST_F(DiskCacheBackendTest, CreateBackendPostCleanup) { … }
TEST_F(DiskCacheBackendTest, SimpleCreateBackendRecoveryAppCache) { … }
TEST_F(DiskCacheBackendTest, CreateBackend_MissingFile) { … }
TEST_F(DiskCacheBackendTest, MemoryListensToMemoryPressure) { … }
TEST_F(DiskCacheBackendTest, ExternalFiles) { … }
void DiskCacheBackendTest::BackendShutdownWithPendingFileIO(bool fast) { … }
TEST_F(DiskCacheBackendTest, ShutdownWithPendingFileIO) { … }
#if !defined(LEAK_SANITIZER)
TEST_F(DiskCacheBackendTest, ShutdownWithPendingFileIO_Fast) { … }
#endif
#if !BUILDFLAG(IS_IOS)
TEST_F(DiskCacheBackendTest, MultipleInstancesWithPendingFileIO) { … }
#endif
void DiskCacheBackendTest::BackendShutdownWithPendingIO(bool fast) { … }
TEST_F(DiskCacheBackendTest, ShutdownWithPendingIO) { … }
#if !defined(LEAK_SANITIZER)
TEST_F(DiskCacheBackendTest, ShutdownWithPendingIO_Fast) { … }
#endif
void DiskCacheBackendTest::BackendShutdownWithPendingCreate(bool fast) { … }
TEST_F(DiskCacheBackendTest, ShutdownWithPendingCreate) { … }
#if !defined(LEAK_SANITIZER)
TEST_F(DiskCacheBackendTest, ShutdownWithPendingCreate_Fast) { … }
#endif
void DiskCacheBackendTest::BackendShutdownWithPendingDoom() { … }
TEST_F(DiskCacheBackendTest, ShutdownWithPendingDoom) { … }
#if !BUILDFLAG(IS_ANDROID)
TEST_F(DiskCacheTest, TruncatedIndex) { … }
#endif
void DiskCacheBackendTest::BackendSetSize() { … }
TEST_F(DiskCacheBackendTest, SetSize) { … }
TEST_F(DiskCacheBackendTest, NewEvictionSetSize) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlySetSize) { … }
void DiskCacheBackendTest::BackendLoad() { … }
TEST_F(DiskCacheBackendTest, Load) { … }
TEST_F(DiskCacheBackendTest, NewEvictionLoad) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyLoad) { … }
TEST_F(DiskCacheBackendTest, AppCacheLoad) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheLoad) { … }
void DiskCacheBackendTest::BackendChain() { … }
TEST_F(DiskCacheBackendTest, Chain) { … }
TEST_F(DiskCacheBackendTest, NewEvictionChain) { … }
TEST_F(DiskCacheBackendTest, AppCacheChain) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheChain) { … }
TEST_F(DiskCacheBackendTest, NewEvictionTrim) { … }
void DiskCacheBackendTest::BackendValidEntry() { … }
TEST_F(DiskCacheBackendTest, ValidEntry) { … }
TEST_F(DiskCacheBackendTest, NewEvictionValidEntry) { … }
void DiskCacheBackendTest::BackendInvalidEntry() { … }
#if !defined(LEAK_SANITIZER)
TEST_F(DiskCacheBackendTest, InvalidEntry) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry) { … }
TEST_F(DiskCacheBackendTest, AppCacheInvalidEntry) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheInvalidEntry) { … }
void DiskCacheBackendTest::BackendInvalidEntryRead() { … }
TEST_F(DiskCacheBackendTest, InvalidEntryRead) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntryRead) { … }
TEST_F(DiskCacheBackendTest, AppCacheInvalidEntryRead) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheInvalidEntryRead) { … }
void DiskCacheBackendTest::BackendInvalidEntryWithLoad() { … }
TEST_F(DiskCacheBackendTest, InvalidEntryWithLoad) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntryWithLoad) { … }
TEST_F(DiskCacheBackendTest, AppCacheInvalidEntryWithLoad) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheInvalidEntryWithLoad) { … }
void DiskCacheBackendTest::BackendTrimInvalidEntry() { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry) { … }
TEST_F(DiskCacheBackendTest, NewEvictionTrimInvalidEntry) { … }
void DiskCacheBackendTest::BackendTrimInvalidEntry2() { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionTrimInvalidEntry2) { … }
#endif
void DiskCacheBackendTest::BackendEnumerations() { … }
TEST_F(DiskCacheBackendTest, Enumerations) { … }
TEST_F(DiskCacheBackendTest, NewEvictionEnumerations) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyEnumerations) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheEnumerations) { … }
TEST_F(DiskCacheBackendTest, AppCacheEnumerations) { … }
void DiskCacheBackendTest::BackendEnumerations2() { … }
TEST_F(DiskCacheBackendTest, Enumerations2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionEnumerations2) { … }
TEST_F(DiskCacheBackendTest, AppCacheEnumerations2) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheEnumerations2) { … }
void DiskCacheBackendTest::BackendDoomMidEnumeration() { … }
TEST_F(DiskCacheBackendTest, DoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheDoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, AppCacheDoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, SimpleDoomEnumerations) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheEnumerationReadData) { … }
#if !defined(LEAK_SANITIZER)
void DiskCacheBackendTest::BackendInvalidEntryEnumeration() { … }
TEST_F(DiskCacheBackendTest, InvalidEntryEnumeration) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntryEnumeration) { … }
#endif
void DiskCacheBackendTest::BackendFixEnumerators() { … }
TEST_F(DiskCacheBackendTest, FixEnumerators) { … }
TEST_F(DiskCacheBackendTest, NewEvictionFixEnumerators) { … }
void DiskCacheBackendTest::BackendDoomRecent() { … }
TEST_F(DiskCacheBackendTest, DoomRecent) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDoomRecent) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomRecent) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomEntriesSinceSparse) { … }
TEST_F(DiskCacheBackendTest, DoomEntriesSinceSparse) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomAllSparse) { … }
TEST_F(DiskCacheBackendTest, DoomAllSparse) { … }
TEST_F(DiskCacheBackendTest, InMemorySparseEvict) { … }
void DiskCacheBackendTest::BackendDoomBetween() { … }
TEST_F(DiskCacheBackendTest, DoomBetween) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDoomBetween) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomBetween) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomEntriesBetweenSparse) { … }
TEST_F(DiskCacheBackendTest, DoomEntriesBetweenSparse) { … }
void DiskCacheBackendTest::BackendCalculateSizeOfAllEntries() { … }
TEST_F(DiskCacheBackendTest, CalculateSizeOfAllEntries) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyCalculateSizeOfAllEntries) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheCalculateSizeOfAllEntries) { … }
void DiskCacheBackendTest::BackendCalculateSizeOfEntriesBetween(
bool expect_access_time_comparisons) { … }
TEST_F(DiskCacheBackendTest, CalculateSizeOfEntriesBetween) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyCalculateSizeOfEntriesBetween) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheCalculateSizeOfEntriesBetween) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheAppCacheCalculateSizeOfEntriesBetween) { … }
void DiskCacheBackendTest::BackendTransaction(const std::string& name,
int num_entries,
bool load) { … }
void DiskCacheBackendTest::BackendRecoverInsert() { … }
TEST_F(DiskCacheBackendTest, RecoverInsert) { … }
TEST_F(DiskCacheBackendTest, NewEvictionRecoverInsert) { … }
void DiskCacheBackendTest::BackendRecoverRemove() { … }
#if BUILDFLAG(IS_WIN)
#define MAYBE_RecoverRemove …
#else
#define MAYBE_RecoverRemove …
#endif
TEST_F(DiskCacheBackendTest, MAYBE_RecoverRemove) { … }
#if BUILDFLAG(IS_WIN)
#define MAYBE_NewEvictionRecoverRemove …
#else
#define MAYBE_NewEvictionRecoverRemove …
#endif
TEST_F(DiskCacheBackendTest, MAYBE_NewEvictionRecoverRemove) { … }
void DiskCacheBackendTest::BackendRecoverWithEviction() { … }
TEST_F(DiskCacheBackendTest, RecoverWithEviction) { … }
TEST_F(DiskCacheBackendTest, NewEvictionRecoverWithEviction) { … }
TEST_F(DiskCacheTest, WrongVersion) { … }
#if !BUILDFLAG(IS_ANDROID)
TEST_F(DiskCacheTest, SimpleCacheControlJoin) { … }
#endif
TEST_F(DiskCacheTest, SimpleCacheControlRestart) { … }
TEST_F(DiskCacheTest, SimpleCacheControlLeave) { … }
#if !BUILDFLAG(IS_ANDROID)
TEST_F(DiskCacheBackendTest, DeleteOld) { … }
#endif
void DiskCacheBackendTest::BackendInvalidEntry2() { … }
TEST_F(DiskCacheBackendTest, InvalidEntry2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry2) { … }
void DiskCacheBackendTest::BackendInvalidEntry3() { … }
TEST_F(DiskCacheBackendTest, InvalidEntry3) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry3) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry4) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry5) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry6) { … }
TEST_F(DiskCacheBackendTest, BadNextEntry1) { … }
TEST_F(DiskCacheBackendTest, BadNextEntry2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry6) { … }
void DiskCacheBackendTest::BackendInvalidEntry7() { … }
TEST_F(DiskCacheBackendTest, InvalidEntry7) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry7) { … }
void DiskCacheBackendTest::BackendInvalidEntry8() { … }
TEST_F(DiskCacheBackendTest, InvalidEntry8) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry8) { … }
void DiskCacheBackendTest::BackendInvalidEntry9(bool eviction) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry9) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidEntry9) { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry9) { … }
TEST_F(DiskCacheBackendTest, NewEvictionTrimInvalidEntry9) { … }
void DiskCacheBackendTest::BackendInvalidEntry10(bool eviction) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry10) { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry10) { … }
void DiskCacheBackendTest::BackendInvalidEntry11(bool eviction) { … }
TEST_F(DiskCacheBackendTest, InvalidEntry11) { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry11) { … }
void DiskCacheBackendTest::BackendTrimInvalidEntry12() { … }
TEST_F(DiskCacheBackendTest, TrimInvalidEntry12) { … }
TEST_F(DiskCacheBackendTest, NewEvictionTrimInvalidEntry12) { … }
void DiskCacheBackendTest::BackendInvalidRankings2() { … }
TEST_F(DiskCacheBackendTest, InvalidRankings2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidRankings2) { … }
void DiskCacheBackendTest::BackendInvalidRankings() { … }
TEST_F(DiskCacheBackendTest, InvalidRankingsSuccess) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidRankingsSuccess) { … }
TEST_F(DiskCacheBackendTest, InvalidRankingsFailure) { … }
TEST_F(DiskCacheBackendTest, NewEvictionInvalidRankingsFailure) { … }
void DiskCacheBackendTest::BackendDisable() { … }
TEST_F(DiskCacheBackendTest, DisableSuccess) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableSuccess) { … }
TEST_F(DiskCacheBackendTest, DisableFailure) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableFailure) { … }
void DiskCacheBackendTest::BackendDisable2() { … }
TEST_F(DiskCacheBackendTest, DisableSuccess2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableSuccess2) { … }
TEST_F(DiskCacheBackendTest, DisableFailure2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableFailure2) { … }
void DiskCacheBackendTest::BackendDisable3() { … }
TEST_F(DiskCacheBackendTest, DisableSuccess3) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableSuccess3) { … }
void DiskCacheBackendTest::BackendDisable4() { … }
TEST_F(DiskCacheBackendTest, DisableSuccess4) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisableSuccess4) { … }
void DiskCacheBackendTest::BackendDisabledAPI() { … }
TEST_F(DiskCacheBackendTest, DisabledAPI) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDisabledAPI) { … }
void DiskCacheBackendTest::BackendEviction() { … }
TEST_F(DiskCacheBackendTest, BackendEviction) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyBackendEviction) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyUseAfterFree) { … }
TEST_F(DiskCacheBackendTest, MemoryCapsWritesToMaxSize) { … }
TEST_F(DiskCacheTest, Backend_UsageStatsTimer) { … }
TEST_F(DiskCacheBackendTest, TimerNotCreated) { … }
TEST_F(DiskCacheBackendTest, Backend_UsageStats) { … }
void DiskCacheBackendTest::BackendDoomAll() { … }
TEST_F(DiskCacheBackendTest, DoomAll) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDoomAll) { … }
TEST_F(DiskCacheBackendTest, MemoryOnlyDoomAll) { … }
TEST_F(DiskCacheBackendTest, AppCacheOnlyDoomAll) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheOnlyDoomAll) { … }
void DiskCacheBackendTest::BackendDoomAll2() { … }
TEST_F(DiskCacheBackendTest, DoomAll2) { … }
TEST_F(DiskCacheBackendTest, NewEvictionDoomAll2) { … }
TEST_F(DiskCacheTest, MultipleInstances) { … }
TEST_F(DiskCacheTest, AutomaticMaxSize) { … }
TEST_F(DiskCacheBackendTest, TotalBuffersSize1) { … }
TEST_F(DiskCacheBackendTest, TotalBuffersSize2) { … }
TEST_F(DiskCacheBackendTest, FileSharing) { … }
TEST_F(DiskCacheBackendTest, UpdateRankForExternalCacheHit) { … }
TEST_F(DiskCacheBackendTest, ShaderCacheUpdateRankForExternalCacheHit) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheShutdownWithPendingCreate) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheShutdownWithPendingDoom) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheShutdownWithPendingFileIO) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheBasics) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheAppCacheBasics) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheKeying) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheAppCacheKeying) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheLoad) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheAppCacheLoad) { … }
TEST_F(DiskCacheBackendTest, SimpleDoomRecent) { … }
TEST_F(DiskCacheBackendTest, DISABLED_SimpleDoomBetween) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheDoomAll) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheAppCacheOnlyDoomAll) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheOpenMissingFile) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheOpenBadFile) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheOverBlockfileCache) { … }
TEST_F(DiskCacheBackendTest, BlockfileCacheOverSimpleCache) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheFixEnumerators) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheEnumerationBasics) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheEnumerationWhileDoomed) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheEnumerationCorruption) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheEnumerationDestruction) { … }
TEST_F(DiskCacheBackendTest, DISABLED_SimpleCachePrioritizedEntryOrder) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheEnumerationLongKeys) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheDeleteQuickly) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheLateDoom) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheNegMaxSize) { … }
TEST_F(DiskCacheBackendTest, SimpleLastModified) { … }
TEST_F(DiskCacheBackendTest, SimpleFdLimit) { … }
TEST_F(DiskCacheBackendTest, SparseEvict) { … }
TEST_F(DiskCacheBackendTest, InMemorySparseDoom) { … }
TEST_F(DiskCacheBackendTest, BlockFileMaxSizeLimit) { … }
TEST_F(DiskCacheBackendTest, InMemoryMaxSizeLimit) { … }
TEST_F(DiskCacheBackendTest, SimpleMaxSizeLimit) { … }
void DiskCacheBackendTest::BackendOpenOrCreateEntry() { … }
TEST_F(DiskCacheBackendTest, InMemoryOnlyOpenOrCreateEntry) { … }
TEST_F(DiskCacheBackendTest, MAYBE_BlockFileOpenOrCreateEntry) { … }
TEST_F(DiskCacheBackendTest, MAYBE_SimpleOpenOrCreateEntry) { … }
void DiskCacheBackendTest::BackendDeadOpenNextEntry() { … }
TEST_F(DiskCacheBackendTest, BlockFileBackendDeadOpenNextEntry) { … }
TEST_F(DiskCacheBackendTest, SimpleBackendDeadOpenNextEntry) { … }
TEST_F(DiskCacheBackendTest, InMemorySimpleBackendDeadOpenNextEntry) { … }
void DiskCacheBackendTest::BackendIteratorConcurrentDoom() { … }
TEST_F(DiskCacheBackendTest, BlockFileIteratorConcurrentDoom) { … }
TEST_F(DiskCacheBackendTest, SimpleIteratorConcurrentDoom) { … }
TEST_F(DiskCacheBackendTest, InMemoryConcurrentDoom) { … }
TEST_F(DiskCacheBackendTest, EmptyCorruptSimpleCacheRecovery) { … }
TEST_F(DiskCacheBackendTest, MAYBE_NonEmptyCorruptSimpleCacheDoesNotRecover) { … }
TEST_F(DiskCacheBackendTest, SimpleOwnershipTransferBackendDestroyRace) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheSoftResetKeepsValues) { … }
TEST_F(DiskCacheBackendTest, SimpleCacheHardResetDropsValues) { … }
TEST_F(DiskCacheBackendTest, SimpleCancelOpPendingDoom) { … }
TEST_F(DiskCacheBackendTest, SimpleDontLeakPostDoomCreate) { … }
TEST_F(DiskCacheBackendTest, BlockFileDelayedWriteFailureRecovery) { … }
TEST_F(DiskCacheBackendTest, BlockFileInsertAliasing) { … }
TEST_F(DiskCacheBackendTest, MemCacheBackwardsClock) { … }
TEST_F(DiskCacheBackendTest, SimpleOpenOrCreateIndexError) { … }
TEST_F(DiskCacheBackendTest, SimpleOpenOrCreateIndexErrorOptimistic) { … }
TEST_F(DiskCacheBackendTest, SimpleDoomAfterBackendDestruction) { … }
void DiskCacheBackendTest::BackendValidateMigrated() { … }
TEST_F(DiskCacheBackendTest, BlockfileMigrate20) { … }
TEST_F(DiskCacheBackendTest, BlockfileMigrate21) { … }
TEST_F(DiskCacheBackendTest, BlockfileMigrateNewEviction20) { … }
TEST_F(DiskCacheBackendTest, BlockfileMigrateNewEviction21) { … }
#if !BUILDFLAG(IS_ANDROID)
TEST_F(DiskCacheBackendTest, BlockfileEmptyIndex) { … }
#endif
TEST_F(DiskCacheBackendTest, SimpleDoomIter) { … }
TEST_F(DiskCacheBackendTest, SimpleOpenIter) { … }
TEST_F(DiskCacheBackendTest, BlockFileImmediateCloseNoDangle) { … }
TEST_F(DiskCacheBackendTest, SimpleWriteOrderEviction) { … }
TEST_F(DiskCacheBackendTest, SimpleWriteOrderEvictionStream0) { … }
TEST_F(DiskCacheBackendTest, SimpleNoCloseFromWithinCreate) { … }