Lines Matching refs:cache
21 explicit TestNode(const Digest& digest, BlobCache* cache) in TestNode() argument
22 : CacheNode(digest), cache_(cache), should_cache_(true), using_memory_(false) {} in TestNode()
66 bool CheckNothingOpenHelper(BlobCache* cache) { in CheckNothingOpenHelper() argument
68 ASSERT_NONNULL(cache); in CheckNothingOpenHelper()
69 cache->ForAllOpenNodes([](fbl::RefPtr<CacheNode>) { in CheckNothingOpenHelper()
78 BlobCache cache; in NullTest() local
80 ASSERT_TRUE(CheckNothingOpenHelper(&cache)); in NullTest()
81 cache.Reset(); in NullTest()
82 ASSERT_TRUE(CheckNothingOpenHelper(&cache)); in NullTest()
86 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in NullTest()
87 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, &missing_node)); in NullTest()
88 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in NullTest()
89 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Evict(node)); in NullTest()
99 BlobCache cache; in AddLookupEvictTest() local
101 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in AddLookupEvictTest()
102 ASSERT_EQ(ZX_OK, cache.Add(node)); in AddLookupEvictTest()
103 ASSERT_EQ(ZX_ERR_ALREADY_EXISTS, cache.Add(node)); in AddLookupEvictTest()
107 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in AddLookupEvictTest()
108 ASSERT_EQ(ZX_OK, cache.Lookup(digest, &found_node)); in AddLookupEvictTest()
112 ASSERT_EQ(ZX_OK, cache.Evict(node)); in AddLookupEvictTest()
113 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in AddLookupEvictTest()
124 BlobCache cache; in StopCachingTest() local
128 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in StopCachingTest()
129 ASSERT_EQ(ZX_OK, cache.Add(node)); in StopCachingTest()
130 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in StopCachingTest()
133 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in StopCachingTest()
144 BlobCache cache; in EvictNoCacheTest() local
148 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in EvictNoCacheTest()
149 ASSERT_EQ(ZX_OK, cache.Add(node)); in EvictNoCacheTest()
150 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in EvictNoCacheTest()
151 ASSERT_EQ(ZX_OK, cache.Evict(node)); in EvictNoCacheTest()
153 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in EvictNoCacheTest()
164 BlobCache cache; in EvictWhileCachingTest() local
169 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in EvictWhileCachingTest()
170 ASSERT_EQ(ZX_OK, cache.Add(node)); in EvictWhileCachingTest()
171 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in EvictWhileCachingTest()
172 ASSERT_EQ(ZX_OK, cache.Evict(node)); in EvictWhileCachingTest()
175 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in EvictWhileCachingTest()
181 bool CheckExistsAloneInOpenCache(BlobCache* cache, void* node_ptr) { in CheckExistsAloneInOpenCache() argument
183 ASSERT_NONNULL(cache); in CheckExistsAloneInOpenCache()
185 cache->ForAllOpenNodes([&node_count, &node_ptr](fbl::RefPtr<CacheNode> node) { in CheckExistsAloneInOpenCache()
196 BlobCache cache; in CacheAfterRecycleTest() local
202 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in CacheAfterRecycleTest()
204 ASSERT_EQ(ZX_OK, cache.Add(node)); in CacheAfterRecycleTest()
205 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in CacheAfterRecycleTest()
208 ASSERT_TRUE(CheckExistsAloneInOpenCache(&cache, node_ptr)); in CacheAfterRecycleTest()
213 ASSERT_TRUE(CheckNothingOpenHelper(&cache)); in CacheAfterRecycleTest()
217 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in CacheAfterRecycleTest()
222 ASSERT_EQ(ZX_OK, cache.Lookup(digest, &node)); in CacheAfterRecycleTest()
224 ASSERT_TRUE(CheckExistsAloneInOpenCache(&cache, node_ptr)); in CacheAfterRecycleTest()
226 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in CacheAfterRecycleTest()
232 ASSERT_EQ(ZX_OK, cache.Lookup(digest, &cache_node)); in CacheAfterRecycleTest()
234 ASSERT_EQ(ZX_OK, cache.Evict(vnode)); in CacheAfterRecycleTest()
236 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in CacheAfterRecycleTest()
244 BlobCache cache; in ResetClosedTest() local
248 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in ResetClosedTest()
249 ASSERT_EQ(ZX_OK, cache.Add(node)); in ResetClosedTest()
251 ASSERT_EQ(ZX_OK, cache.Lookup(digest, nullptr)); in ResetClosedTest()
254 cache.Reset(); in ResetClosedTest()
255 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in ResetClosedTest()
263 BlobCache cache; in ResetOpenTest() local
266 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in ResetOpenTest()
267 ASSERT_EQ(ZX_OK, cache.Add(node)); in ResetOpenTest()
270 cache.Reset(); in ResetOpenTest()
271 ASSERT_EQ(ZX_ERR_NOT_FOUND, cache.Lookup(digest, nullptr)); in ResetOpenTest()
282 BlobCache cache; in DestructorTest() local
284 open_node = fbl::AdoptRef(new TestNode(open_digest, &cache)); in DestructorTest()
288 auto closed_node = fbl::AdoptRef(new TestNode(closed_digest, &cache)); in DestructorTest()
289 ASSERT_EQ(ZX_OK, cache.Add(open_node)); in DestructorTest()
290 ASSERT_EQ(ZX_OK, cache.Add(closed_node)); in DestructorTest()
300 BlobCache cache; in ForAllOpenNodesTest() local
305 open_nodes[i] = fbl::AdoptRef(new TestNode(GenerateDigest(i), &cache)); in ForAllOpenNodesTest()
306 ASSERT_EQ(ZX_OK, cache.Add(open_nodes[i])); in ForAllOpenNodesTest()
312 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(GenerateDigest(0xDEAD), &cache)); in ForAllOpenNodesTest()
313 ASSERT_EQ(ZX_OK, cache.Add(node)); in ForAllOpenNodesTest()
315 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(GenerateDigest(0xBEEF), &cache)); in ForAllOpenNodesTest()
316 ASSERT_EQ(ZX_OK, cache.Add(node)); in ForAllOpenNodesTest()
317 ASSERT_EQ(ZX_OK, cache.Evict(node)); in ForAllOpenNodesTest()
322 cache.ForAllOpenNodes([&open_nodes, &node_index](fbl::RefPtr<CacheNode> node) { in ForAllOpenNodesTest()
342 BlobCache cache; in CachePolicyEvictImmediatelyTest() local
345 cache.SetCachePolicy(CachePolicy::EvictImmediately); in CachePolicyEvictImmediatelyTest()
347 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in CachePolicyEvictImmediatelyTest()
349 ASSERT_EQ(ZX_OK, cache.Add(node)); in CachePolicyEvictImmediatelyTest()
354 ASSERT_EQ(ZX_OK, cache.Lookup(digest, &cache_node)); in CachePolicyEvictImmediatelyTest()
364 BlobCache cache; in CachePolicyNeverEvictTest() local
367 cache.SetCachePolicy(CachePolicy::NeverEvict); in CachePolicyNeverEvictTest()
369 fbl::RefPtr<TestNode> node = fbl::AdoptRef(new TestNode(digest, &cache)); in CachePolicyNeverEvictTest()
371 ASSERT_EQ(ZX_OK, cache.Add(node)); in CachePolicyNeverEvictTest()
376 ASSERT_EQ(ZX_OK, cache.Lookup(digest, &cache_node)); in CachePolicyNeverEvictTest()