Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1262)

Side by Side Diff: webkit/appcache/appcache_update_job_unittest.cc

Issue 326002: Add storage code to appcache update process. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2009 The Chromium Authos. All rights reserved. 1 // Copyright (c) 2009 The Chromium Authos. 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 "testing/gtest/include/gtest/gtest.h" 5 #include "testing/gtest/include/gtest/gtest.h"
6 6
7 #include "base/stl_util-inl.h" 7 #include "base/stl_util-inl.h"
8 #include "base/thread.h" 8 #include "base/thread.h"
9 #include "base/waitable_event.h" 9 #include "base/waitable_event.h"
10 #include "net/url_request/url_request_test_job.h" 10 #include "net/url_request/url_request_test_job.h"
(...skipping 655 matching lines...) Expand 10 before | Expand all | Expand 10 after
666 MockFrontend* frontend1 = MakeMockFrontend(); 666 MockFrontend* frontend1 = MakeMockFrontend();
667 MockFrontend* frontend2 = MakeMockFrontend(); 667 MockFrontend* frontend2 = MakeMockFrontend();
668 AppCacheHost* host1 = MakeHost(1, frontend1); 668 AppCacheHost* host1 = MakeHost(1, frontend1);
669 AppCacheHost* host2 = MakeHost(2, frontend2); 669 AppCacheHost* host2 = MakeHost(2, frontend2);
670 host1->AssociateCache(cache); 670 host1->AssociateCache(cache);
671 host2->AssociateCache(cache); 671 host2->AssociateCache(cache);
672 672
673 // Give the newest cache a master entry that is also one of the explicit 673 // Give the newest cache a master entry that is also one of the explicit
674 // entries in the manifest. 674 // entries in the manifest.
675 cache->AddEntry(http_server_->TestServerPage("files/explicit1"), 675 cache->AddEntry(http_server_->TestServerPage("files/explicit1"),
676 AppCacheEntry(AppCacheEntry::MASTER)); 676 AppCacheEntry(AppCacheEntry::MASTER, 111));
677 677
678 // TODO(jennb): simulate this by mocking storage behavior instead 678 // TODO(jennb): simulate this by mocking storage behavior instead
679 update->SimulateManifestChanged(true); // changed 679 update->SimulateManifestChanged(true); // changed
680 680
681 update->StartUpdate(NULL, GURL::EmptyGURL()); 681 update->StartUpdate(NULL, GURL::EmptyGURL());
682 EXPECT_TRUE(update->manifest_url_request_ != NULL); 682 EXPECT_TRUE(update->manifest_url_request_ != NULL);
683 683
684 // Set up checks for when update job finishes. 684 // Set up checks for when update job finishes.
685 do_checks_after_update_finished_ = true; 685 do_checks_after_update_finished_ = true;
686 expect_group_obsolete_ = false; 686 expect_group_obsolete_ = false;
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
788 MockFrontend* frontend1 = MakeMockFrontend(); 788 MockFrontend* frontend1 = MakeMockFrontend();
789 MockFrontend* frontend2 = MakeMockFrontend(); 789 MockFrontend* frontend2 = MakeMockFrontend();
790 AppCacheHost* host1 = MakeHost(1, frontend1); 790 AppCacheHost* host1 = MakeHost(1, frontend1);
791 AppCacheHost* host2 = MakeHost(2, frontend2); 791 AppCacheHost* host2 = MakeHost(2, frontend2);
792 host1->AssociateCache(cache); 792 host1->AssociateCache(cache);
793 host2->AssociateCache(cache); 793 host2->AssociateCache(cache);
794 794
795 // Give the newest cache some master entries; one will fail with a 404. 795 // Give the newest cache some master entries; one will fail with a 404.
796 cache->AddEntry( 796 cache->AddEntry(
797 http_server_->TestServerPage("files/notfound"), 797 http_server_->TestServerPage("files/notfound"),
798 AppCacheEntry(AppCacheEntry::MASTER)); 798 AppCacheEntry(AppCacheEntry::MASTER, 222));
799 cache->AddEntry( 799 cache->AddEntry(
800 http_server_->TestServerPage("files/explicit2"), 800 http_server_->TestServerPage("files/explicit2"),
801 AppCacheEntry(AppCacheEntry::MASTER | AppCacheEntry::FOREIGN)); 801 AppCacheEntry(AppCacheEntry::MASTER | AppCacheEntry::FOREIGN, 333));
802 cache->AddEntry( 802 cache->AddEntry(
803 http_server_->TestServerPage("files/servererror"), 803 http_server_->TestServerPage("files/servererror"),
804 AppCacheEntry(AppCacheEntry::MASTER)); 804 AppCacheEntry(AppCacheEntry::MASTER, 444));
805 805
806 // TODO(jennb): simulate this by mocking storage behavior instead 806 // TODO(jennb): simulate this by mocking storage behavior instead
807 update->SimulateManifestChanged(true); // changed 807 update->SimulateManifestChanged(true); // changed
808 808
809 update->StartUpdate(NULL, GURL::EmptyGURL()); 809 update->StartUpdate(NULL, GURL::EmptyGURL());
810 EXPECT_TRUE(update->manifest_url_request_ != NULL); 810 EXPECT_TRUE(update->manifest_url_request_ != NULL);
811 811
812 // Set up checks for when update job finishes. 812 // Set up checks for when update job finishes.
813 do_checks_after_update_finished_ = true; 813 do_checks_after_update_finished_ = true;
814 expect_group_obsolete_ = false; 814 expect_group_obsolete_ = false;
815 expect_group_has_cache_ = true; 815 expect_group_has_cache_ = true;
816 expect_old_cache_ = cache; 816 expect_old_cache_ = cache;
817 tested_manifest_ = MANIFEST1; 817 tested_manifest_ = MANIFEST1;
818 expect_extra_entries_.insert(AppCache::EntryMap::value_type( 818 expect_extra_entries_.insert(AppCache::EntryMap::value_type(
819 http_server_->TestServerPage("files/explicit2"), 819 http_server_->TestServerPage("files/explicit2"),
820 AppCacheEntry(AppCacheEntry::MASTER))); // foreign flag is dropped 820 AppCacheEntry(AppCacheEntry::MASTER))); // foreign flag is dropped
821 expect_extra_entries_.insert(AppCache::EntryMap::value_type( 821 expect_extra_entries_.insert(AppCache::EntryMap::value_type(
822 http_server_->TestServerPage("files/servererror"), 822 http_server_->TestServerPage("files/servererror"),
823 AppCacheEntry(AppCacheEntry::MASTER))); // foreign flag is dropped 823 AppCacheEntry(AppCacheEntry::MASTER)));
824 MockFrontend::HostIds ids1(1, host1->host_id()); 824 MockFrontend::HostIds ids1(1, host1->host_id());
825 frontend1->AddExpectedEvent(ids1, CHECKING_EVENT); 825 frontend1->AddExpectedEvent(ids1, CHECKING_EVENT);
826 frontend1->AddExpectedEvent(ids1, DOWNLOADING_EVENT); 826 frontend1->AddExpectedEvent(ids1, DOWNLOADING_EVENT);
827 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit1 827 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit1
828 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // fallback1a 828 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // fallback1a
829 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // notfound (load) 829 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // notfound (load)
830 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // notfound (fetch) 830 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // notfound (fetch)
831 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit2 (load) 831 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit2 (load)
832 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit2 (fetch) 832 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // explicit2 (fetch)
833 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // servererror (load) 833 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT); // servererror (load)
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
1005 do_checks_after_update_finished_ = true; 1005 do_checks_after_update_finished_ = true;
1006 expect_group_obsolete_ = false; 1006 expect_group_obsolete_ = false;
1007 expect_group_has_cache_ = true; 1007 expect_group_has_cache_ = true;
1008 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()), 1008 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()),
1009 CHECKING_EVENT); 1009 CHECKING_EVENT);
1010 1010
1011 WaitForUpdateToFinish(); 1011 WaitForUpdateToFinish();
1012 } 1012 }
1013 1013
1014 void RetryUrlTest() { 1014 void RetryUrlTest() {
1015 ASSERT_EQ(MessageLoop::TYPE_IO, MessageLoop::current()->type());
1016
1015 // Set 1 as the retry limit (does not exceed the max). 1017 // Set 1 as the retry limit (does not exceed the max).
1016 // Expect 1 manifest fetch, 1 url fetch, 1 url retry, 1 manifest refetch. 1018 // Expect 1 manifest fetch, 1 url fetch, 1 url retry, 1 manifest refetch.
1017 RetryRequestTestJob::Initialize(1, RetryRequestTestJob::RETRY_AFTER_0, 4); 1019 RetryRequestTestJob::Initialize(1, RetryRequestTestJob::RETRY_AFTER_0, 4);
1018 old_factory_ = URLRequest::RegisterProtocolFactory( 1020 old_factory_ = URLRequest::RegisterProtocolFactory(
1019 "http", RetryRequestTestJob::RetryFactory); 1021 "http", RetryRequestTestJob::RetryFactory);
1020 registered_factory_ = true; 1022 registered_factory_ = true;
1021 1023
1022 MakeService(); 1024 MakeService();
1023 group_ = new AppCacheGroup(service_.get(), GURL("http://retryurl")); 1025 group_ = new AppCacheGroup(service_.get(), GURL("http://retryurl"));
1024 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_); 1026 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_);
1025 group_->update_job_ = update; 1027 group_->update_job_ = update;
1026 1028
1027 MockFrontend* frontend = MakeMockFrontend(); 1029 MockFrontend* frontend = MakeMockFrontend();
1028 AppCacheHost* host = MakeHost(1, frontend); 1030 AppCacheHost* host = MakeHost(1, frontend);
1029 update->StartUpdate(host, GURL::EmptyGURL()); 1031 update->StartUpdate(host, GURL::EmptyGURL());
1030 EXPECT_TRUE(update->manifest_url_request_ != NULL); 1032 EXPECT_TRUE(update->manifest_url_request_ != NULL);
1031 1033
1032 // Set up checks for when update job finishes. 1034 // Set up checks for when update job finishes.
1033 do_checks_after_update_finished_ = true; 1035 do_checks_after_update_finished_ = true;
1034 expect_group_obsolete_ = false; 1036 expect_group_obsolete_ = false;
1035 expect_group_has_cache_ = true; 1037 expect_group_has_cache_ = true;
1036 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()), 1038 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()),
1037 CHECKING_EVENT); 1039 CHECKING_EVENT);
1038 1040
1039 WaitForUpdateToFinish(); 1041 WaitForUpdateToFinish();
1040 } 1042 }
1041 1043
1044 void FailStoreNewestCacheTest() {
1045 ASSERT_EQ(MessageLoop::TYPE_IO, MessageLoop::current()->type());
1046
1047 MakeService();
1048 MockAppCacheStorage* storage =
1049 reinterpret_cast<MockAppCacheStorage*>(service_->storage());
1050 storage->SimulateStoreGroupAndNewestCacheFailure();
1051
1052 group_ = new AppCacheGroup(
1053 service_.get(), http_server_->TestServerPage("files/manifest1"));
1054 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_);
1055 group_->update_job_ = update;
1056
1057 MockFrontend* frontend = MakeMockFrontend();
1058 AppCacheHost* host = MakeHost(1, frontend);
1059 update->StartUpdate(host, GURL::EmptyGURL());
1060
1061 // Set up checks for when update job finishes.
1062 do_checks_after_update_finished_ = true;
1063 expect_group_obsolete_ = false;
1064 expect_group_has_cache_ = false; // storage failed
1065 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()),
1066 CHECKING_EVENT);
1067
1068 WaitForUpdateToFinish();
1069 }
1070
1071 void UpgradeFailStoreNewestCacheTest() {
1072 ASSERT_EQ(MessageLoop::TYPE_IO, MessageLoop::current()->type());
1073
1074 MakeService();
1075 MockAppCacheStorage* storage =
1076 reinterpret_cast<MockAppCacheStorage*>(service_->storage());
1077 storage->SimulateStoreGroupAndNewestCacheFailure();
1078
1079 group_ = new AppCacheGroup(
1080 service_.get(), http_server_->TestServerPage("files/manifest1"));
1081 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_);
1082 group_->update_job_ = update;
1083
1084 AppCache* cache = MakeCacheForGroup(service_->storage()->NewCacheId());
1085 MockFrontend* frontend1 = MakeMockFrontend();
1086 MockFrontend* frontend2 = MakeMockFrontend();
1087 AppCacheHost* host1 = MakeHost(1, frontend1);
1088 AppCacheHost* host2 = MakeHost(2, frontend2);
1089 host1->AssociateCache(cache);
1090 host2->AssociateCache(cache);
1091
1092 // TODO(jennb): simulate this by mocking storage behavior instead
1093 update->SimulateManifestChanged(true); // changed
1094
1095 update->StartUpdate(NULL, GURL::EmptyGURL());
1096
1097 // Set up checks for when update job finishes.
1098 do_checks_after_update_finished_ = true;
1099 expect_group_obsolete_ = false;
1100 expect_group_has_cache_ = true;
1101 expect_newest_cache_ = cache; // unchanged
1102 MockFrontend::HostIds ids1(1, host1->host_id());
1103 frontend1->AddExpectedEvent(ids1, CHECKING_EVENT);
1104 frontend1->AddExpectedEvent(ids1, DOWNLOADING_EVENT);
1105 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT);
1106 frontend1->AddExpectedEvent(ids1, PROGRESS_EVENT);
1107 frontend1->AddExpectedEvent(ids1, ERROR_EVENT);
1108 MockFrontend::HostIds ids2(1, host2->host_id());
1109 frontend2->AddExpectedEvent(ids2, CHECKING_EVENT);
1110 frontend2->AddExpectedEvent(ids2, DOWNLOADING_EVENT);
1111 frontend2->AddExpectedEvent(ids2, PROGRESS_EVENT);
1112 frontend2->AddExpectedEvent(ids2, PROGRESS_EVENT);
1113 frontend2->AddExpectedEvent(ids2, ERROR_EVENT);
1114
1115 WaitForUpdateToFinish();
1116 }
1117
1118 void FailMakeGroupObsoleteTest() {
1119 ASSERT_EQ(MessageLoop::TYPE_IO, MessageLoop::current()->type());
1120
1121 MakeService();
1122 MockAppCacheStorage* storage =
1123 reinterpret_cast<MockAppCacheStorage*>(service_->storage());
1124 storage->SimulateMakeGroupObsoleteFailure();
1125
1126 group_ = new AppCacheGroup(
1127 service_.get(), http_server_->TestServerPage("files/gone"));
1128 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_);
1129 group_->update_job_ = update;
1130
1131 MockFrontend* frontend = MakeMockFrontend();
1132 AppCacheHost* host = MakeHost(1, frontend);
1133 update->StartUpdate(host, GURL::EmptyGURL());
1134 EXPECT_TRUE(update->manifest_url_request_ != NULL);
1135
1136 // Set up checks for when update job finishes.
1137 do_checks_after_update_finished_ = true;
1138 expect_group_obsolete_ = false;
1139 expect_group_has_cache_ = false;
1140 frontend->AddExpectedEvent(MockFrontend::HostIds(1, host->host_id()),
1141 CHECKING_EVENT);
1142
1143 WaitForUpdateToFinish();
1144 }
1145
1146 void UpgradeFailMakeGroupObsoleteTest() {
1147 ASSERT_EQ(MessageLoop::TYPE_IO, MessageLoop::current()->type());
1148
1149 MakeService();
1150 MockAppCacheStorage* storage =
1151 reinterpret_cast<MockAppCacheStorage*>(service_->storage());
1152 storage->SimulateMakeGroupObsoleteFailure();
1153
1154 group_ = new AppCacheGroup(
1155 service_.get(), http_server_->TestServerPage("files/nosuchfile"));
1156 AppCacheUpdateJob* update = new AppCacheUpdateJob(service_.get(), group_);
1157 group_->update_job_ = update;
1158
1159 AppCache* cache = MakeCacheForGroup(1);
1160 MockFrontend* frontend1 = MakeMockFrontend();
1161 MockFrontend* frontend2 = MakeMockFrontend();
1162 AppCacheHost* host1 = MakeHost(1, frontend1);
1163 AppCacheHost* host2 = MakeHost(2, frontend2);
1164 host1->AssociateCache(cache);
1165 host2->AssociateCache(cache);
1166
1167 update->StartUpdate(NULL, GURL::EmptyGURL());
1168 EXPECT_TRUE(update->manifest_url_request_ != NULL);
1169
1170 // Set up checks for when update job finishes.
1171 do_checks_after_update_finished_ = true;
1172 expect_group_obsolete_ = false;
1173 expect_group_has_cache_ = true;
1174 expect_newest_cache_ = cache; // newest cache unaffected by update
1175 MockFrontend::HostIds ids1(1, host1->host_id());
1176 frontend1->AddExpectedEvent(ids1, CHECKING_EVENT);
1177 frontend1->AddExpectedEvent(ids1, ERROR_EVENT);
1178 MockFrontend::HostIds ids2(1, host2->host_id());
1179 frontend2->AddExpectedEvent(ids2, CHECKING_EVENT);
1180 frontend2->AddExpectedEvent(ids2, ERROR_EVENT);
1181
1182 WaitForUpdateToFinish();
1183 }
1184
1042 void WaitForUpdateToFinish() { 1185 void WaitForUpdateToFinish() {
1043 if (group_->update_status() == AppCacheGroup::IDLE) 1186 if (group_->update_status() == AppCacheGroup::IDLE)
1044 UpdateFinished(); 1187 UpdateFinished();
1045 else 1188 else
1046 group_->AddUpdateObserver(this); 1189 group_->AddUpdateObserver(this);
1047 } 1190 }
1048 1191
1049 void OnUpdateComplete(AppCacheGroup* group) { 1192 void OnUpdateComplete(AppCacheGroup* group) {
1050 ASSERT_EQ(group_, group); 1193 ASSERT_EQ(group_, group);
1051 protect_newest_cache_ = group->newest_complete_cache(); 1194 protect_newest_cache_ = group->newest_complete_cache();
1052 UpdateFinished(); 1195 UpdateFinished();
1053 } 1196 }
1054 1197
1055 void UpdateFinished() { 1198 void UpdateFinished() {
1056 // We unwind the stack prior to finishing up to let stack 1199 // We unwind the stack prior to finishing up to let stack-based objects
1057 // based objects get deleted. 1200 // get deleted.
1058 MessageLoop::current()->PostTask(FROM_HERE, 1201 MessageLoop::current()->PostTask(FROM_HERE,
1059 method_factory_.NewRunnableMethod( 1202 method_factory_.NewRunnableMethod(
1060 &AppCacheUpdateJobTest::UpdateFinishedUnwound)); 1203 &AppCacheUpdateJobTest::UpdateFinishedUnwound));
1061 } 1204 }
1062 1205
1063 void UpdateFinishedUnwound() { 1206 void UpdateFinishedUnwound() {
1064 EXPECT_EQ(AppCacheGroup::IDLE, group_->update_status()); 1207 EXPECT_EQ(AppCacheGroup::IDLE, group_->update_status());
1065 EXPECT_TRUE(group_->update_job() == NULL); 1208 EXPECT_TRUE(group_->update_job() == NULL);
1066 if (do_checks_after_update_finished_) 1209 if (do_checks_after_update_finished_)
1067 VerifyExpectations(); 1210 VerifyExpectations();
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
1112 EXPECT_EQ(expect_group_obsolete_, group_->is_obsolete()); 1255 EXPECT_EQ(expect_group_obsolete_, group_->is_obsolete());
1113 1256
1114 if (expect_group_has_cache_) { 1257 if (expect_group_has_cache_) {
1115 EXPECT_TRUE(group_->newest_complete_cache() != NULL); 1258 EXPECT_TRUE(group_->newest_complete_cache() != NULL);
1116 if (expect_old_cache_) { 1259 if (expect_old_cache_) {
1117 EXPECT_NE(expect_old_cache_, group_->newest_complete_cache()); 1260 EXPECT_NE(expect_old_cache_, group_->newest_complete_cache());
1118 EXPECT_TRUE(group_->old_caches().end() != 1261 EXPECT_TRUE(group_->old_caches().end() !=
1119 std::find(group_->old_caches().begin(), 1262 std::find(group_->old_caches().begin(),
1120 group_->old_caches().end(), expect_old_cache_)); 1263 group_->old_caches().end(), expect_old_cache_));
1121 } 1264 }
1122 if (expect_newest_cache_) 1265 if (expect_newest_cache_) {
1123 EXPECT_EQ(expect_newest_cache_, group_->newest_complete_cache()); 1266 EXPECT_EQ(expect_newest_cache_, group_->newest_complete_cache());
1267 EXPECT_TRUE(group_->old_caches().end() ==
1268 std::find(group_->old_caches().begin(),
1269 group_->old_caches().end(), expect_newest_cache_));
1270 } else {
1271 // Tests that don't know which newest cache to expect contain updates
1272 // that succeed (because the update creates a new cache whose pointer
1273 // is unknown to the test). Check group and newest cache were stored
1274 // when update succeeds.
1275 MockAppCacheStorage* storage =
1276 reinterpret_cast<MockAppCacheStorage*>(service_->storage());
1277 EXPECT_TRUE(storage->IsGroupStored(group_));
1278 EXPECT_TRUE(storage->IsCacheStored(group_->newest_complete_cache()));
1279
1280 // Check that all entries in the newest cache were stored.
1281 const AppCache::EntryMap& entries =
1282 group_->newest_complete_cache()->entries();
1283 for (AppCache::EntryMap::const_iterator it = entries.begin();
1284 it != entries.end(); ++it) {
1285 EXPECT_NE(kNoResponseId, it->second.response_id());
1286 }
1287 }
1124 } else { 1288 } else {
1125 EXPECT_TRUE(group_->newest_complete_cache() == NULL); 1289 EXPECT_TRUE(group_->newest_complete_cache() == NULL);
1126 } 1290 }
1127 1291
1128 // Check expected events. 1292 // Check expected events.
1129 for (size_t i = 0; i < frontends_.size(); ++i) { 1293 for (size_t i = 0; i < frontends_.size(); ++i) {
1130 MockFrontend* frontend = frontends_[i]; 1294 MockFrontend* frontend = frontends_[i];
1131 1295
1132 MockFrontend::RaisedEvents& expected_events = frontend->expected_events_; 1296 MockFrontend::RaisedEvents& expected_events = frontend->expected_events_;
1133 MockFrontend::RaisedEvents& actual_events = frontend->raised_events_; 1297 MockFrontend::RaisedEvents& actual_events = frontend->raised_events_;
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after
1451 } 1615 }
1452 1616
1453 TEST_F(AppCacheUpdateJobTest, RetrySuccess) { 1617 TEST_F(AppCacheUpdateJobTest, RetrySuccess) {
1454 RunTestOnIOThread(&AppCacheUpdateJobTest::RetrySuccessTest); 1618 RunTestOnIOThread(&AppCacheUpdateJobTest::RetrySuccessTest);
1455 } 1619 }
1456 1620
1457 TEST_F(AppCacheUpdateJobTest, RetryUrl) { 1621 TEST_F(AppCacheUpdateJobTest, RetryUrl) {
1458 RunTestOnIOThread(&AppCacheUpdateJobTest::RetryUrlTest); 1622 RunTestOnIOThread(&AppCacheUpdateJobTest::RetryUrlTest);
1459 } 1623 }
1460 1624
1625 TEST_F(AppCacheUpdateJobTest, FailStoreNewestCache) {
1626 RunTestOnIOThread(&AppCacheUpdateJobTest::FailStoreNewestCacheTest);
1627 }
1628
1629 TEST_F(AppCacheUpdateJobTest, UpgradeFailStoreNewestCache) {
1630 RunTestOnIOThread(&AppCacheUpdateJobTest::UpgradeFailStoreNewestCacheTest);
1631 }
1632
1633 TEST_F(AppCacheUpdateJobTest, FailMakeGroupObsolete) {
1634 RunTestOnIOThread(&AppCacheUpdateJobTest::FailMakeGroupObsoleteTest);
1635 }
1636
1637 TEST_F(AppCacheUpdateJobTest, UpgradeFailMakeGroupObsolete) {
1638 RunTestOnIOThread(&AppCacheUpdateJobTest::UpgradeFailMakeGroupObsoleteTest);
1639 }
1640
1461 } // namespace appcache 1641 } // namespace appcache
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698