OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/run_loop.h" | 5 #include "base/run_loop.h" |
6 #include "content/browser/appcache/appcache.h" | 6 #include "content/browser/appcache/appcache.h" |
7 #include "content/browser/appcache/appcache_group.h" | 7 #include "content/browser/appcache/appcache_group.h" |
8 #include "content/browser/appcache/appcache_response.h" | 8 #include "content/browser/appcache/appcache_response.h" |
9 #include "content/browser/appcache/appcache_storage.h" | 9 #include "content/browser/appcache/appcache_storage.h" |
10 #include "content/browser/appcache/mock_appcache_service.h" | 10 #include "content/browser/appcache/mock_appcache_service.h" |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 EXPECT_TRUE(storage->stored_caches_.empty()); | 230 EXPECT_TRUE(storage->stored_caches_.empty()); |
231 EXPECT_TRUE(storage->stored_groups_.empty()); | 231 EXPECT_TRUE(storage->stored_groups_.empty()); |
232 storage->StoreGroupAndNewestCache(group.get(), cache.get(), &delegate); | 232 storage->StoreGroupAndNewestCache(group.get(), cache.get(), &delegate); |
233 EXPECT_FALSE(delegate.stored_group_success_); | 233 EXPECT_FALSE(delegate.stored_group_success_); |
234 EXPECT_TRUE(storage->stored_caches_.empty()); | 234 EXPECT_TRUE(storage->stored_caches_.empty()); |
235 EXPECT_TRUE(storage->stored_groups_.empty()); | 235 EXPECT_TRUE(storage->stored_groups_.empty()); |
236 base::RunLoop().RunUntilIdle(); // Do async task execution. | 236 base::RunLoop().RunUntilIdle(); // Do async task execution. |
237 EXPECT_TRUE(delegate.stored_group_success_); | 237 EXPECT_TRUE(delegate.stored_group_success_); |
238 EXPECT_FALSE(storage->stored_caches_.empty()); | 238 EXPECT_FALSE(storage->stored_caches_.empty()); |
239 EXPECT_FALSE(storage->stored_groups_.empty()); | 239 EXPECT_FALSE(storage->stored_groups_.empty()); |
240 EXPECT_EQ(cache, group->newest_complete_cache()); | 240 EXPECT_EQ(cache.get(), group->newest_complete_cache()); |
241 EXPECT_TRUE(cache->is_complete()); | 241 EXPECT_TRUE(cache->is_complete()); |
242 } | 242 } |
243 | 243 |
244 TEST_F(MockAppCacheStorageTest, StoreExistingGroup) { | 244 TEST_F(MockAppCacheStorageTest, StoreExistingGroup) { |
245 // Store a group and its newest cache. Should complete asyncly. | 245 // Store a group and its newest cache. Should complete asyncly. |
246 MockAppCacheService service; | 246 MockAppCacheService service; |
247 MockAppCacheStorage* storage = | 247 MockAppCacheStorage* storage = |
248 reinterpret_cast<MockAppCacheStorage*>(service.storage()); | 248 reinterpret_cast<MockAppCacheStorage*>(service.storage()); |
249 | 249 |
250 // Setup some preconditions. Create a group and old complete cache | 250 // Setup some preconditions. Create a group and old complete cache |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
299 new AppCacheGroup(service.storage(), manifest_url, 111)); | 299 new AppCacheGroup(service.storage(), manifest_url, 111)); |
300 int64 cache_id = storage->NewCacheId(); | 300 int64 cache_id = storage->NewCacheId(); |
301 scoped_refptr<AppCache> cache(new AppCache(service.storage(), cache_id)); | 301 scoped_refptr<AppCache> cache(new AppCache(service.storage(), cache_id)); |
302 cache->set_complete(true); | 302 cache->set_complete(true); |
303 group->AddCache(cache.get()); | 303 group->AddCache(cache.get()); |
304 storage->AddStoredGroup(group.get()); | 304 storage->AddStoredGroup(group.get()); |
305 storage->AddStoredCache(cache.get()); | 305 storage->AddStoredCache(cache.get()); |
306 // Hold our refs to simulate the UpdateJob holding these refs. | 306 // Hold our refs to simulate the UpdateJob holding these refs. |
307 | 307 |
308 // Change the group's newest cache. | 308 // Change the group's newest cache. |
309 EXPECT_EQ(cache, group->newest_complete_cache()); | 309 EXPECT_EQ(cache.get(), group->newest_complete_cache()); |
310 GURL entry_url("http://blah/blah"); | 310 GURL entry_url("http://blah/blah"); |
311 cache->AddEntry(entry_url, AppCacheEntry(AppCacheEntry::MASTER)); | 311 cache->AddEntry(entry_url, AppCacheEntry(AppCacheEntry::MASTER)); |
312 | 312 |
313 // Conduct the test. | 313 // Conduct the test. |
314 MockStorageDelegate delegate; | 314 MockStorageDelegate delegate; |
315 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); | 315 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); |
316 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); | 316 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); |
317 EXPECT_TRUE(storage->IsCacheStored(cache.get())); | 317 EXPECT_TRUE(storage->IsCacheStored(cache.get())); |
318 storage->StoreGroupAndNewestCache(group.get(), cache.get(), &delegate); | 318 storage->StoreGroupAndNewestCache(group.get(), cache.get(), &delegate); |
319 EXPECT_FALSE(delegate.stored_group_success_); | 319 EXPECT_FALSE(delegate.stored_group_success_); |
320 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); | 320 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); |
321 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); | 321 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); |
322 base::RunLoop().RunUntilIdle(); // Do async task execution. | 322 base::RunLoop().RunUntilIdle(); // Do async task execution. |
323 EXPECT_TRUE(delegate.stored_group_success_); | 323 EXPECT_TRUE(delegate.stored_group_success_); |
324 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); | 324 EXPECT_EQ(size_t(1), storage->stored_caches_.size()); |
325 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); | 325 EXPECT_EQ(size_t(1), storage->stored_groups_.size()); |
326 EXPECT_TRUE(storage->IsCacheStored(cache.get())); | 326 EXPECT_TRUE(storage->IsCacheStored(cache.get())); |
327 EXPECT_EQ(cache, group->newest_complete_cache()); | 327 EXPECT_EQ(cache.get(), group->newest_complete_cache()); |
328 EXPECT_TRUE(cache->GetEntry(entry_url)); | 328 EXPECT_TRUE(cache->GetEntry(entry_url)); |
329 } | 329 } |
330 | 330 |
331 TEST_F(MockAppCacheStorageTest, MakeGroupObsolete) { | 331 TEST_F(MockAppCacheStorageTest, MakeGroupObsolete) { |
332 // Make a group obsolete, should complete asyncly. | 332 // Make a group obsolete, should complete asyncly. |
333 MockAppCacheService service; | 333 MockAppCacheService service; |
334 MockAppCacheStorage* storage = | 334 MockAppCacheStorage* storage = |
335 reinterpret_cast<MockAppCacheStorage*>(service.storage()); | 335 reinterpret_cast<MockAppCacheStorage*>(service.storage()); |
336 | 336 |
337 // Setup some preconditions. Create a group and newest cache that | 337 // Setup some preconditions. Create a group and newest cache that |
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
625 EXPECT_EQ(kAppCacheNoCacheId, delegate.found_cache_id_); | 625 EXPECT_EQ(kAppCacheNoCacheId, delegate.found_cache_id_); |
626 EXPECT_EQ(kAppCacheNoResponseId, delegate.found_entry_.response_id()); | 626 EXPECT_EQ(kAppCacheNoResponseId, delegate.found_entry_.response_id()); |
627 EXPECT_EQ(kAppCacheNoResponseId, | 627 EXPECT_EQ(kAppCacheNoResponseId, |
628 delegate.found_fallback_entry_.response_id()); | 628 delegate.found_fallback_entry_.response_id()); |
629 EXPECT_TRUE(delegate.found_fallback_url_.is_empty()); | 629 EXPECT_TRUE(delegate.found_fallback_url_.is_empty()); |
630 EXPECT_EQ(0, delegate.found_entry_.types()); | 630 EXPECT_EQ(0, delegate.found_entry_.types()); |
631 EXPECT_EQ(0, delegate.found_fallback_entry_.types()); | 631 EXPECT_EQ(0, delegate.found_fallback_entry_.types()); |
632 } | 632 } |
633 | 633 |
634 } // namespace content | 634 } // namespace content |
OLD | NEW |